google-cloud-asset 0.8.1 → 1.0.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.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +2 -1
  3. data/AUTHENTICATION.md +51 -59
  4. data/LICENSE.md +203 -0
  5. data/MIGRATING.md +272 -0
  6. data/README.md +36 -24
  7. data/lib/{google/cloud/asset/v1/doc/google/protobuf/empty.rb → google-cloud-asset.rb} +4 -14
  8. data/lib/google/cloud/asset.rb +76 -116
  9. data/lib/google/cloud/asset/version.rb +1 -1
  10. metadata +73 -78
  11. data/LICENSE +0 -201
  12. data/lib/google/cloud/asset/v1.rb +0 -146
  13. data/lib/google/cloud/asset/v1/asset_service_client.rb +0 -669
  14. data/lib/google/cloud/asset/v1/asset_service_client_config.json +0 -61
  15. data/lib/google/cloud/asset/v1/asset_service_pb.rb +0 -123
  16. data/lib/google/cloud/asset/v1/asset_service_services_pb.rb +0 -69
  17. data/lib/google/cloud/asset/v1/assets_pb.rb +0 -51
  18. data/lib/google/cloud/asset/v1/credentials.rb +0 -41
  19. data/lib/google/cloud/asset/v1/doc/google/cloud/asset/v1/asset_service.rb +0 -295
  20. data/lib/google/cloud/asset/v1/doc/google/cloud/asset/v1/assets.rb +0 -116
  21. data/lib/google/cloud/asset/v1/doc/google/iam/v1/policy.rb +0 -151
  22. data/lib/google/cloud/asset/v1/doc/google/longrunning/operations.rb +0 -51
  23. data/lib/google/cloud/asset/v1/doc/google/protobuf/any.rb +0 -131
  24. data/lib/google/cloud/asset/v1/doc/google/protobuf/field_mask.rb +0 -222
  25. data/lib/google/cloud/asset/v1/doc/google/protobuf/struct.rb +0 -74
  26. data/lib/google/cloud/asset/v1/doc/google/protobuf/timestamp.rb +0 -113
  27. data/lib/google/cloud/asset/v1/doc/google/rpc/status.rb +0 -39
  28. data/lib/google/cloud/asset/v1/doc/google/type/expr.rb +0 -45
  29. data/lib/google/cloud/asset/v1/helpers.rb +0 -39
  30. data/lib/google/cloud/asset/v1beta1.rb +0 -146
  31. data/lib/google/cloud/asset/v1beta1/asset_service_client.rb +0 -400
  32. data/lib/google/cloud/asset/v1beta1/asset_service_client_config.json +0 -36
  33. data/lib/google/cloud/asset/v1beta1/asset_service_pb.rb +0 -67
  34. data/lib/google/cloud/asset/v1beta1/asset_service_services_pb.rb +0 -59
  35. data/lib/google/cloud/asset/v1beta1/assets_pb.rb +0 -50
  36. data/lib/google/cloud/asset/v1beta1/credentials.rb +0 -41
  37. data/lib/google/cloud/asset/v1beta1/doc/google/cloud/asset/v1beta1/asset_service.rb +0 -140
  38. data/lib/google/cloud/asset/v1beta1/doc/google/cloud/asset/v1beta1/assets.rb +0 -108
  39. data/lib/google/cloud/asset/v1beta1/doc/google/iam/v1/policy.rb +0 -151
  40. data/lib/google/cloud/asset/v1beta1/doc/google/longrunning/operations.rb +0 -51
  41. data/lib/google/cloud/asset/v1beta1/doc/google/protobuf/any.rb +0 -131
  42. data/lib/google/cloud/asset/v1beta1/doc/google/protobuf/struct.rb +0 -74
  43. data/lib/google/cloud/asset/v1beta1/doc/google/protobuf/timestamp.rb +0 -113
  44. data/lib/google/cloud/asset/v1beta1/doc/google/rpc/status.rb +0 -39
  45. data/lib/google/cloud/asset/v1beta1/doc/google/type/expr.rb +0 -45
  46. data/lib/google/cloud/asset/v1beta1/helpers.rb +0 -31
  47. data/lib/google/cloud/orgpolicy/v1/doc/google/cloud/orgpolicy/v1/orgpolicy.rb +0 -308
  48. data/lib/google/cloud/orgpolicy/v1/orgpolicy_pb.rb +0 -55
