google-cloud-asset-v1 0.5.3 → 0.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/google/cloud/asset/v1/asset_service/client.rb +302 -98
- data/lib/google/cloud/asset/v1/asset_service_pb.rb +103 -0
- data/lib/google/cloud/asset/v1/asset_service_services_pb.rb +35 -23
- data/lib/google/cloud/asset/v1/assets_pb.rb +50 -1
- data/lib/google/cloud/asset/v1/version.rb +1 -1
- data/lib/google/cloud/osconfig/v1/inventory_pb.rb +108 -0
- data/proto_docs/google/api/resource.rb +50 -14
- data/proto_docs/google/cloud/asset/v1/asset_service.rb +550 -90
- data/proto_docs/google/cloud/asset/v1/assets.rb +207 -25
- data/proto_docs/google/cloud/osconfig/v1/inventory.rb +284 -0
- metadata +5 -3
@@ -26,6 +26,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
26
26
|
add_message "google.cloud.asset.v1.ExportAssetsResponse" do
|
27
27
|
optional :read_time, :message, 1, "google.protobuf.Timestamp"
|
28
28
|
optional :output_config, :message, 2, "google.cloud.asset.v1.OutputConfig"
|
29
|
+
optional :output_result, :message, 3, "google.cloud.asset.v1.OutputResult"
|
29
30
|
end
|
30
31
|
add_message "google.cloud.asset.v1.BatchGetAssetsHistoryRequest" do
|
31
32
|
optional :parent, :string, 1
|
@@ -63,6 +64,14 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
63
64
|
optional :bigquery_destination, :message, 2, "google.cloud.asset.v1.BigQueryDestination"
|
64
65
|
end
|
65
66
|
end
|
67
|
+
add_message "google.cloud.asset.v1.OutputResult" do
|
68
|
+
oneof :result do
|
69
|
+
optional :gcs_result, :message, 1, "google.cloud.asset.v1.GcsOutputResult"
|
70
|
+
end
|
71
|
+
end
|
72
|
+
add_message "google.cloud.asset.v1.GcsOutputResult" do
|
73
|
+
repeated :uris, :string, 1
|
74
|
+
end
|
66
75
|
add_message "google.cloud.asset.v1.GcsDestination" do
|
67
76
|
oneof :object_uri do
|
68
77
|
optional :uri, :string, 1
|
@@ -73,6 +82,16 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
73
82
|
optional :dataset, :string, 1
|
74
83
|
optional :table, :string, 2
|
75
84
|
optional :force, :bool, 3
|
85
|
+
optional :partition_spec, :message, 4, "google.cloud.asset.v1.PartitionSpec"
|
86
|
+
optional :separate_tables_per_asset_type, :bool, 5
|
87
|
+
end
|
88
|
+
add_message "google.cloud.asset.v1.PartitionSpec" do
|
89
|
+
optional :partition_key, :enum, 1, "google.cloud.asset.v1.PartitionSpec.PartitionKey"
|
90
|
+
end
|
91
|
+
add_enum "google.cloud.asset.v1.PartitionSpec.PartitionKey" do
|
92
|
+
value :PARTITION_KEY_UNSPECIFIED, 0
|
93
|
+
value :READ_TIME, 1
|
94
|
+
value :REQUEST_TIME, 2
|
76
95
|
end
|
77
96
|
add_message "google.cloud.asset.v1.PubsubDestination" do
|
78
97
|
optional :topic, :string, 1
|
@@ -112,12 +131,78 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
112
131
|
repeated :results, :message, 1, "google.cloud.asset.v1.IamPolicySearchResult"
|
113
132
|
optional :next_page_token, :string, 2
|
114
133
|
end
|
134
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisQuery" do
|
135
|
+
optional :scope, :string, 1
|
136
|
+
optional :resource_selector, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisQuery.ResourceSelector"
|
137
|
+
optional :identity_selector, :message, 3, "google.cloud.asset.v1.IamPolicyAnalysisQuery.IdentitySelector"
|
138
|
+
optional :access_selector, :message, 4, "google.cloud.asset.v1.IamPolicyAnalysisQuery.AccessSelector"
|
139
|
+
optional :options, :message, 5, "google.cloud.asset.v1.IamPolicyAnalysisQuery.Options"
|
140
|
+
end
|
141
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisQuery.ResourceSelector" do
|
142
|
+
optional :full_resource_name, :string, 1
|
143
|
+
end
|
144
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisQuery.IdentitySelector" do
|
145
|
+
optional :identity, :string, 1
|
146
|
+
end
|
147
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisQuery.AccessSelector" do
|
148
|
+
repeated :roles, :string, 1
|
149
|
+
repeated :permissions, :string, 2
|
150
|
+
end
|
151
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisQuery.Options" do
|
152
|
+
optional :expand_groups, :bool, 1
|
153
|
+
optional :expand_roles, :bool, 2
|
154
|
+
optional :expand_resources, :bool, 3
|
155
|
+
optional :output_resource_edges, :bool, 4
|
156
|
+
optional :output_group_edges, :bool, 5
|
157
|
+
optional :analyze_service_account_impersonation, :bool, 6
|
158
|
+
end
|
159
|
+
add_message "google.cloud.asset.v1.AnalyzeIamPolicyRequest" do
|
160
|
+
optional :analysis_query, :message, 1, "google.cloud.asset.v1.IamPolicyAnalysisQuery"
|
161
|
+
optional :execution_timeout, :message, 2, "google.protobuf.Duration"
|
162
|
+
end
|
163
|
+
add_message "google.cloud.asset.v1.AnalyzeIamPolicyResponse" do
|
164
|
+
optional :main_analysis, :message, 1, "google.cloud.asset.v1.AnalyzeIamPolicyResponse.IamPolicyAnalysis"
|
165
|
+
repeated :service_account_impersonation_analysis, :message, 2, "google.cloud.asset.v1.AnalyzeIamPolicyResponse.IamPolicyAnalysis"
|
166
|
+
optional :fully_explored, :bool, 3
|
167
|
+
end
|
168
|
+
add_message "google.cloud.asset.v1.AnalyzeIamPolicyResponse.IamPolicyAnalysis" do
|
169
|
+
optional :analysis_query, :message, 1, "google.cloud.asset.v1.IamPolicyAnalysisQuery"
|
170
|
+
repeated :analysis_results, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisResult"
|
171
|
+
optional :fully_explored, :bool, 3
|
172
|
+
repeated :non_critical_errors, :message, 5, "google.cloud.asset.v1.IamPolicyAnalysisState"
|
173
|
+
end
|
174
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisOutputConfig" do
|
175
|
+
oneof :destination do
|
176
|
+
optional :gcs_destination, :message, 1, "google.cloud.asset.v1.IamPolicyAnalysisOutputConfig.GcsDestination"
|
177
|
+
optional :bigquery_destination, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisOutputConfig.BigQueryDestination"
|
178
|
+
end
|
179
|
+
end
|
180
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisOutputConfig.GcsDestination" do
|
181
|
+
optional :uri, :string, 1
|
182
|
+
end
|
183
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisOutputConfig.BigQueryDestination" do
|
184
|
+
optional :dataset, :string, 1
|
185
|
+
optional :table_prefix, :string, 2
|
186
|
+
optional :partition_key, :enum, 3, "google.cloud.asset.v1.IamPolicyAnalysisOutputConfig.BigQueryDestination.PartitionKey"
|
187
|
+
optional :write_disposition, :string, 4
|
188
|
+
end
|
189
|
+
add_enum "google.cloud.asset.v1.IamPolicyAnalysisOutputConfig.BigQueryDestination.PartitionKey" do
|
190
|
+
value :PARTITION_KEY_UNSPECIFIED, 0
|
191
|
+
value :REQUEST_TIME, 1
|
192
|
+
end
|
193
|
+
add_message "google.cloud.asset.v1.AnalyzeIamPolicyLongrunningRequest" do
|
194
|
+
optional :analysis_query, :message, 1, "google.cloud.asset.v1.IamPolicyAnalysisQuery"
|
195
|
+
optional :output_config, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisOutputConfig"
|
196
|
+
end
|
197
|
+
add_message "google.cloud.asset.v1.AnalyzeIamPolicyLongrunningResponse" do
|
198
|
+
end
|
115
199
|
add_enum "google.cloud.asset.v1.ContentType" do
|
116
200
|
value :CONTENT_TYPE_UNSPECIFIED, 0
|
117
201
|
value :RESOURCE, 1
|
118
202
|
value :IAM_POLICY, 2
|
119
203
|
value :ORG_POLICY, 4
|
120
204
|
value :ACCESS_POLICY, 5
|
205
|
+
value :OS_INVENTORY, 6
|
121
206
|
end
|
122
207
|
end
|
123
208
|
end
|
@@ -137,8 +222,12 @@ module Google
|
|
137
222
|
UpdateFeedRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.UpdateFeedRequest").msgclass
|
138
223
|
DeleteFeedRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.DeleteFeedRequest").msgclass
|
139
224
|
OutputConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.OutputConfig").msgclass
|
225
|
+
OutputResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.OutputResult").msgclass
|
226
|
+
GcsOutputResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.GcsOutputResult").msgclass
|
140
227
|
GcsDestination = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.GcsDestination").msgclass
|
141
228
|
BigQueryDestination = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.BigQueryDestination").msgclass
|
229
|
+
PartitionSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.PartitionSpec").msgclass
|
230
|
+
PartitionSpec::PartitionKey = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.PartitionSpec.PartitionKey").enummodule
|
142
231
|
PubsubDestination = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.PubsubDestination").msgclass
|
143
232
|
FeedOutputConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.FeedOutputConfig").msgclass
|
144
233
|
Feed = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.Feed").msgclass
|
@@ -146,6 +235,20 @@ module Google
|
|
146
235
|
SearchAllResourcesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.SearchAllResourcesResponse").msgclass
|
147
236
|
SearchAllIamPoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.SearchAllIamPoliciesRequest").msgclass
|
148
237
|
SearchAllIamPoliciesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.SearchAllIamPoliciesResponse").msgclass
|
238
|
+
IamPolicyAnalysisQuery = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisQuery").msgclass
|
239
|
+
IamPolicyAnalysisQuery::ResourceSelector = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisQuery.ResourceSelector").msgclass
|
240
|
+
IamPolicyAnalysisQuery::IdentitySelector = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisQuery.IdentitySelector").msgclass
|
241
|
+
IamPolicyAnalysisQuery::AccessSelector = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisQuery.AccessSelector").msgclass
|
242
|
+
IamPolicyAnalysisQuery::Options = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisQuery.Options").msgclass
|
243
|
+
AnalyzeIamPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeIamPolicyRequest").msgclass
|
244
|
+
AnalyzeIamPolicyResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeIamPolicyResponse").msgclass
|
245
|
+
AnalyzeIamPolicyResponse::IamPolicyAnalysis = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeIamPolicyResponse.IamPolicyAnalysis").msgclass
|
246
|
+
IamPolicyAnalysisOutputConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisOutputConfig").msgclass
|
247
|
+
IamPolicyAnalysisOutputConfig::GcsDestination = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisOutputConfig.GcsDestination").msgclass
|
248
|
+
IamPolicyAnalysisOutputConfig::BigQueryDestination = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisOutputConfig.BigQueryDestination").msgclass
|
249
|
+
IamPolicyAnalysisOutputConfig::BigQueryDestination::PartitionKey = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisOutputConfig.BigQueryDestination.PartitionKey").enummodule
|
250
|
+
AnalyzeIamPolicyLongrunningRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeIamPolicyLongrunningRequest").msgclass
|
251
|
+
AnalyzeIamPolicyLongrunningResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeIamPolicyLongrunningResponse").msgclass
|
149
252
|
ContentType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.ContentType").enummodule
|
150
253
|
end
|
151
254
|
end
|
@@ -36,15 +36,14 @@ module Google
|
|
36
36
|
# Exports assets with time and resource types to a given Cloud Storage
|
37
37
|
# location/BigQuery table. For Cloud Storage location destinations, the
|
38
38
|
# output format is newline-delimited JSON. Each line represents a
|
39
|
-
# [google.cloud.asset.v1.Asset][google.cloud.asset.v1.Asset] in the JSON
|
40
|
-
#
|
41
|
-
#
|
42
|
-
#
|
43
|
-
#
|
44
|
-
#
|
45
|
-
#
|
46
|
-
|
47
|
-
rpc :ExportAssets, Google::Cloud::Asset::V1::ExportAssetsRequest, Google::Longrunning::Operation
|
39
|
+
# [google.cloud.asset.v1.Asset][google.cloud.asset.v1.Asset] in the JSON format; for BigQuery table
|
40
|
+
# destinations, the output table stores the fields in asset proto as columns.
|
41
|
+
# This API implements the [google.longrunning.Operation][google.longrunning.Operation] API
|
42
|
+
# , which allows you to keep track of the export. We recommend intervals of
|
43
|
+
# at least 2 seconds with exponential retry to poll the export operation
|
44
|
+
# result. For regular-size resource parent, the export operation usually
|
45
|
+
# finishes within 5 minutes.
|
46
|
+
rpc :ExportAssets, ::Google::Cloud::Asset::V1::ExportAssetsRequest, ::Google::Longrunning::Operation
|
48
47
|
# Batch gets the update history of assets that overlap a time window.
|
49
48
|
# For IAM_POLICY content, this API outputs history when the asset and its
|
50
49
|
# attached IAM POLICY both exist. This can create gaps in the output history.
|
@@ -52,28 +51,41 @@ module Google
|
|
52
51
|
# deleted status.
|
53
52
|
# If a specified asset does not exist, this API returns an INVALID_ARGUMENT
|
54
53
|
# error.
|
55
|
-
rpc :BatchGetAssetsHistory, Google::Cloud::Asset::V1::BatchGetAssetsHistoryRequest, Google::Cloud::Asset::V1::BatchGetAssetsHistoryResponse
|
54
|
+
rpc :BatchGetAssetsHistory, ::Google::Cloud::Asset::V1::BatchGetAssetsHistoryRequest, ::Google::Cloud::Asset::V1::BatchGetAssetsHistoryResponse
|
56
55
|
# Creates a feed in a parent project/folder/organization to listen to its
|
57
56
|
# asset updates.
|
58
|
-
rpc :CreateFeed, Google::Cloud::Asset::V1::CreateFeedRequest, Google::Cloud::Asset::V1::Feed
|
57
|
+
rpc :CreateFeed, ::Google::Cloud::Asset::V1::CreateFeedRequest, ::Google::Cloud::Asset::V1::Feed
|
59
58
|
# Gets details about an asset feed.
|
60
|
-
rpc :GetFeed, Google::Cloud::Asset::V1::GetFeedRequest, Google::Cloud::Asset::V1::Feed
|
59
|
+
rpc :GetFeed, ::Google::Cloud::Asset::V1::GetFeedRequest, ::Google::Cloud::Asset::V1::Feed
|
61
60
|
# Lists all asset feeds in a parent project/folder/organization.
|
62
|
-
rpc :ListFeeds, Google::Cloud::Asset::V1::ListFeedsRequest, Google::Cloud::Asset::V1::ListFeedsResponse
|
61
|
+
rpc :ListFeeds, ::Google::Cloud::Asset::V1::ListFeedsRequest, ::Google::Cloud::Asset::V1::ListFeedsResponse
|
63
62
|
# Updates an asset feed configuration.
|
64
|
-
rpc :UpdateFeed, Google::Cloud::Asset::V1::UpdateFeedRequest, Google::Cloud::Asset::V1::Feed
|
63
|
+
rpc :UpdateFeed, ::Google::Cloud::Asset::V1::UpdateFeedRequest, ::Google::Cloud::Asset::V1::Feed
|
65
64
|
# Deletes an asset feed.
|
66
|
-
rpc :DeleteFeed, Google::Cloud::Asset::V1::DeleteFeedRequest, Google::Protobuf::Empty
|
67
|
-
# Searches all
|
68
|
-
#
|
69
|
-
#
|
65
|
+
rpc :DeleteFeed, ::Google::Cloud::Asset::V1::DeleteFeedRequest, ::Google::Protobuf::Empty
|
66
|
+
# Searches all Cloud resources within the specified scope, such as a project,
|
67
|
+
# folder, or organization. The caller must be granted the
|
68
|
+
# `cloudasset.assets.searchAllResources` permission on the desired scope,
|
70
69
|
# otherwise the request will be rejected.
|
71
|
-
rpc :SearchAllResources, Google::Cloud::Asset::V1::SearchAllResourcesRequest, Google::Cloud::Asset::V1::SearchAllResourcesResponse
|
72
|
-
# Searches all
|
73
|
-
#
|
74
|
-
#
|
70
|
+
rpc :SearchAllResources, ::Google::Cloud::Asset::V1::SearchAllResourcesRequest, ::Google::Cloud::Asset::V1::SearchAllResourcesResponse
|
71
|
+
# Searches all IAM policies within the specified scope, such as a project,
|
72
|
+
# folder, or organization. The caller must be granted the
|
73
|
+
# `cloudasset.assets.searchAllIamPolicies` permission on the desired scope,
|
75
74
|
# otherwise the request will be rejected.
|
76
|
-
rpc :SearchAllIamPolicies, Google::Cloud::Asset::V1::SearchAllIamPoliciesRequest, Google::Cloud::Asset::V1::SearchAllIamPoliciesResponse
|
75
|
+
rpc :SearchAllIamPolicies, ::Google::Cloud::Asset::V1::SearchAllIamPoliciesRequest, ::Google::Cloud::Asset::V1::SearchAllIamPoliciesResponse
|
76
|
+
# Analyzes IAM policies to answer which identities have what accesses on
|
77
|
+
# which resources.
|
78
|
+
rpc :AnalyzeIamPolicy, ::Google::Cloud::Asset::V1::AnalyzeIamPolicyRequest, ::Google::Cloud::Asset::V1::AnalyzeIamPolicyResponse
|
79
|
+
# Analyzes IAM policies asynchronously to answer which identities have what
|
80
|
+
# accesses on which resources, and writes the analysis results to a Google
|
81
|
+
# Cloud Storage or a BigQuery destination. For Cloud Storage destination, the
|
82
|
+
# output format is the JSON format that represents a
|
83
|
+
# [AnalyzeIamPolicyResponse][google.cloud.asset.v1.AnalyzeIamPolicyResponse]. This method implements the
|
84
|
+
# [google.longrunning.Operation][google.longrunning.Operation], which allows you to track the operation
|
85
|
+
# status. We recommend intervals of at least 2 seconds with exponential
|
86
|
+
# backoff retry to poll the operation result. The metadata contains the
|
87
|
+
# request to help callers to map responses to requests.
|
88
|
+
rpc :AnalyzeIamPolicyLongrunning, ::Google::Cloud::Asset::V1::AnalyzeIamPolicyLongrunningRequest, ::Google::Longrunning::Operation
|
77
89
|
end
|
78
90
|
|
79
91
|
Stub = Service.rpc_stub_class
|
@@ -3,17 +3,18 @@
|
|
3
3
|
|
4
4
|
require 'google/protobuf'
|
5
5
|
|
6
|
-
require 'google/api/annotations_pb'
|
7
6
|
require 'google/api/resource_pb'
|
8
7
|
require 'google/cloud/orgpolicy/v1/orgpolicy_pb'
|
9
8
|
require 'google/iam/v1/policy_pb'
|
10
9
|
require 'google/identity/accesscontextmanager/v1/access_level_pb'
|
11
10
|
require 'google/identity/accesscontextmanager/v1/access_policy_pb'
|
11
|
+
require 'google/cloud/osconfig/v1/inventory_pb'
|
12
12
|
require 'google/identity/accesscontextmanager/v1/service_perimeter_pb'
|
13
13
|
require 'google/protobuf/any_pb'
|
14
14
|
require 'google/protobuf/struct_pb'
|
15
15
|
require 'google/protobuf/timestamp_pb'
|
16
16
|
require 'google/rpc/code_pb'
|
17
|
+
require 'google/api/annotations_pb'
|
17
18
|
Google::Protobuf::DescriptorPool.generated_pool.build do
|
18
19
|
add_file("google/cloud/asset/v1/assets.proto", :syntax => :proto3) do
|
19
20
|
add_message "google.cloud.asset.v1.TemporalAsset" do
|
@@ -41,6 +42,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
41
42
|
optional :resource, :message, 3, "google.cloud.asset.v1.Resource"
|
42
43
|
optional :iam_policy, :message, 4, "google.iam.v1.Policy"
|
43
44
|
repeated :org_policy, :message, 6, "google.cloud.orgpolicy.v1.Policy"
|
45
|
+
optional :os_inventory, :message, 12, "google.cloud.osconfig.v1.Inventory"
|
44
46
|
repeated :ancestors, :string, 10
|
45
47
|
oneof :access_context_policy do
|
46
48
|
optional :access_policy, :message, 7, "google.identity.accesscontextmanager.v1.AccessPolicy"
|
@@ -80,6 +82,45 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
80
82
|
add_message "google.cloud.asset.v1.IamPolicySearchResult.Explanation.Permissions" do
|
81
83
|
repeated :permissions, :string, 1
|
82
84
|
end
|
85
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisState" do
|
86
|
+
optional :code, :enum, 1, "google.rpc.Code"
|
87
|
+
optional :cause, :string, 2
|
88
|
+
end
|
89
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult" do
|
90
|
+
optional :attached_resource_full_name, :string, 1
|
91
|
+
optional :iam_binding, :message, 2, "google.iam.v1.Binding"
|
92
|
+
repeated :access_control_lists, :message, 3, "google.cloud.asset.v1.IamPolicyAnalysisResult.AccessControlList"
|
93
|
+
optional :identity_list, :message, 4, "google.cloud.asset.v1.IamPolicyAnalysisResult.IdentityList"
|
94
|
+
optional :fully_explored, :bool, 5
|
95
|
+
end
|
96
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.Resource" do
|
97
|
+
optional :full_resource_name, :string, 1
|
98
|
+
optional :analysis_state, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisState"
|
99
|
+
end
|
100
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.Access" do
|
101
|
+
optional :analysis_state, :message, 3, "google.cloud.asset.v1.IamPolicyAnalysisState"
|
102
|
+
oneof :oneof_access do
|
103
|
+
optional :role, :string, 1
|
104
|
+
optional :permission, :string, 2
|
105
|
+
end
|
106
|
+
end
|
107
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.Identity" do
|
108
|
+
optional :name, :string, 1
|
109
|
+
optional :analysis_state, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisState"
|
110
|
+
end
|
111
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.Edge" do
|
112
|
+
optional :source_node, :string, 1
|
113
|
+
optional :target_node, :string, 2
|
114
|
+
end
|
115
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.AccessControlList" do
|
116
|
+
repeated :resources, :message, 1, "google.cloud.asset.v1.IamPolicyAnalysisResult.Resource"
|
117
|
+
repeated :accesses, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisResult.Access"
|
118
|
+
repeated :resource_edges, :message, 3, "google.cloud.asset.v1.IamPolicyAnalysisResult.Edge"
|
119
|
+
end
|
120
|
+
add_message "google.cloud.asset.v1.IamPolicyAnalysisResult.IdentityList" do
|
121
|
+
repeated :identities, :message, 1, "google.cloud.asset.v1.IamPolicyAnalysisResult.Identity"
|
122
|
+
repeated :group_edges, :message, 2, "google.cloud.asset.v1.IamPolicyAnalysisResult.Edge"
|
123
|
+
end
|
83
124
|
end
|
84
125
|
end
|
85
126
|
|
@@ -96,6 +137,14 @@ module Google
|
|
96
137
|
IamPolicySearchResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicySearchResult").msgclass
|
97
138
|
IamPolicySearchResult::Explanation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicySearchResult.Explanation").msgclass
|
98
139
|
IamPolicySearchResult::Explanation::Permissions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicySearchResult.Explanation.Permissions").msgclass
|
140
|
+
IamPolicyAnalysisState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisState").msgclass
|
141
|
+
IamPolicyAnalysisResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisResult").msgclass
|
142
|
+
IamPolicyAnalysisResult::Resource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisResult.Resource").msgclass
|
143
|
+
IamPolicyAnalysisResult::Access = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisResult.Access").msgclass
|
144
|
+
IamPolicyAnalysisResult::Identity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisResult.Identity").msgclass
|
145
|
+
IamPolicyAnalysisResult::Edge = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisResult.Edge").msgclass
|
146
|
+
IamPolicyAnalysisResult::AccessControlList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisResult.AccessControlList").msgclass
|
147
|
+
IamPolicyAnalysisResult::IdentityList = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicyAnalysisResult.IdentityList").msgclass
|
99
148
|
end
|
100
149
|
end
|
101
150
|
end
|
@@ -0,0 +1,108 @@
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
|
+
# source: google/cloud/osconfig/v1/inventory.proto
|
3
|
+
|
4
|
+
require 'google/protobuf'
|
5
|
+
|
6
|
+
require 'google/protobuf/timestamp_pb'
|
7
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
8
|
+
add_file("google/cloud/osconfig/v1/inventory.proto", :syntax => :proto3) do
|
9
|
+
add_message "google.cloud.osconfig.v1.Inventory" do
|
10
|
+
optional :os_info, :message, 1, "google.cloud.osconfig.v1.Inventory.OsInfo"
|
11
|
+
map :items, :string, :message, 2, "google.cloud.osconfig.v1.Inventory.Item"
|
12
|
+
end
|
13
|
+
add_message "google.cloud.osconfig.v1.Inventory.OsInfo" do
|
14
|
+
optional :hostname, :string, 9
|
15
|
+
optional :long_name, :string, 2
|
16
|
+
optional :short_name, :string, 3
|
17
|
+
optional :version, :string, 4
|
18
|
+
optional :architecture, :string, 5
|
19
|
+
optional :kernel_version, :string, 6
|
20
|
+
optional :kernel_release, :string, 7
|
21
|
+
optional :osconfig_agent_version, :string, 8
|
22
|
+
end
|
23
|
+
add_message "google.cloud.osconfig.v1.Inventory.Item" do
|
24
|
+
optional :id, :string, 1
|
25
|
+
optional :origin_type, :enum, 2, "google.cloud.osconfig.v1.Inventory.Item.OriginType"
|
26
|
+
optional :create_time, :message, 8, "google.protobuf.Timestamp"
|
27
|
+
optional :update_time, :message, 9, "google.protobuf.Timestamp"
|
28
|
+
optional :type, :enum, 5, "google.cloud.osconfig.v1.Inventory.Item.Type"
|
29
|
+
oneof :details do
|
30
|
+
optional :installed_package, :message, 6, "google.cloud.osconfig.v1.Inventory.SoftwarePackage"
|
31
|
+
optional :available_package, :message, 7, "google.cloud.osconfig.v1.Inventory.SoftwarePackage"
|
32
|
+
end
|
33
|
+
end
|
34
|
+
add_enum "google.cloud.osconfig.v1.Inventory.Item.OriginType" do
|
35
|
+
value :ORIGIN_TYPE_UNSPECIFIED, 0
|
36
|
+
value :INVENTORY_REPORT, 1
|
37
|
+
end
|
38
|
+
add_enum "google.cloud.osconfig.v1.Inventory.Item.Type" do
|
39
|
+
value :TYPE_UNSPECIFIED, 0
|
40
|
+
value :INSTALLED_PACKAGE, 1
|
41
|
+
value :AVAILABLE_PACKAGE, 2
|
42
|
+
end
|
43
|
+
add_message "google.cloud.osconfig.v1.Inventory.SoftwarePackage" do
|
44
|
+
oneof :details do
|
45
|
+
optional :yum_package, :message, 1, "google.cloud.osconfig.v1.Inventory.VersionedPackage"
|
46
|
+
optional :apt_package, :message, 2, "google.cloud.osconfig.v1.Inventory.VersionedPackage"
|
47
|
+
optional :zypper_package, :message, 3, "google.cloud.osconfig.v1.Inventory.VersionedPackage"
|
48
|
+
optional :googet_package, :message, 4, "google.cloud.osconfig.v1.Inventory.VersionedPackage"
|
49
|
+
optional :zypper_patch, :message, 5, "google.cloud.osconfig.v1.Inventory.ZypperPatch"
|
50
|
+
optional :wua_package, :message, 6, "google.cloud.osconfig.v1.Inventory.WindowsUpdatePackage"
|
51
|
+
optional :qfe_package, :message, 7, "google.cloud.osconfig.v1.Inventory.WindowsQuickFixEngineeringPackage"
|
52
|
+
optional :cos_package, :message, 8, "google.cloud.osconfig.v1.Inventory.VersionedPackage"
|
53
|
+
end
|
54
|
+
end
|
55
|
+
add_message "google.cloud.osconfig.v1.Inventory.VersionedPackage" do
|
56
|
+
optional :package_name, :string, 4
|
57
|
+
optional :architecture, :string, 2
|
58
|
+
optional :version, :string, 3
|
59
|
+
end
|
60
|
+
add_message "google.cloud.osconfig.v1.Inventory.WindowsUpdatePackage" do
|
61
|
+
optional :title, :string, 1
|
62
|
+
optional :description, :string, 2
|
63
|
+
repeated :categories, :message, 3, "google.cloud.osconfig.v1.Inventory.WindowsUpdatePackage.WindowsUpdateCategory"
|
64
|
+
repeated :kb_article_ids, :string, 4
|
65
|
+
optional :support_url, :string, 11
|
66
|
+
repeated :more_info_urls, :string, 5
|
67
|
+
optional :update_id, :string, 6
|
68
|
+
optional :revision_number, :int32, 7
|
69
|
+
optional :last_deployment_change_time, :message, 10, "google.protobuf.Timestamp"
|
70
|
+
end
|
71
|
+
add_message "google.cloud.osconfig.v1.Inventory.WindowsUpdatePackage.WindowsUpdateCategory" do
|
72
|
+
optional :id, :string, 1
|
73
|
+
optional :name, :string, 2
|
74
|
+
end
|
75
|
+
add_message "google.cloud.osconfig.v1.Inventory.ZypperPatch" do
|
76
|
+
optional :patch_name, :string, 5
|
77
|
+
optional :category, :string, 2
|
78
|
+
optional :severity, :string, 3
|
79
|
+
optional :summary, :string, 4
|
80
|
+
end
|
81
|
+
add_message "google.cloud.osconfig.v1.Inventory.WindowsQuickFixEngineeringPackage" do
|
82
|
+
optional :caption, :string, 1
|
83
|
+
optional :description, :string, 2
|
84
|
+
optional :hot_fix_id, :string, 3
|
85
|
+
optional :install_time, :message, 5, "google.protobuf.Timestamp"
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
89
|
+
|
90
|
+
module Google
|
91
|
+
module Cloud
|
92
|
+
module OsConfig
|
93
|
+
module V1
|
94
|
+
Inventory = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.osconfig.v1.Inventory").msgclass
|
95
|
+
Inventory::OsInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.osconfig.v1.Inventory.OsInfo").msgclass
|
96
|
+
Inventory::Item = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.osconfig.v1.Inventory.Item").msgclass
|
97
|
+
Inventory::Item::OriginType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.osconfig.v1.Inventory.Item.OriginType").enummodule
|
98
|
+
Inventory::Item::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.osconfig.v1.Inventory.Item.Type").enummodule
|
99
|
+
Inventory::SoftwarePackage = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.osconfig.v1.Inventory.SoftwarePackage").msgclass
|
100
|
+
Inventory::VersionedPackage = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.osconfig.v1.Inventory.VersionedPackage").msgclass
|
101
|
+
Inventory::WindowsUpdatePackage = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.osconfig.v1.Inventory.WindowsUpdatePackage").msgclass
|
102
|
+
Inventory::WindowsUpdatePackage::WindowsUpdateCategory = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.osconfig.v1.Inventory.WindowsUpdatePackage.WindowsUpdateCategory").msgclass
|
103
|
+
Inventory::ZypperPatch = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.osconfig.v1.Inventory.ZypperPatch").msgclass
|
104
|
+
Inventory::WindowsQuickFixEngineeringPackage = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.osconfig.v1.Inventory.WindowsQuickFixEngineeringPackage").msgclass
|
105
|
+
end
|
106
|
+
end
|
107
|
+
end
|
108
|
+
end
|
@@ -43,12 +43,12 @@ module Google
|
|
43
43
|
#
|
44
44
|
# The ResourceDescriptor Yaml config will look like:
|
45
45
|
#
|
46
|
-
#
|
47
|
-
#
|
48
|
-
#
|
49
|
-
#
|
50
|
-
#
|
51
|
-
#
|
46
|
+
# resources:
|
47
|
+
# - type: "pubsub.googleapis.com/Topic"
|
48
|
+
# name_descriptor:
|
49
|
+
# - pattern: "projects/{project}/topics/{topic}"
|
50
|
+
# parent_type: "cloudresourcemanager.googleapis.com/Project"
|
51
|
+
# parent_name_extractor: "projects/{project}"
|
52
52
|
#
|
53
53
|
# Sometimes, resources have multiple patterns, typically because they can
|
54
54
|
# live under multiple parents.
|
@@ -183,15 +183,24 @@ module Google
|
|
183
183
|
# }
|
184
184
|
# @!attribute [rw] plural
|
185
185
|
# @return [::String]
|
186
|
-
# The plural name used in the resource name, such as
|
187
|
-
# the name of 'projects/\\{project}'
|
188
|
-
#
|
186
|
+
# The plural name used in the resource name and permission names, such as
|
187
|
+
# 'projects' for the resource name of 'projects/\\{project}' and the permission
|
188
|
+
# name of 'cloudresourcemanager.googleapis.com/projects.get'. It is the same
|
189
|
+
# concept of the `plural` field in k8s CRD spec
|
189
190
|
# https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
|
191
|
+
#
|
192
|
+
# Note: The plural form is required even for singleton resources. See
|
193
|
+
# https://aip.dev/156
|
190
194
|
# @!attribute [rw] singular
|
191
195
|
# @return [::String]
|
192
196
|
# The same concept of the `singular` field in k8s CRD spec
|
193
197
|
# https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
|
194
198
|
# Such as "project" for the `resourcemanager.googleapis.com/Project` type.
|
199
|
+
# @!attribute [rw] style
|
200
|
+
# @return [::Array<::Google::Api::ResourceDescriptor::Style>]
|
201
|
+
# Style flag(s) for this resource.
|
202
|
+
# These indicate that a resource is expected to conform to a given
|
203
|
+
# style. See the specific style flags for additional information.
|
195
204
|
class ResourceDescriptor
|
196
205
|
include ::Google::Protobuf::MessageExts
|
197
206
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -211,6 +220,22 @@ module Google
|
|
211
220
|
# that from being necessary once there are multiple patterns.)
|
212
221
|
FUTURE_MULTI_PATTERN = 2
|
213
222
|
end
|
223
|
+
|
224
|
+
# A flag representing a specific style that a resource claims to conform to.
|
225
|
+
module Style
|
226
|
+
# The unspecified value. Do not use.
|
227
|
+
STYLE_UNSPECIFIED = 0
|
228
|
+
|
229
|
+
# This resource is intended to be "declarative-friendly".
|
230
|
+
#
|
231
|
+
# Declarative-friendly resources must be more strictly consistent, and
|
232
|
+
# setting this to true communicates to tools that this resource should
|
233
|
+
# adhere to declarative-friendly expectations.
|
234
|
+
#
|
235
|
+
# Note: This is used by the API linter (linter.aip.dev) to enable
|
236
|
+
# additional checks.
|
237
|
+
DECLARATIVE_FRIENDLY = 1
|
238
|
+
end
|
214
239
|
end
|
215
240
|
|
216
241
|
# Defines a proto annotation that describes a string field that refers to
|
@@ -226,6 +251,17 @@ module Google
|
|
226
251
|
# type: "pubsub.googleapis.com/Topic"
|
227
252
|
# }];
|
228
253
|
# }
|
254
|
+
#
|
255
|
+
# Occasionally, a field may reference an arbitrary resource. In this case,
|
256
|
+
# APIs use the special value * in their resource reference.
|
257
|
+
#
|
258
|
+
# Example:
|
259
|
+
#
|
260
|
+
# message GetIamPolicyRequest {
|
261
|
+
# string resource = 2 [(google.api.resource_reference) = {
|
262
|
+
# type: "*"
|
263
|
+
# }];
|
264
|
+
# }
|
229
265
|
# @!attribute [rw] child_type
|
230
266
|
# @return [::String]
|
231
267
|
# The resource type of a child collection that the annotated field
|
@@ -234,11 +270,11 @@ module Google
|
|
234
270
|
#
|
235
271
|
# Example:
|
236
272
|
#
|
237
|
-
#
|
238
|
-
#
|
239
|
-
#
|
240
|
-
#
|
241
|
-
#
|
273
|
+
# message ListLogEntriesRequest {
|
274
|
+
# string parent = 1 [(google.api.resource_reference) = {
|
275
|
+
# child_type: "logging.googleapis.com/LogEntry"
|
276
|
+
# };
|
277
|
+
# }
|
242
278
|
class ResourceReference
|
243
279
|
include ::Google::Protobuf::MessageExts
|
244
280
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|