google-cloud-asset-v1 0.5.3 → 0.9.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/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
|