google-cloud-policy_troubleshooter-iam-v3 0.a → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.yardopts +12 -0
- data/AUTHENTICATION.md +149 -0
- data/README.md +144 -8
- data/lib/google/cloud/policy_troubleshooter/iam/v3/policy_troubleshooter/client.rb +400 -0
- data/lib/google/cloud/policy_troubleshooter/iam/v3/policy_troubleshooter/credentials.rb +49 -0
- data/lib/google/cloud/policy_troubleshooter/iam/v3/policy_troubleshooter/rest/client.rb +372 -0
- data/lib/google/cloud/policy_troubleshooter/iam/v3/policy_troubleshooter/rest/service_stub.rb +108 -0
- data/lib/google/cloud/policy_troubleshooter/iam/v3/policy_troubleshooter/rest.rb +55 -0
- data/lib/google/cloud/policy_troubleshooter/iam/v3/policy_troubleshooter.rb +58 -0
- data/lib/google/cloud/policy_troubleshooter/iam/v3/rest.rb +39 -0
- data/lib/google/cloud/policy_troubleshooter/iam/v3/version.rb +7 -2
- data/lib/google/cloud/policy_troubleshooter/iam/v3.rb +47 -0
- data/lib/google/cloud/policytroubleshooter/iam/v3/troubleshooter_pb.rb +86 -0
- data/lib/google/cloud/policytroubleshooter/iam/v3/troubleshooter_services_pb.rb +51 -0
- data/lib/google-cloud-policy_troubleshooter-iam-v3.rb +21 -0
- data/proto_docs/README.md +4 -0
- data/proto_docs/google/api/client.rb +381 -0
- data/proto_docs/google/api/field_behavior.rb +85 -0
- data/proto_docs/google/api/launch_stage.rb +71 -0
- data/proto_docs/google/api/resource.rb +222 -0
- data/proto_docs/google/cloud/policytroubleshooter/iam/v3/troubleshooter.rb +826 -0
- data/proto_docs/google/iam/v1/policy.rb +426 -0
- data/proto_docs/google/iam/v2/deny.rb +110 -0
- data/proto_docs/google/iam/v2/policy.rb +241 -0
- data/proto_docs/google/longrunning/operations.rb +164 -0
- data/proto_docs/google/protobuf/any.rb +144 -0
- data/proto_docs/google/protobuf/duration.rb +98 -0
- data/proto_docs/google/protobuf/empty.rb +34 -0
- data/proto_docs/google/protobuf/struct.rb +96 -0
- data/proto_docs/google/protobuf/timestamp.rb +127 -0
- data/proto_docs/google/rpc/status.rb +48 -0
- data/proto_docs/google/type/expr.rb +75 -0
- metadata +229 -13
@@ -0,0 +1,47 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2023 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
require "google/cloud/policy_troubleshooter/iam/v3/policy_troubleshooter"
|
20
|
+
require "google/cloud/policy_troubleshooter/iam/v3/version"
|
21
|
+
|
22
|
+
module Google
|
23
|
+
module Cloud
|
24
|
+
module PolicyTroubleshooter
|
25
|
+
module Iam
|
26
|
+
##
|
27
|
+
# API client module.
|
28
|
+
#
|
29
|
+
# @example Load this package, including all its services, and instantiate a gRPC client
|
30
|
+
#
|
31
|
+
# require "google/cloud/policy_troubleshooter/iam/v3"
|
32
|
+
# client = ::Google::Cloud::PolicyTroubleshooter::Iam::V3::PolicyTroubleshooter::Client.new
|
33
|
+
#
|
34
|
+
# @example Load this package, including all its services, and instantiate a REST client
|
35
|
+
#
|
36
|
+
# require "google/cloud/policy_troubleshooter/iam/v3"
|
37
|
+
# client = ::Google::Cloud::PolicyTroubleshooter::Iam::V3::PolicyTroubleshooter::Rest::Client.new
|
38
|
+
#
|
39
|
+
module V3
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
helper_path = ::File.join __dir__, "v3", "_helpers.rb"
|
47
|
+
require "google/cloud/policy_troubleshooter/iam/v3/_helpers" if ::File.file? helper_path
|
@@ -0,0 +1,86 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
+
# source: google/cloud/policytroubleshooter/iam/v3/troubleshooter.proto
|
4
|
+
|
5
|
+
require 'google/protobuf'
|
6
|
+
|
7
|
+
require 'google/api/annotations_pb'
|
8
|
+
require 'google/api/client_pb'
|
9
|
+
require 'google/api/field_behavior_pb'
|
10
|
+
require 'google/iam/v1/policy_pb'
|
11
|
+
require 'google/iam/v2/policy_pb'
|
12
|
+
require 'google/protobuf/struct_pb'
|
13
|
+
require 'google/protobuf/timestamp_pb'
|
14
|
+
require 'google/rpc/status_pb'
|
15
|
+
require 'google/type/expr_pb'
|
16
|
+
|
17
|
+
|
18
|
+
descriptor_data = "\n=google/cloud/policytroubleshooter/iam/v3/troubleshooter.proto\x12(google.cloud.policytroubleshooter.iam.v3\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1agoogle/iam/v1/policy.proto\x1a\x1agoogle/iam/v2/policy.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\x1a\x16google/type/expr.proto\"k\n\x1cTroubleshootIamPolicyRequest\x12K\n\x0c\x61\x63\x63\x65ss_tuple\x18\x01 \x01(\x0b\x32\x35.google.cloud.policytroubleshooter.iam.v3.AccessTuple\"\xb7\x04\n\x1dTroubleshootIamPolicyResponse\x12x\n\x14overall_access_state\x18\x01 \x01(\x0e\x32Z.google.cloud.policytroubleshooter.iam.v3.TroubleshootIamPolicyResponse.OverallAccessState\x12K\n\x0c\x61\x63\x63\x65ss_tuple\x18\x02 \x01(\x0b\x32\x35.google.cloud.policytroubleshooter.iam.v3.AccessTuple\x12\x62\n\x18\x61llow_policy_explanation\x18\x03 \x01(\x0b\x32@.google.cloud.policytroubleshooter.iam.v3.AllowPolicyExplanation\x12`\n\x17\x64\x65ny_policy_explanation\x18\x04 \x01(\x0b\x32?.google.cloud.policytroubleshooter.iam.v3.DenyPolicyExplanation\"\x88\x01\n\x12OverallAccessState\x12$\n OVERALL_ACCESS_STATE_UNSPECIFIED\x10\x00\x12\x0e\n\nCAN_ACCESS\x10\x01\x12\x11\n\rCANNOT_ACCESS\x10\x02\x12\x10\n\x0cUNKNOWN_INFO\x10\x03\x12\x17\n\x13UNKNOWN_CONDITIONAL\x10\x04\"\xd9\x01\n\x0b\x41\x63\x63\x65ssTuple\x12\x16\n\tprincipal\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1f\n\x12\x66ull_resource_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\npermission\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x1c\n\x0fpermission_fqdn\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12Z\n\x11\x63ondition_context\x18\x05 \x01(\x0b\x32:.google.cloud.policytroubleshooter.iam.v3.ConditionContextB\x03\xe0\x41\x01\"\xcf\x05\n\x10\x43onditionContext\x12U\n\x08resource\x18\x01 \x01(\x0b\x32\x43.google.cloud.policytroubleshooter.iam.v3.ConditionContext.Resource\x12T\n\x0b\x64\x65stination\x18\x02 \x01(\x0b\x32?.google.cloud.policytroubleshooter.iam.v3.ConditionContext.Peer\x12S\n\x07request\x18\x03 \x01(\x0b\x32\x42.google.cloud.policytroubleshooter.iam.v3.ConditionContext.Request\x12\x64\n\x0e\x65\x66\x66\x65\x63tive_tags\x18\x04 \x03(\x0b\x32G.google.cloud.policytroubleshooter.iam.v3.ConditionContext.EffectiveTagB\x03\xe0\x41\x03\x1a\x37\n\x08Resource\x12\x0f\n\x07service\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\x1a \n\x04Peer\x12\n\n\x02ip\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\x03\x1a@\n\x07Request\x12\x35\n\x0creceive_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x1a\xb5\x01\n\x0c\x45\x66\x66\x65\x63tiveTag\x12\x16\n\ttag_value\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12!\n\x14namespaced_tag_value\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12\x14\n\x07tag_key\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12\x1f\n\x12namespaced_tag_key\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12\x1b\n\x13tag_key_parent_name\x18\x06 \x01(\t\x12\x16\n\tinherited\x18\x05 \x01(\x08\x42\x03\xe0\x41\x03\"\x9d\x02\n\x16\x41llowPolicyExplanation\x12V\n\x12\x61llow_access_state\x18\x01 \x01(\x0e\x32:.google.cloud.policytroubleshooter.iam.v3.AllowAccessState\x12Z\n\x12\x65xplained_policies\x18\x02 \x03(\x0b\x32>.google.cloud.policytroubleshooter.iam.v3.ExplainedAllowPolicy\x12O\n\trelevance\x18\x03 \x01(\x0e\x32<.google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance\"\xe8\x02\n\x14\x45xplainedAllowPolicy\x12[\n\x12\x61llow_access_state\x18\x01 \x01(\x0e\x32:.google.cloud.policytroubleshooter.iam.v3.AllowAccessStateB\x03\xe0\x41\x02\x12\x1a\n\x12\x66ull_resource_name\x18\x02 \x01(\t\x12_\n\x14\x62inding_explanations\x18\x03 \x03(\x0b\x32\x41.google.cloud.policytroubleshooter.iam.v3.AllowBindingExplanation\x12O\n\trelevance\x18\x04 \x01(\x0e\x32<.google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance\x12%\n\x06policy\x18\x05 \x01(\x0b\x32\x15.google.iam.v1.Policy\"\xd4\x08\n\x17\x41llowBindingExplanation\x12[\n\x12\x61llow_access_state\x18\x01 \x01(\x0e\x32:.google.cloud.policytroubleshooter.iam.v3.AllowAccessStateB\x03\xe0\x41\x02\x12\x0c\n\x04role\x18\x02 \x01(\t\x12_\n\x0frole_permission\x18\x03 \x01(\x0e\x32\x46.google.cloud.policytroubleshooter.iam.v3.RolePermissionInclusionState\x12_\n\x19role_permission_relevance\x18\x04 \x01(\x0e\x32<.google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance\x12w\n\x13\x63ombined_membership\x18\x05 \x01(\x0b\x32Z.google.cloud.policytroubleshooter.iam.v3.AllowBindingExplanation.AnnotatedAllowMembership\x12g\n\x0bmemberships\x18\x06 \x03(\x0b\x32R.google.cloud.policytroubleshooter.iam.v3.AllowBindingExplanation.MembershipsEntry\x12O\n\trelevance\x18\x07 \x01(\x0e\x32<.google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance\x12$\n\tcondition\x18\x08 \x01(\x0b\x32\x11.google.type.Expr\x12]\n\x15\x63ondition_explanation\x18\t \x01(\x0b\x32>.google.cloud.policytroubleshooter.iam.v3.ConditionExplanation\x1a\xc2\x01\n\x18\x41nnotatedAllowMembership\x12U\n\nmembership\x18\x01 \x01(\x0e\x32\x41.google.cloud.policytroubleshooter.iam.v3.MembershipMatchingState\x12O\n\trelevance\x18\x02 \x01(\x0e\x32<.google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance\x1a\x8e\x01\n\x10MembershipsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12i\n\x05value\x18\x02 \x01(\x0b\x32Z.google.cloud.policytroubleshooter.iam.v3.AllowBindingExplanation.AnnotatedAllowMembership:\x02\x38\x01\"\xb9\x02\n\x15\x44\x65nyPolicyExplanation\x12T\n\x11\x64\x65ny_access_state\x18\x01 \x01(\x0e\x32\x39.google.cloud.policytroubleshooter.iam.v3.DenyAccessState\x12\\\n\x13\x65xplained_resources\x18\x02 \x03(\x0b\x32?.google.cloud.policytroubleshooter.iam.v3.ExplainedDenyResource\x12O\n\trelevance\x18\x03 \x01(\x0e\x32<.google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance\x12\x1b\n\x13permission_deniable\x18\x04 \x01(\x08\"\xba\x02\n\x15\x45xplainedDenyResource\x12Y\n\x11\x64\x65ny_access_state\x18\x01 \x01(\x0e\x32\x39.google.cloud.policytroubleshooter.iam.v3.DenyAccessStateB\x03\xe0\x41\x02\x12\x1a\n\x12\x66ull_resource_name\x18\x02 \x01(\t\x12Y\n\x12\x65xplained_policies\x18\x03 \x03(\x0b\x32=.google.cloud.policytroubleshooter.iam.v3.ExplainedDenyPolicy\x12O\n\trelevance\x18\x04 \x01(\x0e\x32<.google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance\"\xc2\x02\n\x13\x45xplainedDenyPolicy\x12Y\n\x11\x64\x65ny_access_state\x18\x01 \x01(\x0e\x32\x39.google.cloud.policytroubleshooter.iam.v3.DenyAccessStateB\x03\xe0\x41\x02\x12%\n\x06policy\x18\x02 \x01(\x0b\x32\x15.google.iam.v2.Policy\x12X\n\x11rule_explanations\x18\x03 \x03(\x0b\x32=.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation\x12O\n\trelevance\x18\x04 \x01(\x0e\x32<.google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance\"\xa9\x12\n\x13\x44\x65nyRuleExplanation\x12Y\n\x11\x64\x65ny_access_state\x18\x01 \x01(\x0e\x32\x39.google.cloud.policytroubleshooter.iam.v3.DenyAccessStateB\x03\xe0\x41\x02\x12}\n\x1a\x63ombined_denied_permission\x18\x02 \x01(\x0b\x32Y.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.AnnotatedPermissionMatching\x12p\n\x12\x64\x65nied_permissions\x18\x03 \x03(\x0b\x32T.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.DeniedPermissionsEntry\x12\x80\x01\n\x1d\x63ombined_exception_permission\x18\x04 \x01(\x0b\x32Y.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.AnnotatedPermissionMatching\x12v\n\x15\x65xception_permissions\x18\x05 \x03(\x0b\x32W.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.ExceptionPermissionsEntry\x12\x7f\n\x19\x63ombined_denied_principal\x18\x06 \x01(\x0b\x32\\.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.AnnotatedDenyPrincipalMatching\x12n\n\x11\x64\x65nied_principals\x18\x07 \x03(\x0b\x32S.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.DeniedPrincipalsEntry\x12\x82\x01\n\x1c\x63ombined_exception_principal\x18\x08 \x01(\x0b\x32\\.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.AnnotatedDenyPrincipalMatching\x12t\n\x14\x65xception_principals\x18\t \x03(\x0b\x32V.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.ExceptionPrincipalsEntry\x12O\n\trelevance\x18\n \x01(\x0e\x32<.google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance\x12$\n\tcondition\x18\x0b \x01(\x0b\x32\x11.google.type.Expr\x12]\n\x15\x63ondition_explanation\x18\x0c \x01(\x0b\x32>.google.cloud.policytroubleshooter.iam.v3.ConditionExplanation\x1a\xdb\x01\n\x1b\x41nnotatedPermissionMatching\x12k\n\x19permission_matching_state\x18\x01 \x01(\x0e\x32H.google.cloud.policytroubleshooter.iam.v3.PermissionPatternMatchingState\x12O\n\trelevance\x18\x02 \x01(\x0e\x32<.google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance\x1a\xc8\x01\n\x1e\x41nnotatedDenyPrincipalMatching\x12U\n\nmembership\x18\x01 \x01(\x0e\x32\x41.google.cloud.policytroubleshooter.iam.v3.MembershipMatchingState\x12O\n\trelevance\x18\x02 \x01(\x0e\x32<.google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance\x1a\x93\x01\n\x16\x44\x65niedPermissionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12h\n\x05value\x18\x02 \x01(\x0b\x32Y.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.AnnotatedPermissionMatching:\x02\x38\x01\x1a\x96\x01\n\x19\x45xceptionPermissionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12h\n\x05value\x18\x02 \x01(\x0b\x32Y.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.AnnotatedPermissionMatching:\x02\x38\x01\x1a\x95\x01\n\x15\x44\x65niedPrincipalsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12k\n\x05value\x18\x02 \x01(\x0b\x32\\.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.AnnotatedDenyPrincipalMatching:\x02\x38\x01\x1a\x98\x01\n\x18\x45xceptionPrincipalsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12k\n\x05value\x18\x02 \x01(\x0b\x32\\.google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.AnnotatedDenyPrincipalMatching:\x02\x38\x01\"\xc6\x02\n\x14\x43onditionExplanation\x12%\n\x05value\x18\x01 \x01(\x0b\x32\x16.google.protobuf.Value\x12\"\n\x06\x65rrors\x18\x03 \x03(\x0b\x32\x12.google.rpc.Status\x12i\n\x11\x65valuation_states\x18\x02 \x03(\x0b\x32N.google.cloud.policytroubleshooter.iam.v3.ConditionExplanation.EvaluationState\x1ax\n\x0f\x45valuationState\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x05\x12%\n\x05value\x18\x03 \x01(\x0b\x32\x16.google.protobuf.Value\x12\"\n\x06\x65rrors\x18\x04 \x03(\x0b\x32\x12.google.rpc.Status*\xcb\x01\n\x10\x41llowAccessState\x12\"\n\x1e\x41LLOW_ACCESS_STATE_UNSPECIFIED\x10\x00\x12\x1e\n\x1a\x41LLOW_ACCESS_STATE_GRANTED\x10\x01\x12\"\n\x1e\x41LLOW_ACCESS_STATE_NOT_GRANTED\x10\x02\x12*\n&ALLOW_ACCESS_STATE_UNKNOWN_CONDITIONAL\x10\x03\x12#\n\x1f\x41LLOW_ACCESS_STATE_UNKNOWN_INFO\x10\x04*\xc3\x01\n\x0f\x44\x65nyAccessState\x12!\n\x1d\x44\x45NY_ACCESS_STATE_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x44\x45NY_ACCESS_STATE_DENIED\x10\x01\x12 \n\x1c\x44\x45NY_ACCESS_STATE_NOT_DENIED\x10\x02\x12)\n%DENY_ACCESS_STATE_UNKNOWN_CONDITIONAL\x10\x03\x12\"\n\x1e\x44\x45NY_ACCESS_STATE_UNKNOWN_INFO\x10\x04*\xb1\x01\n\x1cRolePermissionInclusionState\x12/\n+ROLE_PERMISSION_INCLUSION_STATE_UNSPECIFIED\x10\x00\x12\x1c\n\x18ROLE_PERMISSION_INCLUDED\x10\x01\x12 \n\x1cROLE_PERMISSION_NOT_INCLUDED\x10\x02\x12 \n\x1cROLE_PERMISSION_UNKNOWN_INFO\x10\x03*\x97\x01\n\x1ePermissionPatternMatchingState\x12\x31\n-PERMISSION_PATTERN_MATCHING_STATE_UNSPECIFIED\x10\x00\x12\x1e\n\x1aPERMISSION_PATTERN_MATCHED\x10\x01\x12\"\n\x1ePERMISSION_PATTERN_NOT_MATCHED\x10\x02*\xb9\x01\n\x17MembershipMatchingState\x12)\n%MEMBERSHIP_MATCHING_STATE_UNSPECIFIED\x10\x00\x12\x16\n\x12MEMBERSHIP_MATCHED\x10\x01\x12\x1a\n\x16MEMBERSHIP_NOT_MATCHED\x10\x02\x12\x1b\n\x17MEMBERSHIP_UNKNOWN_INFO\x10\x03\x12\"\n\x1eMEMBERSHIP_UNKNOWN_UNSUPPORTED\x10\x04*w\n\x12HeuristicRelevance\x12#\n\x1fHEURISTIC_RELEVANCE_UNSPECIFIED\x10\x00\x12\x1e\n\x1aHEURISTIC_RELEVANCE_NORMAL\x10\x01\x12\x1c\n\x18HEURISTIC_RELEVANCE_HIGH\x10\x02\x32\xbb\x02\n\x14PolicyTroubleshooter\x12\xc9\x01\n\x15TroubleshootIamPolicy\x12\x46.google.cloud.policytroubleshooter.iam.v3.TroubleshootIamPolicyRequest\x1aG.google.cloud.policytroubleshooter.iam.v3.TroubleshootIamPolicyResponse\"\x1f\x82\xd3\xe4\x93\x02\x19\"\x14/v3/iam:troubleshoot:\x01*\x1aW\xca\x41#policytroubleshooter.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\x8d\x02\n,com.google.cloud.policytroubleshooter.iam.v3B\x13TroubleshooterProtoP\x01Z>cloud.google.com/go/policytroubleshooter/iam/apiv3/iampb;iampb\xf8\x01\x01\xaa\x02(Google.Cloud.PolicyTroubleshooter.Iam.V3\xca\x02(Google\\Cloud\\PolicyTroubleshooter\\Iam\\V3\xea\x02,Google::Cloud::PolicyTroubleshooter::Iam::V3b\x06proto3"
|
19
|
+
|
20
|
+
pool = Google::Protobuf::DescriptorPool.generated_pool
|
21
|
+
|
22
|
+
begin
|
23
|
+
pool.add_serialized_file(descriptor_data)
|
24
|
+
rescue TypeError => e
|
25
|
+
# Compatibility code: will be removed in the next major version.
|
26
|
+
require 'google/protobuf/descriptor_pb'
|
27
|
+
parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
|
28
|
+
parsed.clear_dependency
|
29
|
+
serialized = parsed.class.encode(parsed)
|
30
|
+
file = pool.add_serialized_file(serialized)
|
31
|
+
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
32
|
+
imports = [
|
33
|
+
["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
|
34
|
+
["google.iam.v1.Policy", "google/iam/v1/policy.proto"],
|
35
|
+
["google.type.Expr", "google/type/expr.proto"],
|
36
|
+
["google.iam.v2.Policy", "google/iam/v2/policy.proto"],
|
37
|
+
["google.protobuf.Value", "google/protobuf/struct.proto"],
|
38
|
+
["google.rpc.Status", "google/rpc/status.proto"],
|
39
|
+
]
|
40
|
+
imports.each do |type_name, expected_filename|
|
41
|
+
import_file = pool.lookup(type_name).file_descriptor
|
42
|
+
if import_file.name != expected_filename
|
43
|
+
warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
|
44
|
+
end
|
45
|
+
end
|
46
|
+
warn "Each proto file must use a consistent fully-qualified name."
|
47
|
+
warn "This will become an error in the next major version."
|
48
|
+
end
|
49
|
+
|
50
|
+
module Google
|
51
|
+
module Cloud
|
52
|
+
module PolicyTroubleshooter
|
53
|
+
module Iam
|
54
|
+
module V3
|
55
|
+
TroubleshootIamPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.TroubleshootIamPolicyRequest").msgclass
|
56
|
+
TroubleshootIamPolicyResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.TroubleshootIamPolicyResponse").msgclass
|
57
|
+
TroubleshootIamPolicyResponse::OverallAccessState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.TroubleshootIamPolicyResponse.OverallAccessState").enummodule
|
58
|
+
AccessTuple = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.AccessTuple").msgclass
|
59
|
+
ConditionContext = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.ConditionContext").msgclass
|
60
|
+
ConditionContext::Resource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.ConditionContext.Resource").msgclass
|
61
|
+
ConditionContext::Peer = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.ConditionContext.Peer").msgclass
|
62
|
+
ConditionContext::Request = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.ConditionContext.Request").msgclass
|
63
|
+
ConditionContext::EffectiveTag = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.ConditionContext.EffectiveTag").msgclass
|
64
|
+
AllowPolicyExplanation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.AllowPolicyExplanation").msgclass
|
65
|
+
ExplainedAllowPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.ExplainedAllowPolicy").msgclass
|
66
|
+
AllowBindingExplanation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.AllowBindingExplanation").msgclass
|
67
|
+
AllowBindingExplanation::AnnotatedAllowMembership = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.AllowBindingExplanation.AnnotatedAllowMembership").msgclass
|
68
|
+
DenyPolicyExplanation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.DenyPolicyExplanation").msgclass
|
69
|
+
ExplainedDenyResource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.ExplainedDenyResource").msgclass
|
70
|
+
ExplainedDenyPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.ExplainedDenyPolicy").msgclass
|
71
|
+
DenyRuleExplanation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation").msgclass
|
72
|
+
DenyRuleExplanation::AnnotatedPermissionMatching = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.AnnotatedPermissionMatching").msgclass
|
73
|
+
DenyRuleExplanation::AnnotatedDenyPrincipalMatching = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.DenyRuleExplanation.AnnotatedDenyPrincipalMatching").msgclass
|
74
|
+
ConditionExplanation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.ConditionExplanation").msgclass
|
75
|
+
ConditionExplanation::EvaluationState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.ConditionExplanation.EvaluationState").msgclass
|
76
|
+
AllowAccessState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.AllowAccessState").enummodule
|
77
|
+
DenyAccessState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.DenyAccessState").enummodule
|
78
|
+
RolePermissionInclusionState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.RolePermissionInclusionState").enummodule
|
79
|
+
PermissionPatternMatchingState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.PermissionPatternMatchingState").enummodule
|
80
|
+
MembershipMatchingState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.MembershipMatchingState").enummodule
|
81
|
+
HeuristicRelevance = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.policytroubleshooter.iam.v3.HeuristicRelevance").enummodule
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
|
+
# Source: google/cloud/policytroubleshooter/iam/v3/troubleshooter.proto for package 'Google.Cloud.PolicyTroubleshooter.Iam.V3'
|
3
|
+
# Original file comments:
|
4
|
+
# Copyright 2023 Google LLC
|
5
|
+
#
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
7
|
+
# you may not use this file except in compliance with the License.
|
8
|
+
# You may obtain a copy of the License at
|
9
|
+
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
#
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
# See the License for the specific language governing permissions and
|
16
|
+
# limitations under the License.
|
17
|
+
#
|
18
|
+
|
19
|
+
require 'grpc'
|
20
|
+
require 'google/cloud/policytroubleshooter/iam/v3/troubleshooter_pb'
|
21
|
+
|
22
|
+
module Google
|
23
|
+
module Cloud
|
24
|
+
module PolicyTroubleshooter
|
25
|
+
module Iam
|
26
|
+
module V3
|
27
|
+
module PolicyTroubleshooter
|
28
|
+
# IAM Policy Troubleshooter service.
|
29
|
+
#
|
30
|
+
# This service helps you troubleshoot access issues for Google Cloud resources.
|
31
|
+
class Service
|
32
|
+
|
33
|
+
include ::GRPC::GenericService
|
34
|
+
|
35
|
+
self.marshal_class_method = :encode
|
36
|
+
self.unmarshal_class_method = :decode
|
37
|
+
self.service_name = 'google.cloud.policytroubleshooter.iam.v3.PolicyTroubleshooter'
|
38
|
+
|
39
|
+
# Checks whether a principal has a specific permission for a specific
|
40
|
+
# resource, and explains why the principal does or doesn't have that
|
41
|
+
# permission.
|
42
|
+
rpc :TroubleshootIamPolicy, ::Google::Cloud::PolicyTroubleshooter::Iam::V3::TroubleshootIamPolicyRequest, ::Google::Cloud::PolicyTroubleshooter::Iam::V3::TroubleshootIamPolicyResponse
|
43
|
+
end
|
44
|
+
|
45
|
+
Stub = Service.rpc_stub_class
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2023 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
# This gem does not autoload during Bundler.require. To load this gem,
|
20
|
+
# issue explicit require statements for the packages desired, e.g.:
|
21
|
+
# require "google/cloud/policy_troubleshooter/iam/v3"
|
@@ -0,0 +1,381 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2023 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Api
|
22
|
+
# Required information for every language.
|
23
|
+
# @!attribute [rw] reference_docs_uri
|
24
|
+
# @return [::String]
|
25
|
+
# Link to automatically generated reference documentation. Example:
|
26
|
+
# https://cloud.google.com/nodejs/docs/reference/asset/latest
|
27
|
+
# @!attribute [rw] destinations
|
28
|
+
# @return [::Array<::Google::Api::ClientLibraryDestination>]
|
29
|
+
# The destination where API teams want this client library to be published.
|
30
|
+
class CommonLanguageSettings
|
31
|
+
include ::Google::Protobuf::MessageExts
|
32
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
33
|
+
end
|
34
|
+
|
35
|
+
# Details about how and where to publish client libraries.
|
36
|
+
# @!attribute [rw] version
|
37
|
+
# @return [::String]
|
38
|
+
# Version of the API to apply these settings to. This is the full protobuf
|
39
|
+
# package for the API, ending in the version element.
|
40
|
+
# Examples: "google.cloud.speech.v1" and "google.spanner.admin.database.v1".
|
41
|
+
# @!attribute [rw] launch_stage
|
42
|
+
# @return [::Google::Api::LaunchStage]
|
43
|
+
# Launch stage of this version of the API.
|
44
|
+
# @!attribute [rw] rest_numeric_enums
|
45
|
+
# @return [::Boolean]
|
46
|
+
# When using transport=rest, the client request will encode enums as
|
47
|
+
# numbers rather than strings.
|
48
|
+
# @!attribute [rw] java_settings
|
49
|
+
# @return [::Google::Api::JavaSettings]
|
50
|
+
# Settings for legacy Java features, supported in the Service YAML.
|
51
|
+
# @!attribute [rw] cpp_settings
|
52
|
+
# @return [::Google::Api::CppSettings]
|
53
|
+
# Settings for C++ client libraries.
|
54
|
+
# @!attribute [rw] php_settings
|
55
|
+
# @return [::Google::Api::PhpSettings]
|
56
|
+
# Settings for PHP client libraries.
|
57
|
+
# @!attribute [rw] python_settings
|
58
|
+
# @return [::Google::Api::PythonSettings]
|
59
|
+
# Settings for Python client libraries.
|
60
|
+
# @!attribute [rw] node_settings
|
61
|
+
# @return [::Google::Api::NodeSettings]
|
62
|
+
# Settings for Node client libraries.
|
63
|
+
# @!attribute [rw] dotnet_settings
|
64
|
+
# @return [::Google::Api::DotnetSettings]
|
65
|
+
# Settings for .NET client libraries.
|
66
|
+
# @!attribute [rw] ruby_settings
|
67
|
+
# @return [::Google::Api::RubySettings]
|
68
|
+
# Settings for Ruby client libraries.
|
69
|
+
# @!attribute [rw] go_settings
|
70
|
+
# @return [::Google::Api::GoSettings]
|
71
|
+
# Settings for Go client libraries.
|
72
|
+
class ClientLibrarySettings
|
73
|
+
include ::Google::Protobuf::MessageExts
|
74
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
75
|
+
end
|
76
|
+
|
77
|
+
# This message configures the settings for publishing [Google Cloud Client
|
78
|
+
# libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
|
79
|
+
# generated from the service config.
|
80
|
+
# @!attribute [rw] method_settings
|
81
|
+
# @return [::Array<::Google::Api::MethodSettings>]
|
82
|
+
# A list of API method settings, e.g. the behavior for methods that use the
|
83
|
+
# long-running operation pattern.
|
84
|
+
# @!attribute [rw] new_issue_uri
|
85
|
+
# @return [::String]
|
86
|
+
# Link to a *public* URI where users can report issues. Example:
|
87
|
+
# https://issuetracker.google.com/issues/new?component=190865&template=1161103
|
88
|
+
# @!attribute [rw] documentation_uri
|
89
|
+
# @return [::String]
|
90
|
+
# Link to product home page. Example:
|
91
|
+
# https://cloud.google.com/asset-inventory/docs/overview
|
92
|
+
# @!attribute [rw] api_short_name
|
93
|
+
# @return [::String]
|
94
|
+
# Used as a tracking tag when collecting data about the APIs developer
|
95
|
+
# relations artifacts like docs, packages delivered to package managers,
|
96
|
+
# etc. Example: "speech".
|
97
|
+
# @!attribute [rw] github_label
|
98
|
+
# @return [::String]
|
99
|
+
# GitHub label to apply to issues and pull requests opened for this API.
|
100
|
+
# @!attribute [rw] codeowner_github_teams
|
101
|
+
# @return [::Array<::String>]
|
102
|
+
# GitHub teams to be added to CODEOWNERS in the directory in GitHub
|
103
|
+
# containing source code for the client libraries for this API.
|
104
|
+
# @!attribute [rw] doc_tag_prefix
|
105
|
+
# @return [::String]
|
106
|
+
# A prefix used in sample code when demarking regions to be included in
|
107
|
+
# documentation.
|
108
|
+
# @!attribute [rw] organization
|
109
|
+
# @return [::Google::Api::ClientLibraryOrganization]
|
110
|
+
# For whom the client library is being published.
|
111
|
+
# @!attribute [rw] library_settings
|
112
|
+
# @return [::Array<::Google::Api::ClientLibrarySettings>]
|
113
|
+
# Client library settings. If the same version string appears multiple
|
114
|
+
# times in this list, then the last one wins. Settings from earlier
|
115
|
+
# settings with the same version string are discarded.
|
116
|
+
# @!attribute [rw] proto_reference_documentation_uri
|
117
|
+
# @return [::String]
|
118
|
+
# Optional link to proto reference documentation. Example:
|
119
|
+
# https://cloud.google.com/pubsub/lite/docs/reference/rpc
|
120
|
+
class Publishing
|
121
|
+
include ::Google::Protobuf::MessageExts
|
122
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
123
|
+
end
|
124
|
+
|
125
|
+
# Settings for Java client libraries.
|
126
|
+
# @!attribute [rw] library_package
|
127
|
+
# @return [::String]
|
128
|
+
# The package name to use in Java. Clobbers the java_package option
|
129
|
+
# set in the protobuf. This should be used **only** by APIs
|
130
|
+
# who have already set the language_settings.java.package_name" field
|
131
|
+
# in gapic.yaml. API teams should use the protobuf java_package option
|
132
|
+
# where possible.
|
133
|
+
#
|
134
|
+
# Example of a YAML configuration::
|
135
|
+
#
|
136
|
+
# publishing:
|
137
|
+
# java_settings:
|
138
|
+
# library_package: com.google.cloud.pubsub.v1
|
139
|
+
# @!attribute [rw] service_class_names
|
140
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
141
|
+
# Configure the Java class name to use instead of the service's for its
|
142
|
+
# corresponding generated GAPIC client. Keys are fully-qualified
|
143
|
+
# service names as they appear in the protobuf (including the full
|
144
|
+
# the language_settings.java.interface_names" field in gapic.yaml. API
|
145
|
+
# teams should otherwise use the service name as it appears in the
|
146
|
+
# protobuf.
|
147
|
+
#
|
148
|
+
# Example of a YAML configuration::
|
149
|
+
#
|
150
|
+
# publishing:
|
151
|
+
# java_settings:
|
152
|
+
# service_class_names:
|
153
|
+
# - google.pubsub.v1.Publisher: TopicAdmin
|
154
|
+
# - google.pubsub.v1.Subscriber: SubscriptionAdmin
|
155
|
+
# @!attribute [rw] common
|
156
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
157
|
+
# Some settings.
|
158
|
+
class JavaSettings
|
159
|
+
include ::Google::Protobuf::MessageExts
|
160
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
161
|
+
|
162
|
+
# @!attribute [rw] key
|
163
|
+
# @return [::String]
|
164
|
+
# @!attribute [rw] value
|
165
|
+
# @return [::String]
|
166
|
+
class ServiceClassNamesEntry
|
167
|
+
include ::Google::Protobuf::MessageExts
|
168
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
169
|
+
end
|
170
|
+
end
|
171
|
+
|
172
|
+
# Settings for C++ client libraries.
|
173
|
+
# @!attribute [rw] common
|
174
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
175
|
+
# Some settings.
|
176
|
+
class CppSettings
|
177
|
+
include ::Google::Protobuf::MessageExts
|
178
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
179
|
+
end
|
180
|
+
|
181
|
+
# Settings for Php client libraries.
|
182
|
+
# @!attribute [rw] common
|
183
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
184
|
+
# Some settings.
|
185
|
+
class PhpSettings
|
186
|
+
include ::Google::Protobuf::MessageExts
|
187
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
188
|
+
end
|
189
|
+
|
190
|
+
# Settings for Python client libraries.
|
191
|
+
# @!attribute [rw] common
|
192
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
193
|
+
# Some settings.
|
194
|
+
class PythonSettings
|
195
|
+
include ::Google::Protobuf::MessageExts
|
196
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
197
|
+
end
|
198
|
+
|
199
|
+
# Settings for Node client libraries.
|
200
|
+
# @!attribute [rw] common
|
201
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
202
|
+
# Some settings.
|
203
|
+
class NodeSettings
|
204
|
+
include ::Google::Protobuf::MessageExts
|
205
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
206
|
+
end
|
207
|
+
|
208
|
+
# Settings for Dotnet client libraries.
|
209
|
+
# @!attribute [rw] common
|
210
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
211
|
+
# Some settings.
|
212
|
+
# @!attribute [rw] renamed_services
|
213
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
214
|
+
# Map from original service names to renamed versions.
|
215
|
+
# This is used when the default generated types
|
216
|
+
# would cause a naming conflict. (Neither name is
|
217
|
+
# fully-qualified.)
|
218
|
+
# Example: Subscriber to SubscriberServiceApi.
|
219
|
+
# @!attribute [rw] renamed_resources
|
220
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
221
|
+
# Map from full resource types to the effective short name
|
222
|
+
# for the resource. This is used when otherwise resource
|
223
|
+
# named from different services would cause naming collisions.
|
224
|
+
# Example entry:
|
225
|
+
# "datalabeling.googleapis.com/Dataset": "DataLabelingDataset"
|
226
|
+
# @!attribute [rw] ignored_resources
|
227
|
+
# @return [::Array<::String>]
|
228
|
+
# List of full resource types to ignore during generation.
|
229
|
+
# This is typically used for API-specific Location resources,
|
230
|
+
# which should be handled by the generator as if they were actually
|
231
|
+
# the common Location resources.
|
232
|
+
# Example entry: "documentai.googleapis.com/Location"
|
233
|
+
# @!attribute [rw] forced_namespace_aliases
|
234
|
+
# @return [::Array<::String>]
|
235
|
+
# Namespaces which must be aliased in snippets due to
|
236
|
+
# a known (but non-generator-predictable) naming collision
|
237
|
+
# @!attribute [rw] handwritten_signatures
|
238
|
+
# @return [::Array<::String>]
|
239
|
+
# Method signatures (in the form "service.method(signature)")
|
240
|
+
# which are provided separately, so shouldn't be generated.
|
241
|
+
# Snippets *calling* these methods are still generated, however.
|
242
|
+
class DotnetSettings
|
243
|
+
include ::Google::Protobuf::MessageExts
|
244
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
245
|
+
|
246
|
+
# @!attribute [rw] key
|
247
|
+
# @return [::String]
|
248
|
+
# @!attribute [rw] value
|
249
|
+
# @return [::String]
|
250
|
+
class RenamedServicesEntry
|
251
|
+
include ::Google::Protobuf::MessageExts
|
252
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
253
|
+
end
|
254
|
+
|
255
|
+
# @!attribute [rw] key
|
256
|
+
# @return [::String]
|
257
|
+
# @!attribute [rw] value
|
258
|
+
# @return [::String]
|
259
|
+
class RenamedResourcesEntry
|
260
|
+
include ::Google::Protobuf::MessageExts
|
261
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
262
|
+
end
|
263
|
+
end
|
264
|
+
|
265
|
+
# Settings for Ruby client libraries.
|
266
|
+
# @!attribute [rw] common
|
267
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
268
|
+
# Some settings.
|
269
|
+
class RubySettings
|
270
|
+
include ::Google::Protobuf::MessageExts
|
271
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
272
|
+
end
|
273
|
+
|
274
|
+
# Settings for Go client libraries.
|
275
|
+
# @!attribute [rw] common
|
276
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
277
|
+
# Some settings.
|
278
|
+
class GoSettings
|
279
|
+
include ::Google::Protobuf::MessageExts
|
280
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
281
|
+
end
|
282
|
+
|
283
|
+
# Describes the generator configuration for a method.
|
284
|
+
# @!attribute [rw] selector
|
285
|
+
# @return [::String]
|
286
|
+
# The fully qualified name of the method, for which the options below apply.
|
287
|
+
# This is used to find the method to apply the options.
|
288
|
+
# @!attribute [rw] long_running
|
289
|
+
# @return [::Google::Api::MethodSettings::LongRunning]
|
290
|
+
# Describes settings to use for long-running operations when generating
|
291
|
+
# API methods for RPCs. Complements RPCs that use the annotations in
|
292
|
+
# google/longrunning/operations.proto.
|
293
|
+
#
|
294
|
+
# Example of a YAML configuration::
|
295
|
+
#
|
296
|
+
# publishing:
|
297
|
+
# method_settings:
|
298
|
+
# - selector: google.cloud.speech.v2.Speech.BatchRecognize
|
299
|
+
# long_running:
|
300
|
+
# initial_poll_delay:
|
301
|
+
# seconds: 60 # 1 minute
|
302
|
+
# poll_delay_multiplier: 1.5
|
303
|
+
# max_poll_delay:
|
304
|
+
# seconds: 360 # 6 minutes
|
305
|
+
# total_poll_timeout:
|
306
|
+
# seconds: 54000 # 90 minutes
|
307
|
+
class MethodSettings
|
308
|
+
include ::Google::Protobuf::MessageExts
|
309
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
310
|
+
|
311
|
+
# Describes settings to use when generating API methods that use the
|
312
|
+
# long-running operation pattern.
|
313
|
+
# All default values below are from those used in the client library
|
314
|
+
# generators (e.g.
|
315
|
+
# [Java](https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)).
|
316
|
+
# @!attribute [rw] initial_poll_delay
|
317
|
+
# @return [::Google::Protobuf::Duration]
|
318
|
+
# Initial delay after which the first poll request will be made.
|
319
|
+
# Default value: 5 seconds.
|
320
|
+
# @!attribute [rw] poll_delay_multiplier
|
321
|
+
# @return [::Float]
|
322
|
+
# Multiplier to gradually increase delay between subsequent polls until it
|
323
|
+
# reaches max_poll_delay.
|
324
|
+
# Default value: 1.5.
|
325
|
+
# @!attribute [rw] max_poll_delay
|
326
|
+
# @return [::Google::Protobuf::Duration]
|
327
|
+
# Maximum time between two subsequent poll requests.
|
328
|
+
# Default value: 45 seconds.
|
329
|
+
# @!attribute [rw] total_poll_timeout
|
330
|
+
# @return [::Google::Protobuf::Duration]
|
331
|
+
# Total polling timeout.
|
332
|
+
# Default value: 5 minutes.
|
333
|
+
class LongRunning
|
334
|
+
include ::Google::Protobuf::MessageExts
|
335
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
336
|
+
end
|
337
|
+
end
|
338
|
+
|
339
|
+
# The organization for which the client libraries are being published.
|
340
|
+
# Affects the url where generated docs are published, etc.
|
341
|
+
module ClientLibraryOrganization
|
342
|
+
# Not useful.
|
343
|
+
CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED = 0
|
344
|
+
|
345
|
+
# Google Cloud Platform Org.
|
346
|
+
CLOUD = 1
|
347
|
+
|
348
|
+
# Ads (Advertising) Org.
|
349
|
+
ADS = 2
|
350
|
+
|
351
|
+
# Photos Org.
|
352
|
+
PHOTOS = 3
|
353
|
+
|
354
|
+
# Street View Org.
|
355
|
+
STREET_VIEW = 4
|
356
|
+
|
357
|
+
# Shopping Org.
|
358
|
+
SHOPPING = 5
|
359
|
+
|
360
|
+
# Geo Org.
|
361
|
+
GEO = 6
|
362
|
+
|
363
|
+
# Generative AI - https://developers.generativeai.google
|
364
|
+
GENERATIVE_AI = 7
|
365
|
+
end
|
366
|
+
|
367
|
+
# To where should client libraries be published?
|
368
|
+
module ClientLibraryDestination
|
369
|
+
# Client libraries will neither be generated nor published to package
|
370
|
+
# managers.
|
371
|
+
CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0
|
372
|
+
|
373
|
+
# Generate the client library in a repo under github.com/googleapis,
|
374
|
+
# but don't publish it to package managers.
|
375
|
+
GITHUB = 10
|
376
|
+
|
377
|
+
# Publish the library to package managers like nuget.org and npmjs.com.
|
378
|
+
PACKAGE_MANAGER = 20
|
379
|
+
end
|
380
|
+
end
|
381
|
+
end
|