google-cloud-org_policy-v2 1.2.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/google/cloud/org_policy/v2/org_policy/client.rb +11 -4
- data/lib/google/cloud/org_policy/v2/org_policy/rest/client.rb +11 -4
- data/lib/google/cloud/org_policy/v2/version.rb +1 -1
- data/lib/google/cloud/orgpolicy/v2/constraint_pb.rb +9 -1
- data/lib/google/cloud/orgpolicy/v2/orgpolicy_pb.rb +3 -1
- data/lib/google/cloud/orgpolicy/v2/orgpolicy_services_pb.rb +2 -2
- data/proto_docs/google/api/client.rb +14 -0
- data/proto_docs/google/cloud/orgpolicy/v2/constraint.rb +171 -19
- data/proto_docs/google/cloud/orgpolicy/v2/orgpolicy.rb +26 -7
- data/proto_docs/google/protobuf/struct.rb +108 -0
- metadata +7 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 247a32d651f2d58e00d338500840ea0b0c59badd243e1644d177978a57a37458
|
4
|
+
data.tar.gz: d76a748a4d1e82f4385f2d403a5222699dafa12a7bc06287256168f7c3fe673a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3000f743b70e9874121d9fd64d7a4a0fcd969e0917b69ce49df1733eea5ee2de197c071ad903d70a08bab2b244bec5e24b18467cef923cd6d5548bc8d18594d2
|
7
|
+
data.tar.gz: 27acef4e7a5d174b7ba8cb1a1b6036033a2dd0e643d95a2772b51685b3a4b37c3a8583d4ccd2db8802ad92b430c57083e34c0fa9fa2aaeef0a809222186ac11d
|
data/README.md
CHANGED
@@ -86,7 +86,7 @@ To browse ready to use code samples check [Google Cloud Samples](https://cloud.g
|
|
86
86
|
|
87
87
|
## Supported Ruby Versions
|
88
88
|
|
89
|
-
This library is supported on Ruby
|
89
|
+
This library is supported on Ruby 3.0+.
|
90
90
|
|
91
91
|
Google provides official support for Ruby versions that are actively supported
|
92
92
|
by Ruby Core—that is, Ruby versions that are either in normal maintenance or
|
@@ -1126,10 +1126,10 @@ module Google
|
|
1126
1126
|
end
|
1127
1127
|
|
1128
1128
|
##
|
1129
|
-
# Gets a custom constraint.
|
1129
|
+
# Gets a custom or managed constraint.
|
1130
1130
|
#
|
1131
1131
|
# Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
|
1132
|
-
# custom constraint does not exist.
|
1132
|
+
# custom or managed constraint does not exist.
|
1133
1133
|
#
|
1134
1134
|
# @overload get_custom_constraint(request, options = nil)
|
1135
1135
|
# Pass arguments to `get_custom_constraint` via a request object, either of type
|
@@ -1147,8 +1147,8 @@ module Google
|
|
1147
1147
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
1148
1148
|
#
|
1149
1149
|
# @param name [::String]
|
1150
|
-
# Required. Resource name of the custom constraint. See the custom
|
1151
|
-
# entry for naming requirements.
|
1150
|
+
# Required. Resource name of the custom or managed constraint. See the custom
|
1151
|
+
# constraint entry for naming requirements.
|
1152
1152
|
#
|
1153
1153
|
# @yield [response, operation] Access the result along with the RPC operation
|
1154
1154
|
# @yieldparam response [::Google::Cloud::OrgPolicy::V2::CustomConstraint]
|
@@ -1450,6 +1450,13 @@ module Google
|
|
1450
1450
|
# * (`GRPC::Core::Channel`) a gRPC channel with included credentials
|
1451
1451
|
# * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
|
1452
1452
|
# * (`nil`) indicating no credentials
|
1453
|
+
#
|
1454
|
+
# Warning: If you accept a credential configuration (JSON file or Hash) from an
|
1455
|
+
# external source for authentication to Google Cloud, you must validate it before
|
1456
|
+
# providing it to a Google API client library. Providing an unvalidated credential
|
1457
|
+
# configuration to Google APIs can compromise the security of your systems and data.
|
1458
|
+
# For more information, refer to [Validate credential configurations from external
|
1459
|
+
# sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
|
1453
1460
|
# @return [::Object]
|
1454
1461
|
# @!attribute [rw] scope
|
1455
1462
|
# The OAuth scopes
|
@@ -1056,10 +1056,10 @@ module Google
|
|
1056
1056
|
end
|
1057
1057
|
|
1058
1058
|
##
|
1059
|
-
# Gets a custom constraint.
|
1059
|
+
# Gets a custom or managed constraint.
|
1060
1060
|
#
|
1061
1061
|
# Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
|
1062
|
-
# custom constraint does not exist.
|
1062
|
+
# custom or managed constraint does not exist.
|
1063
1063
|
#
|
1064
1064
|
# @overload get_custom_constraint(request, options = nil)
|
1065
1065
|
# Pass arguments to `get_custom_constraint` via a request object, either of type
|
@@ -1077,8 +1077,8 @@ module Google
|
|
1077
1077
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
1078
1078
|
#
|
1079
1079
|
# @param name [::String]
|
1080
|
-
# Required. Resource name of the custom constraint. See the custom
|
1081
|
-
# entry for naming requirements.
|
1080
|
+
# Required. Resource name of the custom or managed constraint. See the custom
|
1081
|
+
# constraint entry for naming requirements.
|
1082
1082
|
# @yield [result, operation] Access the result along with the TransportOperation object
|
1083
1083
|
# @yieldparam result [::Google::Cloud::OrgPolicy::V2::CustomConstraint]
|
1084
1084
|
# @yieldparam operation [::Gapic::Rest::TransportOperation]
|
@@ -1357,6 +1357,13 @@ module Google
|
|
1357
1357
|
# * (`Signet::OAuth2::Client`) A signet oauth2 client object
|
1358
1358
|
# (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
|
1359
1359
|
# * (`nil`) indicating no credentials
|
1360
|
+
#
|
1361
|
+
# Warning: If you accept a credential configuration (JSON file or Hash) from an
|
1362
|
+
# external source for authentication to Google Cloud, you must validate it before
|
1363
|
+
# providing it to a Google API client library. Providing an unvalidated credential
|
1364
|
+
# configuration to Google APIs can compromise the security of your systems and data.
|
1365
|
+
# For more information, refer to [Validate credential configurations from external
|
1366
|
+
# sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
|
1360
1367
|
# @return [::Object]
|
1361
1368
|
# @!attribute [rw] scope
|
1362
1369
|
# The OAuth scopes
|
@@ -6,10 +6,11 @@ require 'google/protobuf'
|
|
6
6
|
|
7
7
|
require 'google/api/field_behavior_pb'
|
8
8
|
require 'google/api/resource_pb'
|
9
|
+
require 'google/protobuf/struct_pb'
|
9
10
|
require 'google/protobuf/timestamp_pb'
|
10
11
|
|
11
12
|
|
12
|
-
descriptor_data = "\n*google/cloud/orgpolicy/v2/constraint.proto\x12\x19google.cloud.orgpolicy.v2\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\
|
13
|
+
descriptor_data = "\n*google/cloud/orgpolicy/v2/constraint.proto\x12\x19google.cloud.orgpolicy.v2\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xfa\x0f\n\nConstraint\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12S\n\x12\x63onstraint_default\x18\x04 \x01(\x0e\x32\x37.google.cloud.orgpolicy.v2.Constraint.ConstraintDefault\x12O\n\x0flist_constraint\x18\x05 \x01(\x0b\x32\x34.google.cloud.orgpolicy.v2.Constraint.ListConstraintH\x00\x12U\n\x12\x62oolean_constraint\x18\x06 \x01(\x0b\x32\x37.google.cloud.orgpolicy.v2.Constraint.BooleanConstraintH\x00\x12\x18\n\x10supports_dry_run\x18\x07 \x01(\x08\x12\x1d\n\x15\x65quivalent_constraint\x18\x08 \x01(\t\x12\x1b\n\x13supports_simulation\x18\t \x01(\x08\x1a=\n\x0eListConstraint\x12\x13\n\x0bsupports_in\x18\x01 \x01(\x08\x12\x16\n\x0esupports_under\x18\x02 \x01(\x08\x1a\x82\t\n\x1a\x43ustomConstraintDefinition\x12\x16\n\x0eresource_types\x18\x01 \x03(\t\x12\x61\n\x0cmethod_types\x18\x02 \x03(\x0e\x32K.google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.MethodType\x12\x11\n\tcondition\x18\x03 \x01(\t\x12`\n\x0b\x61\x63tion_type\x18\x04 \x01(\x0e\x32K.google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.ActionType\x12\x64\n\nparameters\x18\x05 \x03(\x0b\x32P.google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.ParametersEntry\x1a\xdc\x03\n\tParameter\x12]\n\x04type\x18\x01 \x01(\x0e\x32O.google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.Parameter.Type\x12-\n\rdefault_value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.Value\x12\x19\n\x11valid_values_expr\x18\x03 \x01(\t\x12\x65\n\x08metadata\x18\x04 \x01(\x0b\x32S.google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.Parameter.Metadata\x12]\n\x04item\x18\x05 \x01(\x0e\x32O.google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.Parameter.Type\x1a\x1f\n\x08Metadata\x12\x13\n\x0b\x64\x65scription\x18\x01 \x01(\t\"?\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\x08\n\x04LIST\x10\x01\x12\n\n\x06STRING\x10\x02\x12\x0b\n\x07\x42OOLEAN\x10\x03\x1a}\n\x0fParametersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12Y\n\x05value\x18\x02 \x01(\x0b\x32J.google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.Parameter:\x02\x38\x01\"p\n\nMethodType\x12\x1b\n\x17METHOD_TYPE_UNSPECIFIED\x10\x00\x12\n\n\x06\x43REATE\x10\x01\x12\n\n\x06UPDATE\x10\x02\x12\n\n\x06\x44\x45LETE\x10\x03\x12\x10\n\x0cREMOVE_GRANT\x10\x04\x12\x0f\n\x0bGOVERN_TAGS\x10\x05\">\n\nActionType\x12\x1b\n\x17\x41\x43TION_TYPE_UNSPECIFIED\x10\x00\x12\t\n\x05\x41LLOW\x10\x01\x12\x08\n\x04\x44\x45NY\x10\x02\x1a{\n\x11\x42ooleanConstraint\x12\x66\n\x1c\x63ustom_constraint_definition\x18\x01 \x01(\x0b\x32@.google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition\"L\n\x11\x43onstraintDefault\x12\"\n\x1e\x43ONSTRAINT_DEFAULT_UNSPECIFIED\x10\x00\x12\t\n\x05\x41LLOW\x10\x01\x12\x08\n\x04\x44\x45NY\x10\x02:\xb8\x01\xea\x41\xb4\x01\n#orgpolicy.googleapis.com/Constraint\x12+projects/{project}/constraints/{constraint}\x12)folders/{folder}/constraints/{constraint}\x12\x35organizations/{organization}/constraints/{constraint}B\x11\n\x0f\x63onstraint_type\"\xf7\x04\n\x10\x43ustomConstraint\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x1b\n\x0eresource_types\x18\x02 \x03(\tB\x03\xe0\x41\x05\x12L\n\x0cmethod_types\x18\x03 \x03(\x0e\x32\x36.google.cloud.orgpolicy.v2.CustomConstraint.MethodType\x12\x11\n\tcondition\x18\x04 \x01(\t\x12K\n\x0b\x61\x63tion_type\x18\x05 \x01(\x0e\x32\x36.google.cloud.orgpolicy.v2.CustomConstraint.ActionType\x12\x14\n\x0c\x64isplay_name\x18\x06 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x07 \x01(\t\x12\x34\n\x0bupdate_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\"p\n\nMethodType\x12\x1b\n\x17METHOD_TYPE_UNSPECIFIED\x10\x00\x12\n\n\x06\x43REATE\x10\x01\x12\n\n\x06UPDATE\x10\x02\x12\n\n\x06\x44\x45LETE\x10\x03\x12\x10\n\x0cREMOVE_GRANT\x10\x04\x12\x0f\n\x0bGOVERN_TAGS\x10\x05\">\n\nActionType\x12\x1b\n\x17\x41\x43TION_TYPE_UNSPECIFIED\x10\x00\x12\t\n\x05\x41LLOW\x10\x01\x12\x08\n\x04\x44\x45NY\x10\x02:r\xea\x41o\n)orgpolicy.googleapis.com/CustomConstraint\x12\x42organizations/{organization}/customConstraints/{custom_constraint}B\xc6\x01\n\x1d\x63om.google.cloud.orgpolicy.v2B\x0f\x43onstraintProtoP\x01Z;cloud.google.com/go/orgpolicy/apiv2/orgpolicypb;orgpolicypb\xaa\x02\x19Google.Cloud.OrgPolicy.V2\xca\x02\x19Google\\Cloud\\OrgPolicy\\V2\xea\x02\x1cGoogle::Cloud::OrgPolicy::V2b\x06proto3"
|
13
14
|
|
14
15
|
pool = Google::Protobuf::DescriptorPool.generated_pool
|
15
16
|
|
@@ -24,6 +25,7 @@ rescue TypeError
|
|
24
25
|
file = pool.add_serialized_file(serialized)
|
25
26
|
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
26
27
|
imports = [
|
28
|
+
["google.protobuf.Value", "google/protobuf/struct.proto"],
|
27
29
|
["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
|
28
30
|
]
|
29
31
|
imports.each do |type_name, expected_filename|
|
@@ -42,6 +44,12 @@ module Google
|
|
42
44
|
module V2
|
43
45
|
Constraint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.orgpolicy.v2.Constraint").msgclass
|
44
46
|
Constraint::ListConstraint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.orgpolicy.v2.Constraint.ListConstraint").msgclass
|
47
|
+
Constraint::CustomConstraintDefinition = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition").msgclass
|
48
|
+
Constraint::CustomConstraintDefinition::Parameter = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.Parameter").msgclass
|
49
|
+
Constraint::CustomConstraintDefinition::Parameter::Metadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.Parameter.Metadata").msgclass
|
50
|
+
Constraint::CustomConstraintDefinition::Parameter::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.Parameter.Type").enummodule
|
51
|
+
Constraint::CustomConstraintDefinition::MethodType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.MethodType").enummodule
|
52
|
+
Constraint::CustomConstraintDefinition::ActionType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.orgpolicy.v2.Constraint.CustomConstraintDefinition.ActionType").enummodule
|
45
53
|
Constraint::BooleanConstraint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.orgpolicy.v2.Constraint.BooleanConstraint").msgclass
|
46
54
|
Constraint::ConstraintDefault = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.orgpolicy.v2.Constraint.ConstraintDefault").enummodule
|
47
55
|
CustomConstraint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.orgpolicy.v2.CustomConstraint").msgclass
|
@@ -11,11 +11,12 @@ require 'google/api/resource_pb'
|
|
11
11
|
require 'google/cloud/orgpolicy/v2/constraint_pb'
|
12
12
|
require 'google/protobuf/empty_pb'
|
13
13
|
require 'google/protobuf/field_mask_pb'
|
14
|
+
require 'google/protobuf/struct_pb'
|
14
15
|
require 'google/protobuf/timestamp_pb'
|
15
16
|
require 'google/type/expr_pb'
|
16
17
|
|
17
18
|
|
18
|
-
descriptor_data = "\n)google/cloud/orgpolicy/v2/orgpolicy.proto\x12\x19google.cloud.orgpolicy.v2\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a*google/cloud/orgpolicy/v2/constraint.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x16google/type/expr.proto\"\x89\x03\n\x06Policy\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x33\n\x04spec\x18\x02 \x01(\x0b\x32%.google.cloud.orgpolicy.v2.PolicySpec\x12\x45\n\talternate\x18\x03 \x01(\x0b\x32..google.cloud.orgpolicy.v2.AlternatePolicySpecB\x02\x18\x01\x12;\n\x0c\x64ry_run_spec\x18\x04 \x01(\x0b\x32%.google.cloud.orgpolicy.v2.PolicySpec\x12\x11\n\x04\x65tag\x18\x05 \x01(\tB\x03\xe0\x41\x01:\x9f\x01\xea\x41\x9b\x01\n\x1forgpolicy.googleapis.com/Policy\x12$projects/{project}/policies/{policy}\x12\"folders/{folder}/policies/{policy}\x12.organizations/{organization}/policies/{policy}\"Z\n\x13\x41lternatePolicySpec\x12\x0e\n\x06launch\x18\x01 \x01(\t\x12\x33\n\x04spec\x18\x02 \x01(\x0b\x32%.google.cloud.orgpolicy.v2.PolicySpec\"\
|
19
|
+
descriptor_data = "\n)google/cloud/orgpolicy/v2/orgpolicy.proto\x12\x19google.cloud.orgpolicy.v2\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a*google/cloud/orgpolicy/v2/constraint.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x16google/type/expr.proto\"\x89\x03\n\x06Policy\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12\x33\n\x04spec\x18\x02 \x01(\x0b\x32%.google.cloud.orgpolicy.v2.PolicySpec\x12\x45\n\talternate\x18\x03 \x01(\x0b\x32..google.cloud.orgpolicy.v2.AlternatePolicySpecB\x02\x18\x01\x12;\n\x0c\x64ry_run_spec\x18\x04 \x01(\x0b\x32%.google.cloud.orgpolicy.v2.PolicySpec\x12\x11\n\x04\x65tag\x18\x05 \x01(\tB\x03\xe0\x41\x01:\x9f\x01\xea\x41\x9b\x01\n\x1forgpolicy.googleapis.com/Policy\x12$projects/{project}/policies/{policy}\x12\"folders/{folder}/policies/{policy}\x12.organizations/{organization}/policies/{policy}\"Z\n\x13\x41lternatePolicySpec\x12\x0e\n\x06launch\x18\x01 \x01(\t\x12\x33\n\x04spec\x18\x02 \x01(\x0b\x32%.google.cloud.orgpolicy.v2.PolicySpec\"\xf8\x03\n\nPolicySpec\x12\x0c\n\x04\x65tag\x18\x01 \x01(\t\x12\x34\n\x0bupdate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12?\n\x05rules\x18\x03 \x03(\x0b\x32\x30.google.cloud.orgpolicy.v2.PolicySpec.PolicyRule\x12\x1b\n\x13inherit_from_parent\x18\x04 \x01(\x08\x12\r\n\x05reset\x18\x05 \x01(\x08\x1a\xb8\x02\n\nPolicyRule\x12O\n\x06values\x18\x01 \x01(\x0b\x32=.google.cloud.orgpolicy.v2.PolicySpec.PolicyRule.StringValuesH\x00\x12\x13\n\tallow_all\x18\x02 \x01(\x08H\x00\x12\x12\n\x08\x64\x65ny_all\x18\x03 \x01(\x08H\x00\x12\x11\n\x07\x65nforce\x18\x04 \x01(\x08H\x00\x12$\n\tcondition\x18\x05 \x01(\x0b\x32\x11.google.type.Expr\x12\x30\n\nparameters\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x03\xe0\x41\x01\x1a=\n\x0cStringValues\x12\x16\n\x0e\x61llowed_values\x18\x01 \x03(\t\x12\x15\n\rdenied_values\x18\x02 \x03(\tB\x06\n\x04kind\"|\n\x16ListConstraintsRequest\x12;\n\x06parent\x18\x01 \x01(\tB+\xe0\x41\x02\xfa\x41%\x12#orgpolicy.googleapis.com/Constraint\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"n\n\x17ListConstraintsResponse\x12:\n\x0b\x63onstraints\x18\x01 \x03(\x0b\x32%.google.cloud.orgpolicy.v2.Constraint\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"u\n\x13ListPoliciesRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1forgpolicy.googleapis.com/Policy\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"d\n\x14ListPoliciesResponse\x12\x33\n\x08policies\x18\x01 \x03(\x0b\x32!.google.cloud.orgpolicy.v2.Policy\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"I\n\x10GetPolicyRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1forgpolicy.googleapis.com/Policy\"R\n\x19GetEffectivePolicyRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1forgpolicy.googleapis.com/Policy\"\x86\x01\n\x13\x43reatePolicyRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1forgpolicy.googleapis.com/Policy\x12\x36\n\x06policy\x18\x03 \x01(\x0b\x32!.google.cloud.orgpolicy.v2.PolicyB\x03\xe0\x41\x02\"~\n\x13UpdatePolicyRequest\x12\x36\n\x06policy\x18\x01 \x01(\x0b\x32!.google.cloud.orgpolicy.v2.PolicyB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"_\n\x13\x44\x65letePolicyRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1forgpolicy.googleapis.com/Policy\x12\x11\n\x04\x65tag\x18\x02 \x01(\tB\x03\xe0\x41\x01\"\xaf\x01\n\x1d\x43reateCustomConstraintRequest\x12\x41\n\x06parent\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\x12)orgpolicy.googleapis.com/CustomConstraint\x12K\n\x11\x63ustom_constraint\x18\x02 \x01(\x0b\x32+.google.cloud.orgpolicy.v2.CustomConstraintB\x03\xe0\x41\x02\"]\n\x1aGetCustomConstraintRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)orgpolicy.googleapis.com/CustomConstraint\"\x88\x01\n\x1cListCustomConstraintsRequest\x12\x41\n\x06parent\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\x12)orgpolicy.googleapis.com/CustomConstraint\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\"\x81\x01\n\x1dListCustomConstraintsResponse\x12G\n\x12\x63ustom_constraints\x18\x01 \x03(\x0b\x32+.google.cloud.orgpolicy.v2.CustomConstraint\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"l\n\x1dUpdateCustomConstraintRequest\x12K\n\x11\x63ustom_constraint\x18\x01 \x01(\x0b\x32+.google.cloud.orgpolicy.v2.CustomConstraintB\x03\xe0\x41\x02\"`\n\x1d\x44\x65leteCustomConstraintRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)orgpolicy.googleapis.com/CustomConstraint2\xcd\x16\n\tOrgPolicy\x12\x81\x02\n\x0fListConstraints\x12\x31.google.cloud.orgpolicy.v2.ListConstraintsRequest\x1a\x32.google.cloud.orgpolicy.v2.ListConstraintsResponse\"\x86\x01\xda\x41\x06parent\x82\xd3\xe4\x93\x02w\x12#/v2/{parent=projects/*}/constraintsZ$\x12\"/v2/{parent=folders/*}/constraintsZ*\x12(/v2/{parent=organizations/*}/constraints\x12\xee\x01\n\x0cListPolicies\x12..google.cloud.orgpolicy.v2.ListPoliciesRequest\x1a/.google.cloud.orgpolicy.v2.ListPoliciesResponse\"}\xda\x41\x06parent\x82\xd3\xe4\x93\x02n\x12 /v2/{parent=projects/*}/policiesZ!\x12\x1f/v2/{parent=folders/*}/policiesZ\'\x12%/v2/{parent=organizations/*}/policies\x12\xd8\x01\n\tGetPolicy\x12+.google.cloud.orgpolicy.v2.GetPolicyRequest\x1a!.google.cloud.orgpolicy.v2.Policy\"{\xda\x41\x04name\x82\xd3\xe4\x93\x02n\x12 /v2/{name=projects/*/policies/*}Z!\x12\x1f/v2/{name=folders/*/policies/*}Z\'\x12%/v2/{name=organizations/*/policies/*}\x12\xa5\x02\n\x12GetEffectivePolicy\x12\x34.google.cloud.orgpolicy.v2.GetEffectivePolicyRequest\x1a!.google.cloud.orgpolicy.v2.Policy\"\xb5\x01\xda\x41\x04name\x82\xd3\xe4\x93\x02\xa7\x01\x12\x33/v2/{name=projects/*/policies/*}:getEffectivePolicyZ4\x12\x32/v2/{name=folders/*/policies/*}:getEffectivePolicyZ:\x12\x38/v2/{name=organizations/*/policies/*}:getEffectivePolicy\x12\x81\x02\n\x0c\x43reatePolicy\x12..google.cloud.orgpolicy.v2.CreatePolicyRequest\x1a!.google.cloud.orgpolicy.v2.Policy\"\x9d\x01\xda\x41\rparent,policy\x82\xd3\xe4\x93\x02\x86\x01\" /v2/{parent=projects/*}/policies:\x06policyZ)\"\x1f/v2/{parent=folders/*}/policies:\x06policyZ/\"%/v2/{parent=organizations/*}/policies:\x06policy\x12\x8f\x02\n\x0cUpdatePolicy\x12..google.cloud.orgpolicy.v2.UpdatePolicyRequest\x1a!.google.cloud.orgpolicy.v2.Policy\"\xab\x01\xda\x41\x06policy\x82\xd3\xe4\x93\x02\x9b\x01\x32\'/v2/{policy.name=projects/*/policies/*}:\x06policyZ02&/v2/{policy.name=folders/*/policies/*}:\x06policyZ62,/v2/{policy.name=organizations/*/policies/*}:\x06policy\x12\xd3\x01\n\x0c\x44\x65letePolicy\x12..google.cloud.orgpolicy.v2.DeletePolicyRequest\x1a\x16.google.protobuf.Empty\"{\xda\x41\x04name\x82\xd3\xe4\x93\x02n* /v2/{name=projects/*/policies/*}Z!*\x1f/v2/{name=folders/*/policies/*}Z\'*%/v2/{name=organizations/*/policies/*}\x12\xe5\x01\n\x16\x43reateCustomConstraint\x12\x38.google.cloud.orgpolicy.v2.CreateCustomConstraintRequest\x1a+.google.cloud.orgpolicy.v2.CustomConstraint\"d\xda\x41\x18parent,custom_constraint\x82\xd3\xe4\x93\x02\x43\"./v2/{parent=organizations/*}/customConstraints:\x11\x63ustom_constraint\x12\xf0\x01\n\x16UpdateCustomConstraint\x12\x38.google.cloud.orgpolicy.v2.UpdateCustomConstraintRequest\x1a+.google.cloud.orgpolicy.v2.CustomConstraint\"o\xda\x41\x11\x63ustom_constraint\x82\xd3\xe4\x93\x02U2@/v2/{custom_constraint.name=organizations/*/customConstraints/*}:\x11\x63ustom_constraint\x12\xb8\x01\n\x13GetCustomConstraint\x12\x35.google.cloud.orgpolicy.v2.GetCustomConstraintRequest\x1a+.google.cloud.orgpolicy.v2.CustomConstraint\"=\xda\x41\x04name\x82\xd3\xe4\x93\x02\x30\x12./v2/{name=organizations/*/customConstraints/*}\x12\xcb\x01\n\x15ListCustomConstraints\x12\x37.google.cloud.orgpolicy.v2.ListCustomConstraintsRequest\x1a\x38.google.cloud.orgpolicy.v2.ListCustomConstraintsResponse\"?\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x30\x12./v2/{parent=organizations/*}/customConstraints\x12\xa9\x01\n\x16\x44\x65leteCustomConstraint\x12\x38.google.cloud.orgpolicy.v2.DeleteCustomConstraintRequest\x1a\x16.google.protobuf.Empty\"=\xda\x41\x04name\x82\xd3\xe4\x93\x02\x30*./v2/{name=organizations/*/customConstraints/*}\x1aL\xca\x41\x18orgpolicy.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xc5\x01\n\x1d\x63om.google.cloud.orgpolicy.v2B\x0eOrgPolicyProtoP\x01Z;cloud.google.com/go/orgpolicy/apiv2/orgpolicypb;orgpolicypb\xaa\x02\x19Google.Cloud.OrgPolicy.V2\xca\x02\x19Google\\Cloud\\OrgPolicy\\V2\xea\x02\x1cGoogle::Cloud::OrgPolicy::V2b\x06proto3"
|
19
20
|
|
20
21
|
pool = Google::Protobuf::DescriptorPool.generated_pool
|
21
22
|
|
@@ -32,6 +33,7 @@ rescue TypeError
|
|
32
33
|
imports = [
|
33
34
|
["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
|
34
35
|
["google.type.Expr", "google/type/expr.proto"],
|
36
|
+
["google.protobuf.Struct", "google/protobuf/struct.proto"],
|
35
37
|
["google.cloud.orgpolicy.v2.Constraint", "google/cloud/orgpolicy/v2/constraint.proto"],
|
36
38
|
["google.protobuf.FieldMask", "google/protobuf/field_mask.proto"],
|
37
39
|
]
|
@@ -106,10 +106,10 @@ module Google
|
|
106
106
|
# Note: the supplied policy will perform a full overwrite of all
|
107
107
|
# fields.
|
108
108
|
rpc :UpdateCustomConstraint, ::Google::Cloud::OrgPolicy::V2::UpdateCustomConstraintRequest, ::Google::Cloud::OrgPolicy::V2::CustomConstraint
|
109
|
-
# Gets a custom constraint.
|
109
|
+
# Gets a custom or managed constraint.
|
110
110
|
#
|
111
111
|
# Returns a `google.rpc.Status` with `google.rpc.Code.NOT_FOUND` if the
|
112
|
-
# custom constraint does not exist.
|
112
|
+
# custom or managed constraint does not exist.
|
113
113
|
rpc :GetCustomConstraint, ::Google::Cloud::OrgPolicy::V2::GetCustomConstraintRequest, ::Google::Cloud::OrgPolicy::V2::CustomConstraint
|
114
114
|
# Retrieves all of the custom constraints that exist on a particular
|
115
115
|
# organization resource.
|
@@ -221,6 +221,12 @@ module Google
|
|
221
221
|
# Pythonic which are included in `protobuf>=5.29.x`. This feature will be
|
222
222
|
# enabled by default 1 month after launching the feature in preview
|
223
223
|
# packages.
|
224
|
+
# @!attribute [rw] unversioned_package_disabled
|
225
|
+
# @return [::Boolean]
|
226
|
+
# Disables generation of an unversioned Python package for this client
|
227
|
+
# library. This means that the module names will need to be versioned in
|
228
|
+
# import statements. For example `import google.cloud.library_v2` instead
|
229
|
+
# of `import google.cloud.library`.
|
224
230
|
class ExperimentalFeatures
|
225
231
|
include ::Google::Protobuf::MessageExts
|
226
232
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -409,6 +415,14 @@ module Google
|
|
409
415
|
# @return [::Array<::String>]
|
410
416
|
# An allowlist of the fully qualified names of RPCs that should be included
|
411
417
|
# on public client surfaces.
|
418
|
+
# @!attribute [rw] generate_omitted_as_internal
|
419
|
+
# @return [::Boolean]
|
420
|
+
# Setting this to true indicates to the client generators that methods
|
421
|
+
# that would be excluded from the generation should instead be generated
|
422
|
+
# in a way that indicates these methods should not be consumed by
|
423
|
+
# end users. How this is expressed is up to individual language
|
424
|
+
# implementations to decide. Some examples may be: added annotations,
|
425
|
+
# obfuscated identifiers, or other language idiomatic patterns.
|
412
426
|
class SelectiveGapicGeneration
|
413
427
|
include ::Google::Protobuf::MessageExts
|
414
428
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -29,8 +29,8 @@ module Google
|
|
29
29
|
# organization by setting a policy that includes constraints at different
|
30
30
|
# locations in the organization's resource hierarchy. Policies are inherited
|
31
31
|
# down the resource hierarchy from higher levels, but can also be overridden.
|
32
|
-
# For details about the inheritance rules
|
33
|
-
#
|
32
|
+
# For details about the inheritance rules, see
|
33
|
+
# {::Google::Cloud::OrgPolicy::V2::Policy `Policy`}.
|
34
34
|
#
|
35
35
|
# Constraints have a default behavior determined by the `constraint_default`
|
36
36
|
# field, which is the enforcement behavior that is used in the absence of a
|
@@ -61,19 +61,31 @@ module Google
|
|
61
61
|
# The evaluation behavior of this constraint in the absence of a policy.
|
62
62
|
# @!attribute [rw] list_constraint
|
63
63
|
# @return [::Google::Cloud::OrgPolicy::V2::Constraint::ListConstraint]
|
64
|
-
# Defines this constraint as being a
|
64
|
+
# Defines this constraint as being a list constraint.
|
65
|
+
#
|
66
|
+
# Note: The following fields are mutually exclusive: `list_constraint`, `boolean_constraint`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
65
67
|
# @!attribute [rw] boolean_constraint
|
66
68
|
# @return [::Google::Cloud::OrgPolicy::V2::Constraint::BooleanConstraint]
|
67
|
-
# Defines this constraint as being a
|
69
|
+
# Defines this constraint as being a boolean constraint.
|
70
|
+
#
|
71
|
+
# Note: The following fields are mutually exclusive: `boolean_constraint`, `list_constraint`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
68
72
|
# @!attribute [rw] supports_dry_run
|
69
73
|
# @return [::Boolean]
|
70
74
|
# Shows if dry run is supported for this constraint or not.
|
75
|
+
# @!attribute [rw] equivalent_constraint
|
76
|
+
# @return [::String]
|
77
|
+
# Managed constraint and canned constraint sometimes can have
|
78
|
+
# equivalents. This field is used to store the equivalent constraint name.
|
79
|
+
# @!attribute [rw] supports_simulation
|
80
|
+
# @return [::Boolean]
|
81
|
+
# Shows if simulation is supported for this constraint or not.
|
71
82
|
class Constraint
|
72
83
|
include ::Google::Protobuf::MessageExts
|
73
84
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
74
85
|
|
75
|
-
# A constraint that allows or disallows a list of string values, which
|
76
|
-
# configured
|
86
|
+
# A constraint type that allows or disallows a list of string values, which
|
87
|
+
# are configured in the
|
88
|
+
# {::Google::Cloud::OrgPolicy::V2::PolicySpec::PolicyRule `PolicyRule`}.
|
77
89
|
# @!attribute [rw] supports_in
|
78
90
|
# @return [::Boolean]
|
79
91
|
# Indicates whether values grouped into categories can be used in
|
@@ -90,11 +102,148 @@ module Google
|
|
90
102
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
91
103
|
end
|
92
104
|
|
93
|
-
#
|
105
|
+
# Custom constraint definition. Defines this as a managed constraint.
|
106
|
+
# @!attribute [rw] resource_types
|
107
|
+
# @return [::Array<::String>]
|
108
|
+
# The resource instance type on which this policy applies. Format will be
|
109
|
+
# of the form : `<service name>/<type>` Example:
|
110
|
+
#
|
111
|
+
# * `compute.googleapis.com/Instance`.
|
112
|
+
# @!attribute [rw] method_types
|
113
|
+
# @return [::Array<::Google::Cloud::OrgPolicy::V2::Constraint::CustomConstraintDefinition::MethodType>]
|
114
|
+
# All the operations being applied for this constraint.
|
115
|
+
# @!attribute [rw] condition
|
116
|
+
# @return [::String]
|
117
|
+
# Org policy condition/expression. For example:
|
118
|
+
# `resource.instanceName.matches("[production|test]_.*_(\d)+")` or,
|
119
|
+
# `resource.management.auto_upgrade == true`
|
120
|
+
#
|
121
|
+
# The max length of the condition is 1000 characters.
|
122
|
+
# @!attribute [rw] action_type
|
123
|
+
# @return [::Google::Cloud::OrgPolicy::V2::Constraint::CustomConstraintDefinition::ActionType]
|
124
|
+
# Allow or deny type.
|
125
|
+
# @!attribute [rw] parameters
|
126
|
+
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::OrgPolicy::V2::Constraint::CustomConstraintDefinition::Parameter}]
|
127
|
+
# Stores the structure of
|
128
|
+
# {::Google::Cloud::OrgPolicy::V2::Constraint::CustomConstraintDefinition::Parameter `Parameters`}
|
129
|
+
# used by the constraint condition. The key of `map` represents the name of
|
130
|
+
# the parameter.
|
131
|
+
class CustomConstraintDefinition
|
132
|
+
include ::Google::Protobuf::MessageExts
|
133
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
134
|
+
|
135
|
+
# Defines a parameter structure.
|
136
|
+
# @!attribute [rw] type
|
137
|
+
# @return [::Google::Cloud::OrgPolicy::V2::Constraint::CustomConstraintDefinition::Parameter::Type]
|
138
|
+
# Type of the parameter.
|
139
|
+
# @!attribute [rw] default_value
|
140
|
+
# @return [::Google::Protobuf::Value]
|
141
|
+
# Sets the value of the parameter in an assignment if no value is given.
|
142
|
+
# @!attribute [rw] valid_values_expr
|
143
|
+
# @return [::String]
|
144
|
+
# Provides a CEL expression to specify the acceptable parameter values
|
145
|
+
# during assignment.
|
146
|
+
# For example, parameterName in ("parameterValue1", "parameterValue2")
|
147
|
+
# @!attribute [rw] metadata
|
148
|
+
# @return [::Google::Cloud::OrgPolicy::V2::Constraint::CustomConstraintDefinition::Parameter::Metadata]
|
149
|
+
# Defines subproperties primarily used by the UI to display user-friendly
|
150
|
+
# information.
|
151
|
+
# @!attribute [rw] item
|
152
|
+
# @return [::Google::Cloud::OrgPolicy::V2::Constraint::CustomConstraintDefinition::Parameter::Type]
|
153
|
+
# Determines the parameter's value structure.
|
154
|
+
# For example, `LIST<STRING>` can be specified by defining `type: LIST`,
|
155
|
+
# and `item: STRING`.
|
156
|
+
class Parameter
|
157
|
+
include ::Google::Protobuf::MessageExts
|
158
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
159
|
+
|
160
|
+
# Defines Metadata structure.
|
161
|
+
# @!attribute [rw] description
|
162
|
+
# @return [::String]
|
163
|
+
# Detailed description of what this `parameter` is and use of it.
|
164
|
+
# Mutable.
|
165
|
+
class Metadata
|
166
|
+
include ::Google::Protobuf::MessageExts
|
167
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
168
|
+
end
|
169
|
+
|
170
|
+
# All valid types of parameter.
|
171
|
+
module Type
|
172
|
+
# This is only used for distinguishing unset values and should never be
|
173
|
+
# used. Results in an error.
|
174
|
+
TYPE_UNSPECIFIED = 0
|
175
|
+
|
176
|
+
# List parameter type.
|
177
|
+
LIST = 1
|
178
|
+
|
179
|
+
# String parameter type.
|
180
|
+
STRING = 2
|
181
|
+
|
182
|
+
# Boolean parameter type.
|
183
|
+
BOOLEAN = 3
|
184
|
+
end
|
185
|
+
end
|
186
|
+
|
187
|
+
# @!attribute [rw] key
|
188
|
+
# @return [::String]
|
189
|
+
# @!attribute [rw] value
|
190
|
+
# @return [::Google::Cloud::OrgPolicy::V2::Constraint::CustomConstraintDefinition::Parameter]
|
191
|
+
class ParametersEntry
|
192
|
+
include ::Google::Protobuf::MessageExts
|
193
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
194
|
+
end
|
195
|
+
|
196
|
+
# The operation for which this constraint will be applied. To apply this
|
197
|
+
# constraint only when creating new resources, the `method_types` should be
|
198
|
+
# `CREATE` only. To apply this constraint when creating or deleting
|
199
|
+
# resources, the `method_types` should be `CREATE` and `DELETE`.
|
200
|
+
#
|
201
|
+
# `UPDATE`-only custom constraints are not supported. Use `CREATE` or
|
202
|
+
# `CREATE, UPDATE`.
|
203
|
+
module MethodType
|
204
|
+
# This is only used for distinguishing unset values and should never be
|
205
|
+
# used. Results in an error.
|
206
|
+
METHOD_TYPE_UNSPECIFIED = 0
|
207
|
+
|
208
|
+
# Constraint applied when creating the resource.
|
209
|
+
CREATE = 1
|
210
|
+
|
211
|
+
# Constraint applied when updating the resource.
|
212
|
+
UPDATE = 2
|
213
|
+
|
214
|
+
# Constraint applied when deleting the resource.
|
215
|
+
# Not currently supported.
|
216
|
+
DELETE = 3
|
217
|
+
|
218
|
+
# Constraint applied when removing an IAM grant.
|
219
|
+
REMOVE_GRANT = 4
|
220
|
+
|
221
|
+
# Constraint applied when enforcing forced tagging.
|
222
|
+
GOVERN_TAGS = 5
|
223
|
+
end
|
224
|
+
|
225
|
+
# Allow or deny type.
|
226
|
+
module ActionType
|
227
|
+
# This is only used for distinguishing unset values and should never be
|
228
|
+
# used. Results in an error.
|
229
|
+
ACTION_TYPE_UNSPECIFIED = 0
|
230
|
+
|
231
|
+
# Allowed action type.
|
232
|
+
ALLOW = 1
|
233
|
+
|
234
|
+
# Deny action type.
|
235
|
+
DENY = 2
|
236
|
+
end
|
237
|
+
end
|
238
|
+
|
239
|
+
# A constraint type is enforced or not enforced, which is configured in the
|
240
|
+
# {::Google::Cloud::OrgPolicy::V2::PolicySpec::PolicyRule `PolicyRule`}.
|
94
241
|
#
|
95
|
-
#
|
96
|
-
#
|
97
|
-
#
|
242
|
+
# If `customConstraintDefinition` is defined, this constraint is a managed
|
243
|
+
# constraint.
|
244
|
+
# @!attribute [rw] custom_constraint_definition
|
245
|
+
# @return [::Google::Cloud::OrgPolicy::V2::Constraint::CustomConstraintDefinition]
|
246
|
+
# Custom constraint definition. Defines this as a managed constraint.
|
98
247
|
class BooleanConstraint
|
99
248
|
include ::Google::Protobuf::MessageExts
|
100
249
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -106,7 +255,7 @@ module Google
|
|
106
255
|
# Immutable after creation.
|
107
256
|
module ConstraintDefault
|
108
257
|
# This is only used for distinguishing unset values and should never be
|
109
|
-
# used.
|
258
|
+
# used. Results in an error.
|
110
259
|
CONSTRAINT_DEFAULT_UNSPECIFIED = 0
|
111
260
|
|
112
261
|
# Indicate that all values are allowed for list constraints.
|
@@ -139,7 +288,7 @@ module Google
|
|
139
288
|
# @!attribute [rw] resource_types
|
140
289
|
# @return [::Array<::String>]
|
141
290
|
# Immutable. The resource instance type on which this policy applies. Format
|
142
|
-
# will be of the form : `<
|
291
|
+
# will be of the form : `<service name>/<type>` Example:
|
143
292
|
#
|
144
293
|
# * `compute.googleapis.com/Instance`.
|
145
294
|
# @!attribute [rw] method_types
|
@@ -147,7 +296,8 @@ module Google
|
|
147
296
|
# All the operations being applied for this constraint.
|
148
297
|
# @!attribute [rw] condition
|
149
298
|
# @return [::String]
|
150
|
-
#
|
299
|
+
# A Common Expression Language (CEL) condition which is used in the
|
300
|
+
# evaluation of the constraint. For example:
|
151
301
|
# `resource.instanceName.matches("[production|test]_.*_(\d)+")` or,
|
152
302
|
# `resource.management.auto_upgrade == true`
|
153
303
|
#
|
@@ -167,20 +317,21 @@ module Google
|
|
167
317
|
# @return [::Google::Protobuf::Timestamp]
|
168
318
|
# Output only. The last time this custom constraint was updated. This
|
169
319
|
# represents the last time that the `CreateCustomConstraint` or
|
170
|
-
# `UpdateCustomConstraint`
|
320
|
+
# `UpdateCustomConstraint` methods were called.
|
171
321
|
class CustomConstraint
|
172
322
|
include ::Google::Protobuf::MessageExts
|
173
323
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
174
324
|
|
175
325
|
# The operation for which this constraint will be applied. To apply this
|
176
|
-
# constraint only when creating new
|
326
|
+
# constraint only when creating new resources, the `method_types` should be
|
177
327
|
# `CREATE` only. To apply this constraint when creating or deleting
|
178
|
-
#
|
328
|
+
# resources, the `method_types` should be `CREATE` and `DELETE`.
|
179
329
|
#
|
180
330
|
# `UPDATE` only custom constraints are not supported. Use `CREATE` or
|
181
331
|
# `CREATE, UPDATE`.
|
182
332
|
module MethodType
|
183
|
-
#
|
333
|
+
# This is only used for distinguishing unset values and should never be
|
334
|
+
# used. Results in an error.
|
184
335
|
METHOD_TYPE_UNSPECIFIED = 0
|
185
336
|
|
186
337
|
# Constraint applied when creating the resource.
|
@@ -190,7 +341,7 @@ module Google
|
|
190
341
|
UPDATE = 2
|
191
342
|
|
192
343
|
# Constraint applied when deleting the resource.
|
193
|
-
# Not supported
|
344
|
+
# Not currently supported.
|
194
345
|
DELETE = 3
|
195
346
|
|
196
347
|
# Constraint applied when removing an IAM grant.
|
@@ -202,7 +353,8 @@ module Google
|
|
202
353
|
|
203
354
|
# Allow or deny type.
|
204
355
|
module ActionType
|
205
|
-
#
|
356
|
+
# This is only used for distinguishing unset values and should never be
|
357
|
+
# used. Results in an error.
|
206
358
|
ACTION_TYPE_UNSPECIFIED = 0
|
207
359
|
|
208
360
|
# Allowed action type.
|
@@ -40,7 +40,7 @@ module Google
|
|
40
40
|
# the equivalent project number.
|
41
41
|
# @!attribute [rw] spec
|
42
42
|
# @return [::Google::Cloud::OrgPolicy::V2::PolicySpec]
|
43
|
-
# Basic information about the
|
43
|
+
# Basic information about the organization policy.
|
44
44
|
# @!attribute [rw] alternate
|
45
45
|
# @deprecated This field is deprecated and may be removed in the next major version update.
|
46
46
|
# @return [::Google::Cloud::OrgPolicy::V2::AlternatePolicySpec]
|
@@ -62,7 +62,7 @@ module Google
|
|
62
62
|
end
|
63
63
|
|
64
64
|
# Similar to PolicySpec but with an extra 'launch' field for launch reference.
|
65
|
-
# The PolicySpec here is specific for dry-run
|
65
|
+
# The PolicySpec here is specific for dry-run.
|
66
66
|
# @!attribute [rw] launch
|
67
67
|
# @return [::String]
|
68
68
|
# Reference to the launch that will be used while audit logging and to
|
@@ -131,19 +131,27 @@ module Google
|
|
131
131
|
# @return [::Google::Cloud::OrgPolicy::V2::PolicySpec::PolicyRule::StringValues]
|
132
132
|
# List of values to be used for this policy rule. This field can be set
|
133
133
|
# only in policies for list constraints.
|
134
|
+
#
|
135
|
+
# Note: The following fields are mutually exclusive: `values`, `allow_all`, `deny_all`, `enforce`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
134
136
|
# @!attribute [rw] allow_all
|
135
137
|
# @return [::Boolean]
|
136
138
|
# Setting this to true means that all values are allowed. This field can
|
137
139
|
# be set only in policies for list constraints.
|
140
|
+
#
|
141
|
+
# Note: The following fields are mutually exclusive: `allow_all`, `values`, `deny_all`, `enforce`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
138
142
|
# @!attribute [rw] deny_all
|
139
143
|
# @return [::Boolean]
|
140
144
|
# Setting this to true means that all values are denied. This field can
|
141
145
|
# be set only in policies for list constraints.
|
146
|
+
#
|
147
|
+
# Note: The following fields are mutually exclusive: `deny_all`, `values`, `allow_all`, `enforce`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
142
148
|
# @!attribute [rw] enforce
|
143
149
|
# @return [::Boolean]
|
144
150
|
# If `true`, then the policy is enforced. If `false`, then any
|
145
151
|
# configuration is acceptable.
|
146
152
|
# This field can be set only in policies for boolean constraints.
|
153
|
+
#
|
154
|
+
# Note: The following fields are mutually exclusive: `enforce`, `values`, `allow_all`, `deny_all`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
147
155
|
# @!attribute [rw] condition
|
148
156
|
# @return [::Google::Type::Expr]
|
149
157
|
# A condition which determines whether this rule is used
|
@@ -158,6 +166,16 @@ module Google
|
|
158
166
|
# "resource.matchTag('123456789/environment,
|
159
167
|
# 'prod')". or "resource.matchTagId('tagKeys/123',
|
160
168
|
# 'tagValues/456')".
|
169
|
+
# @!attribute [rw] parameters
|
170
|
+
# @return [::Google::Protobuf::Struct]
|
171
|
+
# Optional. Required for managed constraints if parameters are defined.
|
172
|
+
# Passes parameter values when policy enforcement is enabled. Ensure that
|
173
|
+
# parameter value types match those defined in the constraint definition.
|
174
|
+
# For example:
|
175
|
+
# {
|
176
|
+
# "allowedLocations" : ["us-east1", "us-west1"],
|
177
|
+
# "allowAll" : true
|
178
|
+
# }
|
161
179
|
class PolicyRule
|
162
180
|
include ::Google::Protobuf::MessageExts
|
163
181
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -363,8 +381,8 @@ module Google
|
|
363
381
|
# [google.cloud.orgpolicy.v2.OrgPolicy.GetCustomConstraint] method.
|
364
382
|
# @!attribute [rw] name
|
365
383
|
# @return [::String]
|
366
|
-
# Required. Resource name of the custom constraint. See the custom
|
367
|
-
# entry for naming requirements.
|
384
|
+
# Required. Resource name of the custom or managed constraint. See the custom
|
385
|
+
# constraint entry for naming requirements.
|
368
386
|
class GetCustomConstraintRequest
|
369
387
|
include ::Google::Protobuf::MessageExts
|
370
388
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -395,11 +413,12 @@ module Google
|
|
395
413
|
|
396
414
|
# The response returned from the [ListCustomConstraints]
|
397
415
|
# [google.cloud.orgpolicy.v2.OrgPolicy.ListCustomConstraints] method. It will
|
398
|
-
# be empty if no custom constraints are set on the organization
|
416
|
+
# be empty if no custom or managed constraints are set on the organization
|
417
|
+
# resource.
|
399
418
|
# @!attribute [rw] custom_constraints
|
400
419
|
# @return [::Array<::Google::Cloud::OrgPolicy::V2::CustomConstraint>]
|
401
|
-
# All custom constraints that exist on the organization resource.
|
402
|
-
# empty if no custom constraints are set.
|
420
|
+
# All custom and managed constraints that exist on the organization resource.
|
421
|
+
# It will be empty if no custom constraints are set.
|
403
422
|
# @!attribute [rw] next_page_token
|
404
423
|
# @return [::String]
|
405
424
|
# Page token used to retrieve the next page. This is currently not used, but
|
@@ -0,0 +1,108 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2025 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 Protobuf
|
22
|
+
# `Struct` represents a structured data value, consisting of fields
|
23
|
+
# which map to dynamically typed values. In some languages, `Struct`
|
24
|
+
# might be supported by a native representation. For example, in
|
25
|
+
# scripting languages like JS a struct is represented as an
|
26
|
+
# object. The details of that representation are described together
|
27
|
+
# with the proto support for the language.
|
28
|
+
#
|
29
|
+
# The JSON representation for `Struct` is JSON object.
|
30
|
+
# @!attribute [rw] fields
|
31
|
+
# @return [::Google::Protobuf::Map{::String => ::Google::Protobuf::Value}]
|
32
|
+
# Unordered map of dynamically typed values.
|
33
|
+
class Struct
|
34
|
+
include ::Google::Protobuf::MessageExts
|
35
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
36
|
+
|
37
|
+
# @!attribute [rw] key
|
38
|
+
# @return [::String]
|
39
|
+
# @!attribute [rw] value
|
40
|
+
# @return [::Google::Protobuf::Value]
|
41
|
+
class FieldsEntry
|
42
|
+
include ::Google::Protobuf::MessageExts
|
43
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
# `Value` represents a dynamically typed value which can be either
|
48
|
+
# null, a number, a string, a boolean, a recursive struct value, or a
|
49
|
+
# list of values. A producer of value is expected to set one of these
|
50
|
+
# variants. Absence of any variant indicates an error.
|
51
|
+
#
|
52
|
+
# The JSON representation for `Value` is JSON value.
|
53
|
+
# @!attribute [rw] null_value
|
54
|
+
# @return [::Google::Protobuf::NullValue]
|
55
|
+
# Represents a null value.
|
56
|
+
#
|
57
|
+
# Note: The following fields are mutually exclusive: `null_value`, `number_value`, `string_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
58
|
+
# @!attribute [rw] number_value
|
59
|
+
# @return [::Float]
|
60
|
+
# Represents a double value.
|
61
|
+
#
|
62
|
+
# Note: The following fields are mutually exclusive: `number_value`, `null_value`, `string_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
63
|
+
# @!attribute [rw] string_value
|
64
|
+
# @return [::String]
|
65
|
+
# Represents a string value.
|
66
|
+
#
|
67
|
+
# Note: The following fields are mutually exclusive: `string_value`, `null_value`, `number_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
68
|
+
# @!attribute [rw] bool_value
|
69
|
+
# @return [::Boolean]
|
70
|
+
# Represents a boolean value.
|
71
|
+
#
|
72
|
+
# Note: The following fields are mutually exclusive: `bool_value`, `null_value`, `number_value`, `string_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
73
|
+
# @!attribute [rw] struct_value
|
74
|
+
# @return [::Google::Protobuf::Struct]
|
75
|
+
# Represents a structured value.
|
76
|
+
#
|
77
|
+
# Note: The following fields are mutually exclusive: `struct_value`, `null_value`, `number_value`, `string_value`, `bool_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
78
|
+
# @!attribute [rw] list_value
|
79
|
+
# @return [::Google::Protobuf::ListValue]
|
80
|
+
# Represents a repeated `Value`.
|
81
|
+
#
|
82
|
+
# Note: The following fields are mutually exclusive: `list_value`, `null_value`, `number_value`, `string_value`, `bool_value`, `struct_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
83
|
+
class Value
|
84
|
+
include ::Google::Protobuf::MessageExts
|
85
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
86
|
+
end
|
87
|
+
|
88
|
+
# `ListValue` is a wrapper around a repeated field of values.
|
89
|
+
#
|
90
|
+
# The JSON representation for `ListValue` is JSON array.
|
91
|
+
# @!attribute [rw] values
|
92
|
+
# @return [::Array<::Google::Protobuf::Value>]
|
93
|
+
# Repeated field of dynamically typed values.
|
94
|
+
class ListValue
|
95
|
+
include ::Google::Protobuf::MessageExts
|
96
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
97
|
+
end
|
98
|
+
|
99
|
+
# `NullValue` is a singleton enumeration to represent the null value for the
|
100
|
+
# `Value` type union.
|
101
|
+
#
|
102
|
+
# The JSON representation for `NullValue` is JSON `null`.
|
103
|
+
module NullValue
|
104
|
+
# Null value.
|
105
|
+
NULL_VALUE = 0
|
106
|
+
end
|
107
|
+
end
|
108
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-org_policy-v2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Google LLC
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 2025-04-21 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
13
12
|
- !ruby/object:Gem::Dependency
|
14
13
|
name: gapic-common
|
@@ -16,7 +15,7 @@ dependencies:
|
|
16
15
|
requirements:
|
17
16
|
- - ">="
|
18
17
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
18
|
+
version: 0.25.0
|
20
19
|
- - "<"
|
21
20
|
- !ruby/object:Gem::Version
|
22
21
|
version: 2.a
|
@@ -26,7 +25,7 @@ dependencies:
|
|
26
25
|
requirements:
|
27
26
|
- - ">="
|
28
27
|
- !ruby/object:Gem::Version
|
29
|
-
version: 0.
|
28
|
+
version: 0.25.0
|
30
29
|
- - "<"
|
31
30
|
- !ruby/object:Gem::Version
|
32
31
|
version: 2.a
|
@@ -82,13 +81,13 @@ files:
|
|
82
81
|
- proto_docs/google/protobuf/duration.rb
|
83
82
|
- proto_docs/google/protobuf/empty.rb
|
84
83
|
- proto_docs/google/protobuf/field_mask.rb
|
84
|
+
- proto_docs/google/protobuf/struct.rb
|
85
85
|
- proto_docs/google/protobuf/timestamp.rb
|
86
86
|
- proto_docs/google/type/expr.rb
|
87
87
|
homepage: https://github.com/googleapis/google-cloud-ruby
|
88
88
|
licenses:
|
89
89
|
- Apache-2.0
|
90
90
|
metadata: {}
|
91
|
-
post_install_message:
|
92
91
|
rdoc_options: []
|
93
92
|
require_paths:
|
94
93
|
- lib
|
@@ -96,15 +95,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
96
95
|
requirements:
|
97
96
|
- - ">="
|
98
97
|
- !ruby/object:Gem::Version
|
99
|
-
version: '
|
98
|
+
version: '3.0'
|
100
99
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
101
100
|
requirements:
|
102
101
|
- - ">="
|
103
102
|
- !ruby/object:Gem::Version
|
104
103
|
version: '0'
|
105
104
|
requirements: []
|
106
|
-
rubygems_version: 3.5
|
107
|
-
signing_key:
|
105
|
+
rubygems_version: 3.6.5
|
108
106
|
specification_version: 4
|
109
107
|
summary: The Organization Policy API allows users to configure governance rules on
|
110
108
|
their Google Cloud resources across the resource hierarchy.
|