@@ -1,36 +0,0 @@
1
- {
2
- "interfaces": {
3
- "google.cloud.asset.v1beta1.AssetService": {
4
- "retry_codes": {
5
- "idempotent": [
6
- "DEADLINE_EXCEEDED",
7
- "UNAVAILABLE"
8
- ],
9
- "non_idempotent": []
10
- },
11
- "retry_params": {
12
- "default": {
13
- "initial_retry_delay_millis": 100,
14
- "retry_delay_multiplier": 1.3,
15
- "max_retry_delay_millis": 60000,
16
- "initial_rpc_timeout_millis": 20000,
17
- "rpc_timeout_multiplier": 1.0,
18
- "max_rpc_timeout_millis": 20000,
19
- "total_timeout_millis": 600000
20
- }
21
- },
22
- "methods": {
23
- "ExportAssets": {
24
- "timeout_millis": 600000,
25
- "retry_codes_name": "non_idempotent",
26
- "retry_params_name": "default"
27
- },
28
- "BatchGetAssetsHistory": {
29
- "timeout_millis": 600000,
30
- "retry_codes_name": "idempotent",
31
- "retry_params_name": "default"
32
- }
33
- }
34
- }
35
- }
36
- }
@@ -1,67 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # source: google/cloud/asset/v1beta1/asset_service.proto
3
-
4
-
5
- require 'google/protobuf'
6
-
7
- require 'google/api/annotations_pb'
8
- require 'google/api/client_pb'
9
- require 'google/api/field_behavior_pb'
10
- require 'google/api/resource_pb'
11
- require 'google/cloud/asset/v1beta1/assets_pb'
12
- require 'google/longrunning/operations_pb'
13
- require 'google/protobuf/timestamp_pb'
14
- Google::Protobuf::DescriptorPool.generated_pool.build do
15
- add_message "google.cloud.asset.v1beta1.ExportAssetsRequest" do
16
- optional :parent, :string, 1
17
- optional :read_time, :message, 2, "google.protobuf.Timestamp"
18
- repeated :asset_types, :string, 3
19
- optional :content_type, :enum, 4, "google.cloud.asset.v1beta1.ContentType"
20
- optional :output_config, :message, 5, "google.cloud.asset.v1beta1.OutputConfig"
21
- end
22
- add_message "google.cloud.asset.v1beta1.ExportAssetsResponse" do
23
- optional :read_time, :message, 1, "google.protobuf.Timestamp"
24
- optional :output_config, :message, 2, "google.cloud.asset.v1beta1.OutputConfig"
25
- end
26
- add_message "google.cloud.asset.v1beta1.BatchGetAssetsHistoryRequest" do
27
- optional :parent, :string, 1
28
- repeated :asset_names, :string, 2
29
- optional :content_type, :enum, 3, "google.cloud.asset.v1beta1.ContentType"
30
- optional :read_time_window, :message, 4, "google.cloud.asset.v1beta1.TimeWindow"
31
- end
32
- add_message "google.cloud.asset.v1beta1.BatchGetAssetsHistoryResponse" do
33
- repeated :assets, :message, 1, "google.cloud.asset.v1beta1.TemporalAsset"
34
- end
35
- add_message "google.cloud.asset.v1beta1.OutputConfig" do
36
- oneof :destination do
37
- optional :gcs_destination, :message, 1, "google.cloud.asset.v1beta1.GcsDestination"
38
- end
39
- end
40
- add_message "google.cloud.asset.v1beta1.GcsDestination" do
41
- oneof :object_uri do
42
- optional :uri, :string, 1
43
- optional :uri_prefix, :string, 2
44
- end
45
- end
46
- add_enum "google.cloud.asset.v1beta1.ContentType" do
47
- value :CONTENT_TYPE_UNSPECIFIED, 0
48
- value :RESOURCE, 1
49
- value :IAM_POLICY, 2
50
- end
51
- end
52
-
53
- module Google
54
- module Cloud
55
- module Asset
56
- module V1beta1
57
- ExportAssetsRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1beta1.ExportAssetsRequest").msgclass
58
- ExportAssetsResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1beta1.ExportAssetsResponse").msgclass
59
- BatchGetAssetsHistoryRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1beta1.BatchGetAssetsHistoryRequest").msgclass
60
- BatchGetAssetsHistoryResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1beta1.BatchGetAssetsHistoryResponse").msgclass
61
- OutputConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1beta1.OutputConfig").msgclass
62
- GcsDestination = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1beta1.GcsDestination").msgclass
63
- ContentType = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1beta1.ContentType").enummodule
64
- end
65
- end
66
- end
67
- end
@@ -1,59 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # Source: google/cloud/asset/v1beta1/asset_service.proto for package 'google.cloud.asset.v1beta1'
3
- # Original file comments:
4
- # Copyright 2019 Google LLC.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
18
- #
19
-
20
-
21
- require 'grpc'
22
- require 'google/cloud/asset/v1beta1/asset_service_pb'
23
-
24
- module Google
25
- module Cloud
26
- module Asset
27
- module V1beta1
28
- module AssetService
29
- # Asset service definition.
30
- class Service
31
-
32
- include GRPC::GenericService
33
-
34
- self.marshal_class_method = :encode
35
- self.unmarshal_class_method = :decode
36
- self.service_name = 'google.cloud.asset.v1beta1.AssetService'
37
-
38
- # Exports assets with time and resource types to a given Cloud Storage
39
- # location. The output format is newline-delimited JSON.
40
- # This API implements the
41
- # [google.longrunning.Operation][google.longrunning.Operation] API allowing
42
- # you to keep track of the export.
43
- rpc :ExportAssets, ExportAssetsRequest, Google::Longrunning::Operation
44
- # Batch gets the update history of assets that overlap a time window.
45
- # For RESOURCE content, this API outputs history with asset in both
46
- # non-delete or deleted status.
47
- # For IAM_POLICY content, this API outputs history when the asset and its
48
- # attached IAM POLICY both exist. This can create gaps in the output history.
49
- # If a specified asset does not exist, this API returns an INVALID_ARGUMENT
50
- # error.
51
- rpc :BatchGetAssetsHistory, BatchGetAssetsHistoryRequest, BatchGetAssetsHistoryResponse
52
- end
53
-
54
- Stub = Service.rpc_stub_class
55
- end
56
- end
57
- end
58
- end
59
- end
@@ -1,50 +0,0 @@
1
- # Generated by the protocol buffer compiler. DO NOT EDIT!
2
- # source: google/cloud/asset/v1beta1/assets.proto
3
-
4
-
5
- require 'google/protobuf'
6
-
7
- require 'google/api/annotations_pb'
8
- require 'google/api/resource_pb'
9
- require 'google/iam/v1/policy_pb'
10
- require 'google/protobuf/any_pb'
11
- require 'google/protobuf/struct_pb'
12
- require 'google/protobuf/timestamp_pb'
13
- Google::Protobuf::DescriptorPool.generated_pool.build do
14
- add_message "google.cloud.asset.v1beta1.TemporalAsset" do
15
- optional :window, :message, 1, "google.cloud.asset.v1beta1.TimeWindow"
16
- optional :deleted, :bool, 2
17
- optional :asset, :message, 3, "google.cloud.asset.v1beta1.Asset"
18
- end
19
- add_message "google.cloud.asset.v1beta1.TimeWindow" do
20
- optional :start_time, :message, 1, "google.protobuf.Timestamp"
21
- optional :end_time, :message, 2, "google.protobuf.Timestamp"
22
- end
23
- add_message "google.cloud.asset.v1beta1.Asset" do
24
- optional :name, :string, 1
25
- optional :asset_type, :string, 2
26
- optional :resource, :message, 3, "google.cloud.asset.v1beta1.Resource"
27
- optional :iam_policy, :message, 4, "google.iam.v1.Policy"
28
- end
29
- add_message "google.cloud.asset.v1beta1.Resource" do
30
- optional :version, :string, 1
31
- optional :discovery_document_uri, :string, 2
32
- optional :discovery_name, :string, 3
33
- optional :resource_url, :string, 4
34
- optional :parent, :string, 5
35
- optional :data, :message, 6, "google.protobuf.Struct"
36
- end
37
- end
38
-
39
- module Google
40
- module Cloud
41
- module Asset
42
- module V1beta1
43
- TemporalAsset = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1beta1.TemporalAsset").msgclass
44
- TimeWindow = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1beta1.TimeWindow").msgclass
45
- Asset = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1beta1.Asset").msgclass
46
- Resource = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1beta1.Resource").msgclass
47
- end
48
- end
49
- end
50
- end
@@ -1,41 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- require "googleauth"
17
-
18
- module Google
19
- module Cloud
20
- module Asset
21
- module V1beta1
22
- class Credentials < Google::Auth::Credentials
23
- SCOPE = [
24
- "https://www.googleapis.com/auth/cloud-platform"
25
- ].freeze
26
- PATH_ENV_VARS = %w(ASSET_CREDENTIALS
27
- ASSET_KEYFILE
28
- GOOGLE_CLOUD_CREDENTIALS
29
- GOOGLE_CLOUD_KEYFILE
30
- GCLOUD_KEYFILE)
31
- JSON_ENV_VARS = %w(ASSET_CREDENTIALS_JSON
32
- ASSET_KEYFILE_JSON
33
- GOOGLE_CLOUD_CREDENTIALS_JSON
34
- GOOGLE_CLOUD_KEYFILE_JSON
35
- GCLOUD_KEYFILE_JSON)
36
- DEFAULT_PATHS = ["~/.config/gcloud/application_default_credentials.json"]
37
- end
38
- end
39
- end
40
- end
41
- end
@@ -1,140 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- module Google
17
- module Cloud
18
- module Asset
19
- module V1beta1
20
- # Export asset request.
21
- # @!attribute [rw] parent
22
- # @return [String]
23
- # Required. The relative name of the root asset. This can only be an
24
- # organization number (such as "organizations/123"), a project ID (such as
25
- # "projects/my-project-id"), a project number (such as "projects/12345"), or
26
- # a folder number (such as "folders/123").
27
- # @!attribute [rw] read_time
28
- # @return [Google::Protobuf::Timestamp]
29
- # Timestamp to take an asset snapshot. This can only be set to a timestamp
30
- # between 2018-10-02 UTC (inclusive) and the current time. If not specified,
31
- # the current time will be used. Due to delays in resource data collection
32
- # and indexing, there is a volatile window during which running the same
33
- # query may get different results.
34
- # @!attribute [rw] asset_types
35
- # @return [Array<String>]
36
- # A list of asset types of which to take a snapshot for. For example:
37
- # "google.compute.Disk". If specified, only matching assets will be returned.
38
- # See [Introduction to Cloud Asset
39
- # Inventory](https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/overview)
40
- # for all supported asset types.
41
- # @!attribute [rw] content_type
42
- # @return [Google::Cloud::Asset::V1beta1::ContentType]
43
- # Asset content type. If not specified, no content but the asset name will be
44
- # returned.
45
- # @!attribute [rw] output_config
46
- # @return [Google::Cloud::Asset::V1beta1::OutputConfig]
47
- # Required. Output configuration indicating where the results will be output
48
- # to. All results will be in newline delimited JSON format.
49
- class ExportAssetsRequest; end
50
-
51
- # The export asset response. This message is returned by the
52
- # {Google::Longrunning::Operations::GetOperation}
53
- # method in the returned
54
- # {Google::Longrunning::Operation#response}
55
- # field.
56
- # @!attribute [rw] read_time
57
- # @return [Google::Protobuf::Timestamp]
58
- # Time the snapshot was taken.
59
- # @!attribute [rw] output_config
60
- # @return [Google::Cloud::Asset::V1beta1::OutputConfig]
61
- # Output configuration indicating where the results were output to.
62
- # All results are in JSON format.
63
- class ExportAssetsResponse; end
64
-
65
- # Batch get assets history request.
66
- # @!attribute [rw] parent
67
- # @return [String]
68
- # Required. The relative name of the root asset. It can only be an
69
- # organization number (such as "organizations/123"), a project ID (such as
70
- # "projects/my-project-id")", or a project number (such as "projects/12345").
71
- # @!attribute [rw] asset_names
72
- # @return [Array<String>]
73
- # A list of the full names of the assets. For example:
74
- # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.
75
- # See [Resource
76
- # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
77
- # for more info.
78
- #
79
- # The request becomes a no-op if the asset name list is empty, and the max
80
- # size of the asset name list is 100 in one request.
81
- # @!attribute [rw] content_type
82
- # @return [Google::Cloud::Asset::V1beta1::ContentType]
83
- # Optional. The content type.
84
- # @!attribute [rw] read_time_window
85
- # @return [Google::Cloud::Asset::V1beta1::TimeWindow]
86
- # Optional. The time window for the asset history. Both start_time and
87
- # end_time are optional and if set, it must be after 2018-10-02 UTC. If
88
- # end_time is not set, it is default to current timestamp. If start_time is
89
- # not set, the snapshot of the assets at end_time will be returned. The
90
- # returned results contain all temporal assets whose time window overlap with
91
- # read_time_window.
92
- class BatchGetAssetsHistoryRequest; end
93
-
94
- # Batch get assets history response.
95
- # @!attribute [rw] assets
96
- # @return [Array<Google::Cloud::Asset::V1beta1::TemporalAsset>]
97
- # A list of assets with valid time windows.
98
- class BatchGetAssetsHistoryResponse; end
99
-
100
- # Output configuration for export assets destination.
101
- # @!attribute [rw] gcs_destination
102
- # @return [Google::Cloud::Asset::V1beta1::GcsDestination]
103
- # Destination on Cloud Storage.
104
- class OutputConfig; end
105
-
106
- # A Cloud Storage location.
107
- # @!attribute [rw] uri
108
- # @return [String]
109
- # The uri of the Cloud Storage object. It's the same uri that is used by
110
- # gsutil. For example: "gs://bucket_name/object_name". See [Viewing and
111
- # Editing Object
112
- # Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata)
113
- # for more information.
114
- # @!attribute [rw] uri_prefix
115
- # @return [String]
116
- # The uri prefix of all generated Cloud Storage objects. For example:
117
- # "gs://bucket_name/object_name_prefix". Each object uri is in format:
118
- # "gs://bucket_name/object_name_prefix/<asset type>/<shard number> and only
119
- # contains assets for that type. <shard number> starts from 0. For example:
120
- # "gs://bucket_name/object_name_prefix/google.compute.disk/0" is the first
121
- # shard of output objects containing all google.compute.disk assets.
122
- # An INVALID_ARGUMENT error will be returned if file with the same name
123
- # "gs://bucket_name/object_name_prefix" already exists.
124
- class GcsDestination; end
125
-
126
- # Asset content type.
127
- module ContentType
128
- # Unspecified content type.
129
- CONTENT_TYPE_UNSPECIFIED = 0
130
-
131
- # Resource metadata.
132
- RESOURCE = 1
133
-
134
- # The actual IAM policy set on a resource.
135
- IAM_POLICY = 2
136
- end
137
- end
138
- end
139
- end
140
- end
@@ -1,108 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- module Google
17
- module Cloud
18
- module Asset
19
- module V1beta1
20
- # Temporal asset. In addition to the asset, the temporal asset includes the
21
- # status of the asset and valid from and to time of it.
22
- # @!attribute [rw] window
23
- # @return [Google::Cloud::Asset::V1beta1::TimeWindow]
24
- # The time window when the asset data and state was observed.
25
- # @!attribute [rw] deleted
26
- # @return [true, false]
27
- # If the asset is deleted or not.
28
- # @!attribute [rw] asset
29
- # @return [Google::Cloud::Asset::V1beta1::Asset]
30
- # Asset.
31
- class TemporalAsset; end
32
-
33
- # A time window of (start_time, end_time].
34
- # @!attribute [rw] start_time
35
- # @return [Google::Protobuf::Timestamp]
36
- # Start time of the time window (exclusive).
37
- # @!attribute [rw] end_time
38
- # @return [Google::Protobuf::Timestamp]
39
- # End time of the time window (inclusive).
40
- # Current timestamp if not specified.
41
- class TimeWindow; end
42
-
43
- # Cloud asset. This includes all Google Cloud Platform resources,
44
- # Cloud IAM policies, and other non-GCP assets.
45
- # @!attribute [rw] name
46
- # @return [String]
47
- # The full name of the asset. For example:
48
- # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.
49
- # See [Resource
50
- # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
51
- # for more information.
52
- # @!attribute [rw] asset_type
53
- # @return [String]
54
- # Type of the asset. Example: "google.compute.Disk".
55
- # @!attribute [rw] resource
56
- # @return [Google::Cloud::Asset::V1beta1::Resource]
57
- # Representation of the resource.
58
- # @!attribute [rw] iam_policy
59
- # @return [Google::Iam::V1::Policy]
60
- # Representation of the actual Cloud IAM policy set on a cloud resource. For
61
- # each resource, there must be at most one Cloud IAM policy set on it.
62
- class Asset; end
63
-
64
- # Representation of a cloud resource.
65
- # @!attribute [rw] version
66
- # @return [String]
67
- # The API version. Example: "v1".
68
- # @!attribute [rw] discovery_document_uri
69
- # @return [String]
70
- # The URL of the discovery document containing the resource's JSON schema.
71
- # For example:
72
- # `"https://www.googleapis.com/discovery/v1/apis/compute/v1/rest"`.
73
- # It will be left unspecified for resources without a discovery-based API,
74
- # such as Cloud Bigtable.
75
- # @!attribute [rw] discovery_name
76
- # @return [String]
77
- # The JSON schema name listed in the discovery document.
78
- # Example: "Project". It will be left unspecified for resources (such as
79
- # Cloud Bigtable) without a discovery-based API.
80
- # @!attribute [rw] resource_url
81
- # @return [String]
82
- # The REST URL for accessing the resource. An HTTP GET operation using this
83
- # URL returns the resource itself.
84
- # Example:
85
- # `https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123`.
86
- # It will be left unspecified for resources without a REST API.
87
- # @!attribute [rw] parent
88
- # @return [String]
89
- # The full name of the immediate parent of this resource. See
90
- # [Resource
91
- # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
92
- # for more information.
93
- #
94
- # For GCP assets, it is the parent resource defined in the [Cloud IAM policy
95
- # hierarchy](https://cloud.google.com/iam/docs/overview#policy_hierarchy).
96
- # For example:
97
- # `"//cloudresourcemanager.googleapis.com/projects/my_project_123"`.
98
- #
99
- # For third-party assets, it is up to the users to define.
100
- # @!attribute [rw] data
101
- # @return [Google::Protobuf::Struct]
102
- # The content of the resource, in which some sensitive fields are scrubbed
103
- # away and may not be present.
104
- class Resource; end
105
- end
106
- end
107
- end
108
- end