google-cloud-asset-v1 0.2.2 → 0.4.2
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/AUTHENTICATION.md +6 -6
- data/README.md +1 -1
- data/lib/google/cloud/asset/v1.rb +1 -1
- data/lib/google/cloud/asset/v1/asset_service.rb +1 -1
- data/lib/google/cloud/asset/v1/asset_service/client.rb +449 -170
- data/lib/google/cloud/asset/v1/asset_service/credentials.rb +1 -1
- data/lib/google/cloud/asset/v1/asset_service/operations.rb +108 -102
- data/lib/google/cloud/asset/v1/asset_service/paths.rb +5 -5
- data/lib/google/cloud/asset/v1/asset_service_pb.rb +26 -0
- data/lib/google/cloud/asset/v1/asset_service_services_pb.rb +13 -2
- data/lib/google/cloud/asset/v1/assets_pb.rb +29 -1
- data/lib/google/cloud/asset/v1/version.rb +1 -1
- data/proto_docs/google/api/resource.rb +12 -12
- data/proto_docs/google/cloud/asset/v1/asset_service.rb +235 -74
- data/proto_docs/google/cloud/asset/v1/assets.rb +225 -36
- data/proto_docs/google/cloud/orgpolicy/v1/orgpolicy.rb +21 -21
- data/proto_docs/google/iam/v1/policy.rb +26 -26
- data/proto_docs/google/identity/accesscontextmanager/v1/access_level.rb +37 -37
- data/proto_docs/google/identity/accesscontextmanager/v1/access_policy.rb +8 -8
- data/proto_docs/google/identity/accesscontextmanager/v1/service_perimeter.rb +21 -21
- data/proto_docs/google/longrunning/operations.rb +30 -30
- data/proto_docs/google/protobuf/any.rb +4 -4
- data/proto_docs/google/protobuf/empty.rb +2 -2
- data/proto_docs/google/protobuf/field_mask.rb +3 -3
- data/proto_docs/google/protobuf/struct.rb +18 -18
- data/proto_docs/google/protobuf/timestamp.rb +4 -4
- data/proto_docs/google/rpc/status.rb +6 -6
- data/proto_docs/google/type/expr.rb +6 -6
- metadata +32 -5
- data/lib/google/cloud/common_resources_pb.rb +0 -15
@@ -51,28 +51,28 @@ module Google
|
|
51
51
|
# @param organization [String]
|
52
52
|
# @param feed [String]
|
53
53
|
#
|
54
|
-
# @return [String]
|
54
|
+
# @return [::String]
|
55
55
|
def feed_path **args
|
56
56
|
resources = {
|
57
57
|
"feed:project" => (proc do |project:, feed:|
|
58
|
-
raise ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
58
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
59
59
|
|
60
60
|
"projects/#{project}/feeds/#{feed}"
|
61
61
|
end),
|
62
62
|
"feed:folder" => (proc do |folder:, feed:|
|
63
|
-
raise ArgumentError, "folder cannot contain /" if folder.to_s.include? "/"
|
63
|
+
raise ::ArgumentError, "folder cannot contain /" if folder.to_s.include? "/"
|
64
64
|
|
65
65
|
"folders/#{folder}/feeds/#{feed}"
|
66
66
|
end),
|
67
67
|
"feed:organization" => (proc do |organization:, feed:|
|
68
|
-
raise ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
|
68
|
+
raise ::ArgumentError, "organization cannot contain /" if organization.to_s.include? "/"
|
69
69
|
|
70
70
|
"organizations/#{organization}/feeds/#{feed}"
|
71
71
|
end)
|
72
72
|
}
|
73
73
|
|
74
74
|
resource = resources[args.keys.sort.join(":")]
|
75
|
-
raise ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
75
|
+
raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
|
76
76
|
resource.call(**args)
|
77
77
|
end
|
78
78
|
|
@@ -88,6 +88,28 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
88
88
|
optional :content_type, :enum, 4, "google.cloud.asset.v1.ContentType"
|
89
89
|
optional :feed_output_config, :message, 5, "google.cloud.asset.v1.FeedOutputConfig"
|
90
90
|
end
|
91
|
+
add_message "google.cloud.asset.v1.SearchAllResourcesRequest" do
|
92
|
+
optional :scope, :string, 1
|
93
|
+
optional :query, :string, 2
|
94
|
+
repeated :asset_types, :string, 3
|
95
|
+
optional :page_size, :int32, 4
|
96
|
+
optional :page_token, :string, 5
|
97
|
+
optional :order_by, :string, 6
|
98
|
+
end
|
99
|
+
add_message "google.cloud.asset.v1.SearchAllResourcesResponse" do
|
100
|
+
repeated :results, :message, 1, "google.cloud.asset.v1.ResourceSearchResult"
|
101
|
+
optional :next_page_token, :string, 2
|
102
|
+
end
|
103
|
+
add_message "google.cloud.asset.v1.SearchAllIamPoliciesRequest" do
|
104
|
+
optional :scope, :string, 1
|
105
|
+
optional :query, :string, 2
|
106
|
+
optional :page_size, :int32, 3
|
107
|
+
optional :page_token, :string, 4
|
108
|
+
end
|
109
|
+
add_message "google.cloud.asset.v1.SearchAllIamPoliciesResponse" do
|
110
|
+
repeated :results, :message, 1, "google.cloud.asset.v1.IamPolicySearchResult"
|
111
|
+
optional :next_page_token, :string, 2
|
112
|
+
end
|
91
113
|
add_enum "google.cloud.asset.v1.ContentType" do
|
92
114
|
value :CONTENT_TYPE_UNSPECIFIED, 0
|
93
115
|
value :RESOURCE, 1
|
@@ -118,6 +140,10 @@ module Google
|
|
118
140
|
PubsubDestination = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.PubsubDestination").msgclass
|
119
141
|
FeedOutputConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.FeedOutputConfig").msgclass
|
120
142
|
Feed = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.Feed").msgclass
|
143
|
+
SearchAllResourcesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.SearchAllResourcesRequest").msgclass
|
144
|
+
SearchAllResourcesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.SearchAllResourcesResponse").msgclass
|
145
|
+
SearchAllIamPoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.SearchAllIamPoliciesRequest").msgclass
|
146
|
+
SearchAllIamPoliciesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.SearchAllIamPoliciesResponse").msgclass
|
121
147
|
ContentType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.ContentType").enummodule
|
122
148
|
end
|
123
149
|
end
|
@@ -35,8 +35,9 @@ module Google
|
|
35
35
|
|
36
36
|
# Exports assets with time and resource types to a given Cloud Storage
|
37
37
|
# location. The output format is newline-delimited JSON.
|
38
|
-
# This API implements the
|
39
|
-
#
|
38
|
+
# This API implements the
|
39
|
+
# [google.longrunning.Operation][google.longrunning.Operation] API allowing
|
40
|
+
# you to keep track of the export.
|
40
41
|
rpc :ExportAssets, ExportAssetsRequest, Google::Longrunning::Operation
|
41
42
|
# Batch gets the update history of assets that overlap a time window.
|
42
43
|
# For RESOURCE content, this API outputs history with asset in both
|
@@ -57,6 +58,16 @@ module Google
|
|
57
58
|
rpc :UpdateFeed, UpdateFeedRequest, Feed
|
58
59
|
# Deletes an asset feed.
|
59
60
|
rpc :DeleteFeed, DeleteFeedRequest, Google::Protobuf::Empty
|
61
|
+
# Searches all the resources within the given accessible scope (e.g., a
|
62
|
+
# project, a folder or an organization). Callers should have
|
63
|
+
# cloud.assets.SearchAllResources permission upon the requested scope,
|
64
|
+
# otherwise the request will be rejected.
|
65
|
+
rpc :SearchAllResources, SearchAllResourcesRequest, SearchAllResourcesResponse
|
66
|
+
# Searches all the IAM policies within the given accessible scope (e.g., a
|
67
|
+
# project, a folder or an organization). Callers should have
|
68
|
+
# cloud.assets.SearchAllIamPolicies permission upon the requested scope,
|
69
|
+
# otherwise the request will be rejected.
|
70
|
+
rpc :SearchAllIamPolicies, SearchAllIamPoliciesRequest, SearchAllIamPoliciesResponse
|
60
71
|
end
|
61
72
|
|
62
73
|
Stub = Service.rpc_stub_class
|
@@ -3,6 +3,7 @@
|
|
3
3
|
|
4
4
|
require 'google/protobuf'
|
5
5
|
|
6
|
+
require 'google/api/annotations_pb'
|
6
7
|
require 'google/api/resource_pb'
|
7
8
|
require 'google/cloud/orgpolicy/v1/orgpolicy_pb'
|
8
9
|
require 'google/iam/v1/policy_pb'
|
@@ -12,7 +13,6 @@ require 'google/identity/accesscontextmanager/v1/service_perimeter_pb'
|
|
12
13
|
require 'google/protobuf/any_pb'
|
13
14
|
require 'google/protobuf/struct_pb'
|
14
15
|
require 'google/protobuf/timestamp_pb'
|
15
|
-
require 'google/api/annotations_pb'
|
16
16
|
Google::Protobuf::DescriptorPool.generated_pool.build do
|
17
17
|
add_file("google/cloud/asset/v1/assets.proto", :syntax => :proto3) do
|
18
18
|
add_message "google.cloud.asset.v1.TemporalAsset" do
|
@@ -44,6 +44,30 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
44
44
|
optional :resource_url, :string, 4
|
45
45
|
optional :parent, :string, 5
|
46
46
|
optional :data, :message, 6, "google.protobuf.Struct"
|
47
|
+
optional :location, :string, 8
|
48
|
+
end
|
49
|
+
add_message "google.cloud.asset.v1.ResourceSearchResult" do
|
50
|
+
optional :name, :string, 1
|
51
|
+
optional :asset_type, :string, 2
|
52
|
+
optional :project, :string, 3
|
53
|
+
optional :display_name, :string, 4
|
54
|
+
optional :description, :string, 5
|
55
|
+
optional :location, :string, 6
|
56
|
+
map :labels, :string, :string, 7
|
57
|
+
repeated :network_tags, :string, 8
|
58
|
+
optional :additional_attributes, :message, 9, "google.protobuf.Struct"
|
59
|
+
end
|
60
|
+
add_message "google.cloud.asset.v1.IamPolicySearchResult" do
|
61
|
+
optional :resource, :string, 1
|
62
|
+
optional :project, :string, 2
|
63
|
+
optional :policy, :message, 3, "google.iam.v1.Policy"
|
64
|
+
optional :explanation, :message, 4, "google.cloud.asset.v1.IamPolicySearchResult.Explanation"
|
65
|
+
end
|
66
|
+
add_message "google.cloud.asset.v1.IamPolicySearchResult.Explanation" do
|
67
|
+
map :matched_permissions, :string, :message, 1, "google.cloud.asset.v1.IamPolicySearchResult.Explanation.Permissions"
|
68
|
+
end
|
69
|
+
add_message "google.cloud.asset.v1.IamPolicySearchResult.Explanation.Permissions" do
|
70
|
+
repeated :permissions, :string, 1
|
47
71
|
end
|
48
72
|
end
|
49
73
|
end
|
@@ -56,6 +80,10 @@ module Google
|
|
56
80
|
TimeWindow = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.TimeWindow").msgclass
|
57
81
|
Asset = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.Asset").msgclass
|
58
82
|
Resource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.Resource").msgclass
|
83
|
+
ResourceSearchResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.ResourceSearchResult").msgclass
|
84
|
+
IamPolicySearchResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicySearchResult").msgclass
|
85
|
+
IamPolicySearchResult::Explanation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicySearchResult.Explanation").msgclass
|
86
|
+
IamPolicySearchResult::Explanation::Permissions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.IamPolicySearchResult.Explanation.Permissions").msgclass
|
59
87
|
end
|
60
88
|
end
|
61
89
|
end
|
@@ -128,7 +128,7 @@ module Google
|
|
128
128
|
# - pattern: "shelves/{shelf}"
|
129
129
|
# parent_type: "cloudresourcemanager.googleapis.com/Folder"
|
130
130
|
# @!attribute [rw] type
|
131
|
-
# @return [String]
|
131
|
+
# @return [::String]
|
132
132
|
# The resource type. It must be in the format of
|
133
133
|
# \\{service_name}/\\{resource_type_kind}. The `resource_type_kind` must be
|
134
134
|
# singular and must not include version numbers.
|
@@ -140,7 +140,7 @@ module Google
|
|
140
140
|
# should use PascalCase (UpperCamelCase). The maximum number of
|
141
141
|
# characters allowed for the `resource_type_kind` is 100.
|
142
142
|
# @!attribute [rw] pattern
|
143
|
-
# @return [Array
|
143
|
+
# @return [::Array<::String>]
|
144
144
|
# Optional. The relative resource name pattern associated with this resource
|
145
145
|
# type. The DNS prefix of the full resource name shouldn't be specified here.
|
146
146
|
#
|
@@ -161,11 +161,11 @@ module Google
|
|
161
161
|
# the same component name (e.g. "project") refers to IDs of the same
|
162
162
|
# type of resource.
|
163
163
|
# @!attribute [rw] name_field
|
164
|
-
# @return [String]
|
164
|
+
# @return [::String]
|
165
165
|
# Optional. The field on the resource that designates the resource name
|
166
166
|
# field. If omitted, this is assumed to be "name".
|
167
167
|
# @!attribute [rw] history
|
168
|
-
# @return [Google::Api::ResourceDescriptor::History]
|
168
|
+
# @return [::Google::Api::ResourceDescriptor::History]
|
169
169
|
# Optional. The historical or future-looking state of the resource pattern.
|
170
170
|
#
|
171
171
|
# Example:
|
@@ -182,19 +182,19 @@ module Google
|
|
182
182
|
# };
|
183
183
|
# }
|
184
184
|
# @!attribute [rw] plural
|
185
|
-
# @return [String]
|
185
|
+
# @return [::String]
|
186
186
|
# The plural name used in the resource name, such as 'projects' for
|
187
187
|
# the name of 'projects/\\{project}'. It is the same concept of the `plural`
|
188
188
|
# field in k8s CRD spec
|
189
189
|
# https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
|
190
190
|
# @!attribute [rw] singular
|
191
|
-
# @return [String]
|
191
|
+
# @return [::String]
|
192
192
|
# The same concept of the `singular` field in k8s CRD spec
|
193
193
|
# https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
|
194
194
|
# Such as "project" for the `resourcemanager.googleapis.com/Project` type.
|
195
195
|
class ResourceDescriptor
|
196
|
-
include Google::Protobuf::MessageExts
|
197
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
196
|
+
include ::Google::Protobuf::MessageExts
|
197
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
198
198
|
|
199
199
|
# A description of the historical or future-looking state of the
|
200
200
|
# resource pattern.
|
@@ -216,7 +216,7 @@ module Google
|
|
216
216
|
# Defines a proto annotation that describes a string field that refers to
|
217
217
|
# an API resource.
|
218
218
|
# @!attribute [rw] type
|
219
|
-
# @return [String]
|
219
|
+
# @return [::String]
|
220
220
|
# The resource type that the annotated field references.
|
221
221
|
#
|
222
222
|
# Example:
|
@@ -227,7 +227,7 @@ module Google
|
|
227
227
|
# }];
|
228
228
|
# }
|
229
229
|
# @!attribute [rw] child_type
|
230
|
-
# @return [String]
|
230
|
+
# @return [::String]
|
231
231
|
# The resource type of a child collection that the annotated field
|
232
232
|
# references. This is useful for annotating the `parent` field that
|
233
233
|
# doesn't have a fixed resource type.
|
@@ -240,8 +240,8 @@ module Google
|
|
240
240
|
# };
|
241
241
|
# }
|
242
242
|
class ResourceReference
|
243
|
-
include Google::Protobuf::MessageExts
|
244
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
243
|
+
include ::Google::Protobuf::MessageExts
|
244
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
245
245
|
end
|
246
246
|
end
|
247
247
|
end
|
@@ -23,61 +23,63 @@ module Google
|
|
23
23
|
module V1
|
24
24
|
# Export asset request.
|
25
25
|
# @!attribute [rw] parent
|
26
|
-
# @return [String]
|
26
|
+
# @return [::String]
|
27
27
|
# Required. The relative name of the root asset. This can only be an
|
28
28
|
# organization number (such as "organizations/123"), a project ID (such as
|
29
29
|
# "projects/my-project-id"), or a project number (such as "projects/12345"),
|
30
30
|
# or a folder number (such as "folders/123").
|
31
31
|
# @!attribute [rw] read_time
|
32
|
-
# @return [Google::Protobuf::Timestamp]
|
32
|
+
# @return [::Google::Protobuf::Timestamp]
|
33
33
|
# Timestamp to take an asset snapshot. This can only be set to a timestamp
|
34
34
|
# between the current time and the current time minus 35 days (inclusive).
|
35
35
|
# If not specified, the current time will be used. Due to delays in resource
|
36
36
|
# data collection and indexing, there is a volatile window during which
|
37
37
|
# running the same query may get different results.
|
38
38
|
# @!attribute [rw] asset_types
|
39
|
-
# @return [Array
|
39
|
+
# @return [::Array<::String>]
|
40
40
|
# A list of asset types of which to take a snapshot for. For example:
|
41
41
|
# "compute.googleapis.com/Disk". If specified, only matching assets will be
|
42
42
|
# returned. See [Introduction to Cloud Asset
|
43
43
|
# Inventory](https://cloud.google.com/asset-inventory/docs/overview)
|
44
44
|
# for all supported asset types.
|
45
45
|
# @!attribute [rw] content_type
|
46
|
-
# @return [Google::Cloud::Asset::V1::ContentType]
|
46
|
+
# @return [::Google::Cloud::Asset::V1::ContentType]
|
47
47
|
# Asset content type. If not specified, no content but the asset name will be
|
48
48
|
# returned.
|
49
49
|
# @!attribute [rw] output_config
|
50
|
-
# @return [Google::Cloud::Asset::V1::OutputConfig]
|
50
|
+
# @return [::Google::Cloud::Asset::V1::OutputConfig]
|
51
51
|
# Required. Output configuration indicating where the results will be output
|
52
52
|
# to. All results will be in newline delimited JSON format.
|
53
53
|
class ExportAssetsRequest
|
54
|
-
include Google::Protobuf::MessageExts
|
55
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
54
|
+
include ::Google::Protobuf::MessageExts
|
55
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
56
56
|
end
|
57
57
|
|
58
58
|
# The export asset response. This message is returned by the
|
59
|
-
# google.longrunning.Operations.GetOperation
|
60
|
-
#
|
59
|
+
# google.longrunning.Operations.GetOperation
|
60
|
+
# method in the returned
|
61
|
+
# {::Google::Longrunning::Operation#response google.longrunning.Operation.response}
|
62
|
+
# field.
|
61
63
|
# @!attribute [rw] read_time
|
62
|
-
# @return [Google::Protobuf::Timestamp]
|
64
|
+
# @return [::Google::Protobuf::Timestamp]
|
63
65
|
# Time the snapshot was taken.
|
64
66
|
# @!attribute [rw] output_config
|
65
|
-
# @return [Google::Cloud::Asset::V1::OutputConfig]
|
67
|
+
# @return [::Google::Cloud::Asset::V1::OutputConfig]
|
66
68
|
# Output configuration indicating where the results were output to.
|
67
69
|
# All results are in JSON format.
|
68
70
|
class ExportAssetsResponse
|
69
|
-
include Google::Protobuf::MessageExts
|
70
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
71
|
+
include ::Google::Protobuf::MessageExts
|
72
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
71
73
|
end
|
72
74
|
|
73
75
|
# Batch get assets history request.
|
74
76
|
# @!attribute [rw] parent
|
75
|
-
# @return [String]
|
77
|
+
# @return [::String]
|
76
78
|
# Required. The relative name of the root asset. It can only be an
|
77
79
|
# organization number (such as "organizations/123"), a project ID (such as
|
78
80
|
# "projects/my-project-id")", or a project number (such as "projects/12345").
|
79
81
|
# @!attribute [rw] asset_names
|
80
|
-
# @return [Array
|
82
|
+
# @return [::Array<::String>]
|
81
83
|
# A list of the full names of the assets. For example:
|
82
84
|
# `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.
|
83
85
|
# See [Resource
|
@@ -89,10 +91,10 @@ module Google
|
|
89
91
|
# The request becomes a no-op if the asset name list is empty, and the max
|
90
92
|
# size of the asset name list is 100 in one request.
|
91
93
|
# @!attribute [rw] content_type
|
92
|
-
# @return [Google::Cloud::Asset::V1::ContentType]
|
94
|
+
# @return [::Google::Cloud::Asset::V1::ContentType]
|
93
95
|
# Optional. The content type.
|
94
96
|
# @!attribute [rw] read_time_window
|
95
|
-
# @return [Google::Cloud::Asset::V1::TimeWindow]
|
97
|
+
# @return [::Google::Cloud::Asset::V1::TimeWindow]
|
96
98
|
# Optional. The time window for the asset history. Both start_time and
|
97
99
|
# end_time are optional and if set, it must be after the current time minus
|
98
100
|
# 35 days. If end_time is not set, it is default to current timestamp.
|
@@ -100,128 +102,127 @@ module Google
|
|
100
102
|
# returned. The returned results contain all temporal assets whose time
|
101
103
|
# window overlap with read_time_window.
|
102
104
|
class BatchGetAssetsHistoryRequest
|
103
|
-
include Google::Protobuf::MessageExts
|
104
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
105
|
+
include ::Google::Protobuf::MessageExts
|
106
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
105
107
|
end
|
106
108
|
|
107
109
|
# Batch get assets history response.
|
108
110
|
# @!attribute [rw] assets
|
109
|
-
# @return [Array
|
111
|
+
# @return [::Array<::Google::Cloud::Asset::V1::TemporalAsset>]
|
110
112
|
# A list of assets with valid time windows.
|
111
113
|
class BatchGetAssetsHistoryResponse
|
112
|
-
include Google::Protobuf::MessageExts
|
113
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
114
|
+
include ::Google::Protobuf::MessageExts
|
115
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
114
116
|
end
|
115
117
|
|
116
118
|
# Create asset feed request.
|
117
119
|
# @!attribute [rw] parent
|
118
|
-
# @return [String]
|
120
|
+
# @return [::String]
|
119
121
|
# Required. The name of the project/folder/organization where this feed
|
120
122
|
# should be created in. It can only be an organization number (such as
|
121
123
|
# "organizations/123"), a folder number (such as "folders/123"), a project ID
|
122
124
|
# (such as "projects/my-project-id")", or a project number (such as
|
123
125
|
# "projects/12345").
|
124
126
|
# @!attribute [rw] feed_id
|
125
|
-
# @return [String]
|
127
|
+
# @return [::String]
|
126
128
|
# Required. This is the client-assigned asset feed identifier and it needs to
|
127
129
|
# be unique under a specific parent project/folder/organization.
|
128
130
|
# @!attribute [rw] feed
|
129
|
-
# @return [Google::Cloud::Asset::V1::Feed]
|
130
|
-
# Required. The feed details. The field `name` must be empty and it will be
|
131
|
-
# in the format of:
|
132
|
-
# projects/project_number/feeds/feed_id
|
131
|
+
# @return [::Google::Cloud::Asset::V1::Feed]
|
132
|
+
# Required. The feed details. The field `name` must be empty and it will be
|
133
|
+
# generated in the format of: projects/project_number/feeds/feed_id
|
133
134
|
# folders/folder_number/feeds/feed_id
|
134
135
|
# organizations/organization_number/feeds/feed_id
|
135
136
|
class CreateFeedRequest
|
136
|
-
include Google::Protobuf::MessageExts
|
137
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
137
|
+
include ::Google::Protobuf::MessageExts
|
138
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
138
139
|
end
|
139
140
|
|
140
141
|
# Get asset feed request.
|
141
142
|
# @!attribute [rw] name
|
142
|
-
# @return [String]
|
143
|
+
# @return [::String]
|
143
144
|
# Required. The name of the Feed and it must be in the format of:
|
144
145
|
# projects/project_number/feeds/feed_id
|
145
146
|
# folders/folder_number/feeds/feed_id
|
146
147
|
# organizations/organization_number/feeds/feed_id
|
147
148
|
class GetFeedRequest
|
148
|
-
include Google::Protobuf::MessageExts
|
149
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
149
|
+
include ::Google::Protobuf::MessageExts
|
150
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
150
151
|
end
|
151
152
|
|
152
153
|
# List asset feeds request.
|
153
154
|
# @!attribute [rw] parent
|
154
|
-
# @return [String]
|
155
|
+
# @return [::String]
|
155
156
|
# Required. The parent project/folder/organization whose feeds are to be
|
156
157
|
# listed. It can only be using project/folder/organization number (such as
|
157
158
|
# "folders/12345")", or a project ID (such as "projects/my-project-id").
|
158
159
|
class ListFeedsRequest
|
159
|
-
include Google::Protobuf::MessageExts
|
160
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
160
|
+
include ::Google::Protobuf::MessageExts
|
161
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
161
162
|
end
|
162
163
|
|
163
164
|
# @!attribute [rw] feeds
|
164
|
-
# @return [Array
|
165
|
+
# @return [::Array<::Google::Cloud::Asset::V1::Feed>]
|
165
166
|
# A list of feeds.
|
166
167
|
class ListFeedsResponse
|
167
|
-
include Google::Protobuf::MessageExts
|
168
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
168
|
+
include ::Google::Protobuf::MessageExts
|
169
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
169
170
|
end
|
170
171
|
|
171
172
|
# Update asset feed request.
|
172
173
|
# @!attribute [rw] feed
|
173
|
-
# @return [Google::Cloud::Asset::V1::Feed]
|
174
|
-
# Required. The new values of feed details. It must match an existing feed
|
175
|
-
# field `name` must be in the format of:
|
174
|
+
# @return [::Google::Cloud::Asset::V1::Feed]
|
175
|
+
# Required. The new values of feed details. It must match an existing feed
|
176
|
+
# and the field `name` must be in the format of:
|
176
177
|
# projects/project_number/feeds/feed_id or
|
177
178
|
# folders/folder_number/feeds/feed_id or
|
178
179
|
# organizations/organization_number/feeds/feed_id.
|
179
180
|
# @!attribute [rw] update_mask
|
180
|
-
# @return [Google::Protobuf::FieldMask]
|
181
|
+
# @return [::Google::Protobuf::FieldMask]
|
181
182
|
# Required. Only updates the `feed` fields indicated by this mask.
|
182
183
|
# The field mask must not be empty, and it must not contain fields that
|
183
184
|
# are immutable or only set by the server.
|
184
185
|
class UpdateFeedRequest
|
185
|
-
include Google::Protobuf::MessageExts
|
186
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
186
|
+
include ::Google::Protobuf::MessageExts
|
187
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
187
188
|
end
|
188
189
|
|
189
190
|
# @!attribute [rw] name
|
190
|
-
# @return [String]
|
191
|
+
# @return [::String]
|
191
192
|
# Required. The name of the feed and it must be in the format of:
|
192
193
|
# projects/project_number/feeds/feed_id
|
193
194
|
# folders/folder_number/feeds/feed_id
|
194
195
|
# organizations/organization_number/feeds/feed_id
|
195
196
|
class DeleteFeedRequest
|
196
|
-
include Google::Protobuf::MessageExts
|
197
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
197
|
+
include ::Google::Protobuf::MessageExts
|
198
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
198
199
|
end
|
199
200
|
|
200
201
|
# Output configuration for export assets destination.
|
201
202
|
# @!attribute [rw] gcs_destination
|
202
|
-
# @return [Google::Cloud::Asset::V1::GcsDestination]
|
203
|
+
# @return [::Google::Cloud::Asset::V1::GcsDestination]
|
203
204
|
# Destination on Cloud Storage.
|
204
205
|
# @!attribute [rw] bigquery_destination
|
205
|
-
# @return [Google::Cloud::Asset::V1::BigQueryDestination]
|
206
|
+
# @return [::Google::Cloud::Asset::V1::BigQueryDestination]
|
206
207
|
# Destination on BigQuery. The output table stores the fields in asset
|
207
208
|
# proto as columns in BigQuery. The resource/iam_policy field is converted
|
208
209
|
# to a record with each field to a column, except metadata to a single JSON
|
209
210
|
# string.
|
210
211
|
class OutputConfig
|
211
|
-
include Google::Protobuf::MessageExts
|
212
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
212
|
+
include ::Google::Protobuf::MessageExts
|
213
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
213
214
|
end
|
214
215
|
|
215
216
|
# A Cloud Storage location.
|
216
217
|
# @!attribute [rw] uri
|
217
|
-
# @return [String]
|
218
|
+
# @return [::String]
|
218
219
|
# The uri of the Cloud Storage object. It's the same uri that is used by
|
219
220
|
# gsutil. For example: "gs://bucket_name/object_name". See [Viewing and
|
220
221
|
# Editing Object
|
221
222
|
# Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata)
|
222
223
|
# for more information.
|
223
224
|
# @!attribute [rw] uri_prefix
|
224
|
-
# @return [String]
|
225
|
+
# @return [::String]
|
225
226
|
# The uri prefix of all generated Cloud Storage objects. For example:
|
226
227
|
# "gs://bucket_name/object_name_prefix". Each object uri is in format:
|
227
228
|
# "gs://bucket_name/object_name_prefix/<asset type>/<shard number> and only
|
@@ -232,50 +233,50 @@ module Google
|
|
232
233
|
# returned if file with the same name "gs://bucket_name/object_name_prefix"
|
233
234
|
# already exists.
|
234
235
|
class GcsDestination
|
235
|
-
include Google::Protobuf::MessageExts
|
236
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
236
|
+
include ::Google::Protobuf::MessageExts
|
237
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
237
238
|
end
|
238
239
|
|
239
240
|
# A BigQuery destination.
|
240
241
|
# @!attribute [rw] dataset
|
241
|
-
# @return [String]
|
242
|
+
# @return [::String]
|
242
243
|
# Required. The BigQuery dataset in format
|
243
244
|
# "projects/projectId/datasets/datasetId", to which the snapshot result
|
244
245
|
# should be exported. If this dataset does not exist, the export call returns
|
245
246
|
# an INVALID_ARGUMENT error.
|
246
247
|
# @!attribute [rw] table
|
247
|
-
# @return [String]
|
248
|
+
# @return [::String]
|
248
249
|
# Required. The BigQuery table to which the snapshot result should be
|
249
250
|
# written. If this table does not exist, a new table with the given name
|
250
251
|
# will be created.
|
251
252
|
# @!attribute [rw] force
|
252
|
-
# @return [Boolean]
|
253
|
+
# @return [::Boolean]
|
253
254
|
# If the destination table already exists and this flag is `TRUE`, the
|
254
255
|
# table will be overwritten by the contents of assets snapshot. If the flag
|
255
256
|
# is `FALSE` or unset and the destination table already exists, the export
|
256
257
|
# call returns an INVALID_ARGUMEMT error.
|
257
258
|
class BigQueryDestination
|
258
|
-
include Google::Protobuf::MessageExts
|
259
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
259
|
+
include ::Google::Protobuf::MessageExts
|
260
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
260
261
|
end
|
261
262
|
|
262
263
|
# A Pub/Sub destination.
|
263
264
|
# @!attribute [rw] topic
|
264
|
-
# @return [String]
|
265
|
+
# @return [::String]
|
265
266
|
# The name of the Pub/Sub topic to publish to.
|
266
267
|
# For example: `projects/PROJECT_ID/topics/TOPIC_ID`.
|
267
268
|
class PubsubDestination
|
268
|
-
include Google::Protobuf::MessageExts
|
269
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
269
|
+
include ::Google::Protobuf::MessageExts
|
270
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
270
271
|
end
|
271
272
|
|
272
273
|
# Output configuration for asset feed destination.
|
273
274
|
# @!attribute [rw] pubsub_destination
|
274
|
-
# @return [Google::Cloud::Asset::V1::PubsubDestination]
|
275
|
+
# @return [::Google::Cloud::Asset::V1::PubsubDestination]
|
275
276
|
# Destination on Pub/Sub.
|
276
277
|
class FeedOutputConfig
|
277
|
-
include Google::Protobuf::MessageExts
|
278
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
278
|
+
include ::Google::Protobuf::MessageExts
|
279
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
279
280
|
end
|
280
281
|
|
281
282
|
# An asset feed used to export asset updates to a destinations.
|
@@ -284,7 +285,7 @@ module Google
|
|
284
285
|
# folder. Supported destinations are:
|
285
286
|
# Pub/Sub topics.
|
286
287
|
# @!attribute [rw] name
|
287
|
-
# @return [String]
|
288
|
+
# @return [::String]
|
288
289
|
# Required. The format will be
|
289
290
|
# projects/\\{project_number}/feeds/\\{client-assigned_feed_identifier} or
|
290
291
|
# folders/\\{folder_number}/feeds/\\{client-assigned_feed_identifier} or
|
@@ -293,7 +294,7 @@ module Google
|
|
293
294
|
# The client-assigned feed identifier must be unique within the parent
|
294
295
|
# project/folder/organization.
|
295
296
|
# @!attribute [rw] asset_names
|
296
|
-
# @return [Array
|
297
|
+
# @return [::Array<::String>]
|
297
298
|
# A list of the full names of the assets to receive updates. You must specify
|
298
299
|
# either or both of asset_names and asset_types. Only asset updates matching
|
299
300
|
# specified asset_names and asset_types are exported to the feed. For
|
@@ -303,7 +304,7 @@ module Google
|
|
303
304
|
# Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
|
304
305
|
# for more info.
|
305
306
|
# @!attribute [rw] asset_types
|
306
|
-
# @return [Array
|
307
|
+
# @return [::Array<::String>]
|
307
308
|
# A list of types of the assets to receive updates. You must specify either
|
308
309
|
# or both of asset_names and asset_types. Only asset updates matching
|
309
310
|
# specified asset_names and asset_types are exported to the feed.
|
@@ -313,16 +314,176 @@ module Google
|
|
313
314
|
# topic](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
|
314
315
|
# for a list of all supported asset types.
|
315
316
|
# @!attribute [rw] content_type
|
316
|
-
# @return [Google::Cloud::Asset::V1::ContentType]
|
317
|
+
# @return [::Google::Cloud::Asset::V1::ContentType]
|
317
318
|
# Asset content type. If not specified, no content but the asset name and
|
318
319
|
# type will be returned.
|
319
320
|
# @!attribute [rw] feed_output_config
|
320
|
-
# @return [Google::Cloud::Asset::V1::FeedOutputConfig]
|
321
|
+
# @return [::Google::Cloud::Asset::V1::FeedOutputConfig]
|
321
322
|
# Required. Feed output configuration defining where the asset updates are
|
322
323
|
# published to.
|
323
324
|
class Feed
|
324
|
-
include Google::Protobuf::MessageExts
|
325
|
-
extend Google::Protobuf::MessageExts::ClassMethods
|
325
|
+
include ::Google::Protobuf::MessageExts
|
326
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
327
|
+
end
|
328
|
+
|
329
|
+
# Search all resources request.
|
330
|
+
# @!attribute [rw] scope
|
331
|
+
# @return [::String]
|
332
|
+
# Required. A scope can be a project, a folder or an organization. The search
|
333
|
+
# is limited to the resources within the `scope`.
|
334
|
+
#
|
335
|
+
# The allowed values are:
|
336
|
+
#
|
337
|
+
# * projects/\\{PROJECT_ID}
|
338
|
+
# * projects/\\{PROJECT_NUMBER}
|
339
|
+
# * folders/\\{FOLDER_NUMBER}
|
340
|
+
# * organizations/\\{ORGANIZATION_NUMBER}
|
341
|
+
# @!attribute [rw] query
|
342
|
+
# @return [::String]
|
343
|
+
# Optional. The query statement. An empty query can be specified to search
|
344
|
+
# all the resources of certain `asset_types` within the given `scope`.
|
345
|
+
#
|
346
|
+
# Examples:
|
347
|
+
#
|
348
|
+
# * `name : "Important"` to find Cloud resources whose name contains
|
349
|
+
# "Important" as a word.
|
350
|
+
# * `displayName : "Impor*"` to find Cloud resources whose display name
|
351
|
+
# contains "Impor" as a word prefix.
|
352
|
+
# * `description : "*por*"` to find Cloud resources whose description
|
353
|
+
# contains "por" as a substring.
|
354
|
+
# * `location : "us-west*"` to find Cloud resources whose location is
|
355
|
+
# prefixed with "us-west".
|
356
|
+
# * `labels : "prod"` to find Cloud resources whose labels contain "prod" as
|
357
|
+
# a key or value.
|
358
|
+
# * `labels.env : "prod"` to find Cloud resources which have a label "env"
|
359
|
+
# and its value is "prod".
|
360
|
+
# * `labels.env : *` to find Cloud resources which have a label "env".
|
361
|
+
# * `"Important"` to find Cloud resources which contain "Important" as a word
|
362
|
+
# in any of the searchable fields.
|
363
|
+
# * `"Impor*"` to find Cloud resources which contain "Impor" as a word prefix
|
364
|
+
# in any of the searchable fields.
|
365
|
+
# * `"*por*"` to find Cloud resources which contain "por" as a substring in
|
366
|
+
# any of the searchable fields.
|
367
|
+
# * `("Important" AND location : ("us-west1" OR "global"))` to find Cloud
|
368
|
+
# resources which contain "Important" as a word in any of the searchable
|
369
|
+
# fields and are also located in the "us-west1" region or the "global"
|
370
|
+
# location.
|
371
|
+
#
|
372
|
+
# See [how to construct a
|
373
|
+
# query](https://cloud.google.com/asset-inventory/docs/searching-resources#how_to_construct_a_query)
|
374
|
+
# for more details.
|
375
|
+
# @!attribute [rw] asset_types
|
376
|
+
# @return [::Array<::String>]
|
377
|
+
# Optional. A list of asset types that this request searches for. If empty,
|
378
|
+
# it will search all the [searchable asset
|
379
|
+
# types](https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types).
|
380
|
+
# @!attribute [rw] page_size
|
381
|
+
# @return [::Integer]
|
382
|
+
# Optional. The page size for search result pagination. Page size is capped
|
383
|
+
# at 500 even if a larger value is given. If set to zero, server will pick an
|
384
|
+
# appropriate default. Returned results may be fewer than requested. When
|
385
|
+
# this happens, there could be more results as long as `next_page_token` is
|
386
|
+
# returned.
|
387
|
+
# @!attribute [rw] page_token
|
388
|
+
# @return [::String]
|
389
|
+
# Optional. If present, then retrieve the next batch of results from the
|
390
|
+
# preceding call to this method. `page_token` must be the value of
|
391
|
+
# `next_page_token` from the previous response. The values of all other
|
392
|
+
# method parameters, must be identical to those in the previous call.
|
393
|
+
# @!attribute [rw] order_by
|
394
|
+
# @return [::String]
|
395
|
+
# Optional. A comma separated list of fields specifying the sorting order of
|
396
|
+
# the results. The default order is ascending. Add " DESC" after the field
|
397
|
+
# name to indicate descending order. Redundant space characters are ignored.
|
398
|
+
# Example: "location DESC, name". See [supported resource metadata
|
399
|
+
# fields](https://cloud.google.com/asset-inventory/docs/searching-resources#query_on_resource_metadata_fields)
|
400
|
+
# for more details.
|
401
|
+
class SearchAllResourcesRequest
|
402
|
+
include ::Google::Protobuf::MessageExts
|
403
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
404
|
+
end
|
405
|
+
|
406
|
+
# Search all resources response.
|
407
|
+
# @!attribute [rw] results
|
408
|
+
# @return [::Array<::Google::Cloud::Asset::V1::ResourceSearchResult>]
|
409
|
+
# A list of Resources that match the search query. It contains the resource
|
410
|
+
# standard metadata information.
|
411
|
+
# @!attribute [rw] next_page_token
|
412
|
+
# @return [::String]
|
413
|
+
# If there are more results than those appearing in this response, then
|
414
|
+
# `next_page_token` is included. To get the next set of results, call this
|
415
|
+
# method again using the value of `next_page_token` as `page_token`.
|
416
|
+
class SearchAllResourcesResponse
|
417
|
+
include ::Google::Protobuf::MessageExts
|
418
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
419
|
+
end
|
420
|
+
|
421
|
+
# Search all IAM policies request.
|
422
|
+
# @!attribute [rw] scope
|
423
|
+
# @return [::String]
|
424
|
+
# Required. A scope can be a project, a folder or an organization. The search
|
425
|
+
# is limited to the IAM policies within the `scope`.
|
426
|
+
#
|
427
|
+
# The allowed values are:
|
428
|
+
#
|
429
|
+
# * projects/\\{PROJECT_ID}
|
430
|
+
# * projects/\\{PROJECT_NUMBER}
|
431
|
+
# * folders/\\{FOLDER_NUMBER}
|
432
|
+
# * organizations/\\{ORGANIZATION_NUMBER}
|
433
|
+
# @!attribute [rw] query
|
434
|
+
# @return [::String]
|
435
|
+
# Optional. The query statement. An empty query can be specified to search
|
436
|
+
# all the IAM policies within the given `scope`.
|
437
|
+
#
|
438
|
+
# Examples:
|
439
|
+
#
|
440
|
+
# * `policy : "amy@gmail.com"` to find Cloud IAM policy bindings that
|
441
|
+
# specify user "amy@gmail.com".
|
442
|
+
# * `policy : "roles/compute.admin"` to find Cloud IAM policy bindings that
|
443
|
+
# specify the Compute Admin role.
|
444
|
+
# * `policy.role.permissions : "storage.buckets.update"` to find Cloud IAM
|
445
|
+
# policy bindings that specify a role containing "storage.buckets.update"
|
446
|
+
# permission.
|
447
|
+
# * `resource : "organizations/123"` to find Cloud IAM policy bindings that
|
448
|
+
# are set on "organizations/123".
|
449
|
+
# * `(resource : ("organizations/123" OR "folders/1234") AND policy : "amy")`
|
450
|
+
# to find Cloud IAM policy bindings that are set on "organizations/123" or
|
451
|
+
# "folders/1234", and also specify user "amy".
|
452
|
+
#
|
453
|
+
# See [how to construct a
|
454
|
+
# query](https://cloud.google.com/asset-inventory/docs/searching-iam-policies#how_to_construct_a_query)
|
455
|
+
# for more details.
|
456
|
+
# @!attribute [rw] page_size
|
457
|
+
# @return [::Integer]
|
458
|
+
# Optional. The page size for search result pagination. Page size is capped
|
459
|
+
# at 500 even if a larger value is given. If set to zero, server will pick an
|
460
|
+
# appropriate default. Returned results may be fewer than requested. When
|
461
|
+
# this happens, there could be more results as long as `next_page_token` is
|
462
|
+
# returned.
|
463
|
+
# @!attribute [rw] page_token
|
464
|
+
# @return [::String]
|
465
|
+
# Optional. If present, retrieve the next batch of results from the preceding
|
466
|
+
# call to this method. `page_token` must be the value of `next_page_token`
|
467
|
+
# from the previous response. The values of all other method parameters must
|
468
|
+
# be identical to those in the previous call.
|
469
|
+
class SearchAllIamPoliciesRequest
|
470
|
+
include ::Google::Protobuf::MessageExts
|
471
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
472
|
+
end
|
473
|
+
|
474
|
+
# Search all IAM policies response.
|
475
|
+
# @!attribute [rw] results
|
476
|
+
# @return [::Array<::Google::Cloud::Asset::V1::IamPolicySearchResult>]
|
477
|
+
# A list of IamPolicy that match the search query. Related information such
|
478
|
+
# as the associated resource is returned along with the policy.
|
479
|
+
# @!attribute [rw] next_page_token
|
480
|
+
# @return [::String]
|
481
|
+
# Set if there are more results than those appearing in this response; to get
|
482
|
+
# the next set of results, call this method again, using this value as the
|
483
|
+
# `page_token`.
|
484
|
+
class SearchAllIamPoliciesResponse
|
485
|
+
include ::Google::Protobuf::MessageExts
|
486
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
326
487
|
end
|
327
488
|
|
328
489
|
# Asset content type.
|