google-apis-cloudasset_v1p7beta1 0.1.0 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +21 -0
- data/lib/google/apis/cloudasset_v1p7beta1.rb +1 -1
- data/lib/google/apis/cloudasset_v1p7beta1/classes.rb +493 -746
- data/lib/google/apis/cloudasset_v1p7beta1/gem_version.rb +3 -3
- data/lib/google/apis/cloudasset_v1p7beta1/representations.rb +91 -216
- data/lib/google/apis/cloudasset_v1p7beta1/service.rb +10 -763
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9739921956adc8753a85d605b3d0efd3851ce017ab994cd0fe5d4d4363a9ece4
|
4
|
+
data.tar.gz: 108da848f2489c3aec7404748724085a196debc27c55890cf7a6d1a19d23559f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c8851d9b3255980c0ffbd1a2572b373d155f6fd67b861fbde3e1a442c20c6d49833cf5924ef1d76e07406cfdab3e52abf390e3109c32b19883e22ad2b71ae64f
|
7
|
+
data.tar.gz: 18004ef80e9780413ca02e5fa7045c94f41cae9e788845fb3435cc4499bc1544434d37aab5c619839fe9f5520f735ece6dcf67f5862a8485b80fb379c0b5ba0f
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,26 @@
|
|
1
1
|
# Release history for google-apis-cloudasset_v1p7beta1
|
2
2
|
|
3
|
+
### v0.6.0 (2021-04-22)
|
4
|
+
|
5
|
+
* Regenerated from discovery document revision 20210416
|
6
|
+
|
7
|
+
### v0.5.0 (2021-03-31)
|
8
|
+
|
9
|
+
* Regenerated from discovery document revision 20210326
|
10
|
+
|
11
|
+
### v0.4.0 (2021-03-09)
|
12
|
+
|
13
|
+
* Regenerated from discovery document revision 20210305
|
14
|
+
* Regenerated using generator version 0.2.0
|
15
|
+
|
16
|
+
### v0.3.0 (2021-03-04)
|
17
|
+
|
18
|
+
* Regenerated from discovery document revision 20210226
|
19
|
+
|
20
|
+
### v0.2.0 (2021-02-11)
|
21
|
+
|
22
|
+
* Regenerated from discovery document revision 20210209
|
23
|
+
|
3
24
|
### v0.1.0 (2021-02-03)
|
4
25
|
|
5
26
|
* Regenerated from discovery document revision 20210129
|
@@ -29,7 +29,7 @@ module Google
|
|
29
29
|
# This is NOT the gem version.
|
30
30
|
VERSION = 'V1p7beta1'
|
31
31
|
|
32
|
-
#
|
32
|
+
# See, edit, configure, and delete your Google Cloud Platform data
|
33
33
|
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
|
34
34
|
end
|
35
35
|
end
|
@@ -22,142 +22,16 @@ module Google
|
|
22
22
|
module Apis
|
23
23
|
module CloudassetV1p7beta1
|
24
24
|
|
25
|
-
#
|
26
|
-
|
27
|
-
# platform-resource-hierarchy), a resource outside the Google Cloud resource
|
28
|
-
# hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy
|
29
|
-
# (e.g. Cloud IAM policy). See [Supported asset types](https://cloud.google.com/
|
30
|
-
# asset-inventory/docs/supported-asset-types) for more information.
|
31
|
-
class Asset
|
25
|
+
# A response message for AssetService.AnalyzeIamPolicyLongrunning.
|
26
|
+
class AnalyzeIamPolicyLongrunningResponse
|
32
27
|
include Google::Apis::Core::Hashable
|
33
28
|
|
34
|
-
# An `AccessLevel` is a label that can be applied to requests to Google Cloud
|
35
|
-
# services, along with a list of requirements necessary for the label to be
|
36
|
-
# applied.
|
37
|
-
# Corresponds to the JSON property `accessLevel`
|
38
|
-
# @return [Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1AccessLevel]
|
39
|
-
attr_accessor :access_level
|
40
|
-
|
41
|
-
# `AccessPolicy` is a container for `AccessLevels` (which define the necessary
|
42
|
-
# attributes to use Google Cloud services) and `ServicePerimeters` (which define
|
43
|
-
# regions of services able to freely pass data within a perimeter). An access
|
44
|
-
# policy is globally visible within an organization, and the restrictions it
|
45
|
-
# specifies apply to all projects within an organization.
|
46
|
-
# Corresponds to the JSON property `accessPolicy`
|
47
|
-
# @return [Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1AccessPolicy]
|
48
|
-
attr_accessor :access_policy
|
49
|
-
|
50
|
-
# The ancestry path of an asset in Google Cloud [resource hierarchy](https://
|
51
|
-
# cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy),
|
52
|
-
# represented as a list of relative resource names. An ancestry path starts with
|
53
|
-
# the closest ancestor in the hierarchy and ends at root. If the asset is a
|
54
|
-
# project, folder, or organization, the ancestry path starts from the asset
|
55
|
-
# itself. Example: `["projects/123456789", "folders/5432", "organizations/1234"]`
|
56
|
-
# Corresponds to the JSON property `ancestors`
|
57
|
-
# @return [Array<String>]
|
58
|
-
attr_accessor :ancestors
|
59
|
-
|
60
|
-
# The type of the asset. Example: `compute.googleapis.com/Disk` See [Supported
|
61
|
-
# asset types](https://cloud.google.com/asset-inventory/docs/supported-asset-
|
62
|
-
# types) for more information.
|
63
|
-
# Corresponds to the JSON property `assetType`
|
64
|
-
# @return [String]
|
65
|
-
attr_accessor :asset_type
|
66
|
-
|
67
|
-
# Whether the asset has been deleted or not.
|
68
|
-
# Corresponds to the JSON property `deleted`
|
69
|
-
# @return [Boolean]
|
70
|
-
attr_accessor :deleted
|
71
|
-
alias_method :deleted?, :deleted
|
72
|
-
|
73
|
-
# An Identity and Access Management (IAM) policy, which specifies access
|
74
|
-
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
75
|
-
# A `binding` binds one or more `members` to a single `role`. Members can be
|
76
|
-
# user accounts, service accounts, Google groups, and domains (such as G Suite).
|
77
|
-
# A `role` is a named list of permissions; each `role` can be an IAM predefined
|
78
|
-
# role or a user-created custom role. For some types of Google Cloud resources,
|
79
|
-
# a `binding` can also specify a `condition`, which is a logical expression that
|
80
|
-
# allows access to a resource only if the expression evaluates to `true`. A
|
81
|
-
# condition can add constraints based on attributes of the request, the resource,
|
82
|
-
# or both. To learn which resources support conditions in their IAM policies,
|
83
|
-
# see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
|
84
|
-
# resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
|
85
|
-
# resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
|
86
|
-
# group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
|
87
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
|
88
|
-
# organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
|
89
|
-
# title": "expirable access", "description": "Does not grant access after Sep
|
90
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
|
91
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
|
92
|
-
# members: - user:mike@example.com - group:admins@example.com - domain:google.
|
93
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
|
94
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.com role:
|
95
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable access
|
96
|
-
# description: Does not grant access after Sep 2020 expression: request.time <
|
97
|
-
# timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
|
98
|
-
# description of IAM and its features, see the [IAM documentation](https://cloud.
|
99
|
-
# google.com/iam/docs/).
|
100
|
-
# Corresponds to the JSON property `iamPolicy`
|
101
|
-
# @return [Google::Apis::CloudassetV1p7beta1::Policy]
|
102
|
-
attr_accessor :iam_policy
|
103
|
-
|
104
|
-
# The full name of the asset. Example: `//compute.googleapis.com/projects/
|
105
|
-
# my_project_123/zones/zone1/instances/instance1` See [Resource names](https://
|
106
|
-
# cloud.google.com/apis/design/resource_names#full_resource_name) for more
|
107
|
-
# information.
|
108
|
-
# Corresponds to the JSON property `name`
|
109
|
-
# @return [String]
|
110
|
-
attr_accessor :name
|
111
|
-
|
112
|
-
# A representation of an [organization policy](https://cloud.google.com/resource-
|
113
|
-
# manager/docs/organization-policy/overview#organization_policy). There can be
|
114
|
-
# more than one organization policy with different constraints set on a given
|
115
|
-
# resource.
|
116
|
-
# Corresponds to the JSON property `orgPolicy`
|
117
|
-
# @return [Array<Google::Apis::CloudassetV1p7beta1::GoogleCloudOrgpolicyV1Policy>]
|
118
|
-
attr_accessor :org_policy
|
119
|
-
|
120
|
-
# A representation of a Google Cloud resource.
|
121
|
-
# Corresponds to the JSON property `resource`
|
122
|
-
# @return [Google::Apis::CloudassetV1p7beta1::Resource]
|
123
|
-
attr_accessor :resource
|
124
|
-
|
125
|
-
# `ServicePerimeter` describes a set of Google Cloud resources which can freely
|
126
|
-
# import and export data amongst themselves, but not export outside of the `
|
127
|
-
# ServicePerimeter`. If a request with a source within this `ServicePerimeter`
|
128
|
-
# has a target outside of the `ServicePerimeter`, the request will be blocked.
|
129
|
-
# Otherwise the request is allowed. There are two types of Service Perimeter -
|
130
|
-
# Regular and Bridge. Regular Service Perimeters cannot overlap, a single Google
|
131
|
-
# Cloud project can only belong to a single regular Service Perimeter. Service
|
132
|
-
# Perimeter Bridges can contain only Google Cloud projects as members, a single
|
133
|
-
# Google Cloud project may belong to multiple Service Perimeter Bridges.
|
134
|
-
# Corresponds to the JSON property `servicePerimeter`
|
135
|
-
# @return [Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1ServicePerimeter]
|
136
|
-
attr_accessor :service_perimeter
|
137
|
-
|
138
|
-
# The last update timestamp of an asset. update_time is updated when create/
|
139
|
-
# update/delete operation is performed.
|
140
|
-
# Corresponds to the JSON property `updateTime`
|
141
|
-
# @return [String]
|
142
|
-
attr_accessor :update_time
|
143
|
-
|
144
29
|
def initialize(**args)
|
145
30
|
update!(**args)
|
146
31
|
end
|
147
32
|
|
148
33
|
# Update properties of this object
|
149
34
|
def update!(**args)
|
150
|
-
@access_level = args[:access_level] if args.key?(:access_level)
|
151
|
-
@access_policy = args[:access_policy] if args.key?(:access_policy)
|
152
|
-
@ancestors = args[:ancestors] if args.key?(:ancestors)
|
153
|
-
@asset_type = args[:asset_type] if args.key?(:asset_type)
|
154
|
-
@deleted = args[:deleted] if args.key?(:deleted)
|
155
|
-
@iam_policy = args[:iam_policy] if args.key?(:iam_policy)
|
156
|
-
@name = args[:name] if args.key?(:name)
|
157
|
-
@org_policy = args[:org_policy] if args.key?(:org_policy)
|
158
|
-
@resource = args[:resource] if args.key?(:resource)
|
159
|
-
@service_perimeter = args[:service_perimeter] if args.key?(:service_perimeter)
|
160
|
-
@update_time = args[:update_time] if args.key?(:update_time)
|
161
35
|
end
|
162
36
|
end
|
163
37
|
|
@@ -232,110 +106,6 @@ module Google
|
|
232
106
|
end
|
233
107
|
end
|
234
108
|
|
235
|
-
# A BigQuery destination for exporting assets to.
|
236
|
-
class BigQueryDestination
|
237
|
-
include Google::Apis::Core::Hashable
|
238
|
-
|
239
|
-
# Required. The BigQuery dataset in format "projects/projectId/datasets/
|
240
|
-
# datasetId", to which the snapshot result should be exported. If this dataset
|
241
|
-
# does not exist, the export call returns an INVALID_ARGUMENT error.
|
242
|
-
# Corresponds to the JSON property `dataset`
|
243
|
-
# @return [String]
|
244
|
-
attr_accessor :dataset
|
245
|
-
|
246
|
-
# If the destination table already exists and this flag is `TRUE`, the table
|
247
|
-
# will be overwritten by the contents of assets snapshot. If the flag is `FALSE`
|
248
|
-
# or unset and the destination table already exists, the export call returns an
|
249
|
-
# INVALID_ARGUMEMT error.
|
250
|
-
# Corresponds to the JSON property `force`
|
251
|
-
# @return [Boolean]
|
252
|
-
attr_accessor :force
|
253
|
-
alias_method :force?, :force
|
254
|
-
|
255
|
-
# Specifications of BigQuery partitioned table as export destination.
|
256
|
-
# Corresponds to the JSON property `partitionSpec`
|
257
|
-
# @return [Google::Apis::CloudassetV1p7beta1::PartitionSpec]
|
258
|
-
attr_accessor :partition_spec
|
259
|
-
|
260
|
-
# If this flag is `TRUE`, the snapshot results will be written to one or
|
261
|
-
# multiple tables, each of which contains results of one asset type. The [force]
|
262
|
-
# and [partition_spec] fields will apply to each of them. Field [table] will be
|
263
|
-
# concatenated with "_" and the asset type names (see https://cloud.google.com/
|
264
|
-
# asset-inventory/docs/supported-asset-types for supported asset types) to
|
265
|
-
# construct per-asset-type table names, in which all non-alphanumeric characters
|
266
|
-
# like "." and "/" will be substituted by "_". Example: if field [table] is "
|
267
|
-
# mytable" and snapshot results contain "storage.googleapis.com/Bucket" assets,
|
268
|
-
# the corresponding table name will be "mytable_storage_googleapis_com_Bucket".
|
269
|
-
# If any of these tables does not exist, a new table with the concatenated name
|
270
|
-
# will be created. When [content_type] in the ExportAssetsRequest is `RESOURCE`,
|
271
|
-
# the schema of each table will include RECORD-type columns mapped to the nested
|
272
|
-
# fields in the Asset.resource.data field of that asset type (up to the 15
|
273
|
-
# nested level BigQuery supports (https://cloud.google.com/bigquery/docs/nested-
|
274
|
-
# repeated#limitations)). The fields in >15 nested levels will be stored in JSON
|
275
|
-
# format string as a child column of its parent RECORD column. If error occurs
|
276
|
-
# when exporting to any table, the whole export call will return an error but
|
277
|
-
# the export results that already succeed will persist. Example: if exporting to
|
278
|
-
# table_type_A succeeds when exporting to table_type_B fails during one export
|
279
|
-
# call, the results in table_type_A will persist and there will not be partial
|
280
|
-
# results persisting in a table.
|
281
|
-
# Corresponds to the JSON property `separateTablesPerAssetType`
|
282
|
-
# @return [Boolean]
|
283
|
-
attr_accessor :separate_tables_per_asset_type
|
284
|
-
alias_method :separate_tables_per_asset_type?, :separate_tables_per_asset_type
|
285
|
-
|
286
|
-
# Required. The BigQuery table to which the snapshot result should be written.
|
287
|
-
# If this table does not exist, a new table with the given name will be created.
|
288
|
-
# In the case of scheduled export, the real destination is [table] appended with
|
289
|
-
# a suffix indicating the point-in-time of the snapshot. For example, suppose
|
290
|
-
# field [table] is "mytable". When [separate_tables_per_asset_type] and is `
|
291
|
-
# FALSE`, the destination will be "mytable_snapshot_20201122060000", and when [
|
292
|
-
# separate_tables_per_asset_type] and is `TRUE` and the [asset_types] contains "
|
293
|
-
# storage.googleapis.com/Bucket", the destination will be "
|
294
|
-
# mytable_snapshot_20201122060000_storage_googleapis_com_Bucket"
|
295
|
-
# Corresponds to the JSON property `table`
|
296
|
-
# @return [String]
|
297
|
-
attr_accessor :table
|
298
|
-
|
299
|
-
def initialize(**args)
|
300
|
-
update!(**args)
|
301
|
-
end
|
302
|
-
|
303
|
-
# Update properties of this object
|
304
|
-
def update!(**args)
|
305
|
-
@dataset = args[:dataset] if args.key?(:dataset)
|
306
|
-
@force = args[:force] if args.key?(:force)
|
307
|
-
@partition_spec = args[:partition_spec] if args.key?(:partition_spec)
|
308
|
-
@separate_tables_per_asset_type = args[:separate_tables_per_asset_type] if args.key?(:separate_tables_per_asset_type)
|
309
|
-
@table = args[:table] if args.key?(:table)
|
310
|
-
end
|
311
|
-
end
|
312
|
-
|
313
|
-
# Setting for scheduled export to BigQuery.
|
314
|
-
class BigQuerySetting
|
315
|
-
include Google::Apis::Core::Hashable
|
316
|
-
|
317
|
-
# A BigQuery destination for exporting assets to.
|
318
|
-
# Corresponds to the JSON property `destination`
|
319
|
-
# @return [Google::Apis::CloudassetV1p7beta1::BigQueryDestination]
|
320
|
-
attr_accessor :destination
|
321
|
-
|
322
|
-
# Schedule for scheduled export. This is used to configure scheduled export for
|
323
|
-
# both GCS and BigQuery.
|
324
|
-
# Corresponds to the JSON property `snapshotSchedule`
|
325
|
-
# @return [Google::Apis::CloudassetV1p7beta1::ScheduleConfig]
|
326
|
-
attr_accessor :snapshot_schedule
|
327
|
-
|
328
|
-
def initialize(**args)
|
329
|
-
update!(**args)
|
330
|
-
end
|
331
|
-
|
332
|
-
# Update properties of this object
|
333
|
-
def update!(**args)
|
334
|
-
@destination = args[:destination] if args.key?(:destination)
|
335
|
-
@snapshot_schedule = args[:snapshot_schedule] if args.key?(:snapshot_schedule)
|
336
|
-
end
|
337
|
-
end
|
338
|
-
|
339
109
|
# Associates `members` with a `role`.
|
340
110
|
class Binding
|
341
111
|
include Google::Apis::Core::Hashable
|
@@ -407,41 +177,46 @@ module Google
|
|
407
177
|
end
|
408
178
|
end
|
409
179
|
|
410
|
-
#
|
411
|
-
|
180
|
+
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
181
|
+
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
182
|
+
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
183
|
+
# "Summary size limit" description: "Determines if a summary is less than 100
|
184
|
+
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
185
|
+
# Requestor is owner" description: "Determines if requestor is the document
|
186
|
+
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
187
|
+
# Logic): title: "Public documents" description: "Determine whether the document
|
188
|
+
# should be publicly visible" expression: "document.type != 'private' &&
|
189
|
+
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
190
|
+
# string" description: "Create a notification string with a timestamp."
|
191
|
+
# expression: "'New message received at ' + string(document.create_time)" The
|
192
|
+
# exact variables and functions that may be referenced within an expression are
|
193
|
+
# determined by the service that evaluates it. See the service documentation for
|
194
|
+
# additional information.
|
195
|
+
class Expr
|
412
196
|
include Google::Apis::Core::Hashable
|
413
197
|
|
414
|
-
#
|
415
|
-
#
|
416
|
-
#
|
417
|
-
# Corresponds to the JSON property `exportSetting`
|
418
|
-
# @return [Google::Apis::CloudassetV1p7beta1::ExportSetting]
|
419
|
-
attr_accessor :export_setting
|
420
|
-
|
421
|
-
# Required. This is the client-assigned export setting identifier encoded in UTF-
|
422
|
-
# 8 and it needs to be unique under a specific [InventorySettings].
|
423
|
-
# Corresponds to the JSON property `exportSettingId`
|
198
|
+
# Optional. Description of the expression. This is a longer text which describes
|
199
|
+
# the expression, e.g. when hovered over it in a UI.
|
200
|
+
# Corresponds to the JSON property `description`
|
424
201
|
# @return [String]
|
425
|
-
attr_accessor :
|
202
|
+
attr_accessor :description
|
426
203
|
|
427
|
-
|
428
|
-
|
429
|
-
|
204
|
+
# Textual representation of an expression in Common Expression Language syntax.
|
205
|
+
# Corresponds to the JSON property `expression`
|
206
|
+
# @return [String]
|
207
|
+
attr_accessor :expression
|
430
208
|
|
431
|
-
#
|
432
|
-
|
433
|
-
|
434
|
-
|
435
|
-
|
436
|
-
end
|
209
|
+
# Optional. String indicating the location of the expression for error reporting,
|
210
|
+
# e.g. a file name and a position in the file.
|
211
|
+
# Corresponds to the JSON property `location`
|
212
|
+
# @return [String]
|
213
|
+
attr_accessor :location
|
437
214
|
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
class Empty
|
444
|
-
include Google::Apis::Core::Hashable
|
215
|
+
# Optional. Title for the expression, i.e. a short string describing its purpose.
|
216
|
+
# This can be used e.g. in UIs which allow to enter the expression.
|
217
|
+
# Corresponds to the JSON property `title`
|
218
|
+
# @return [String]
|
219
|
+
attr_accessor :title
|
445
220
|
|
446
221
|
def initialize(**args)
|
447
222
|
update!(**args)
|
@@ -449,55 +224,130 @@ module Google
|
|
449
224
|
|
450
225
|
# Update properties of this object
|
451
226
|
def update!(**args)
|
227
|
+
@description = args[:description] if args.key?(:description)
|
228
|
+
@expression = args[:expression] if args.key?(:expression)
|
229
|
+
@location = args[:location] if args.key?(:location)
|
230
|
+
@title = args[:title] if args.key?(:title)
|
452
231
|
end
|
453
232
|
end
|
454
233
|
|
455
|
-
#
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
#
|
465
|
-
#
|
466
|
-
#
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
#
|
472
|
-
#
|
473
|
-
#
|
474
|
-
#
|
475
|
-
#
|
476
|
-
#
|
477
|
-
#
|
478
|
-
|
479
|
-
|
480
|
-
#
|
481
|
-
#
|
482
|
-
#
|
234
|
+
# An asset in Google Cloud. An asset can be any resource in the Google Cloud [
|
235
|
+
# resource hierarchy](https://cloud.google.com/resource-manager/docs/cloud-
|
236
|
+
# platform-resource-hierarchy), a resource outside the Google Cloud resource
|
237
|
+
# hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy
|
238
|
+
# (e.g. Cloud IAM policy). See [Supported asset types](https://cloud.google.com/
|
239
|
+
# asset-inventory/docs/supported-asset-types) for more information.
|
240
|
+
class GoogleCloudAssetV1p7beta1Asset
|
241
|
+
include Google::Apis::Core::Hashable
|
242
|
+
|
243
|
+
# An `AccessLevel` is a label that can be applied to requests to Google Cloud
|
244
|
+
# services, along with a list of requirements necessary for the label to be
|
245
|
+
# applied.
|
246
|
+
# Corresponds to the JSON property `accessLevel`
|
247
|
+
# @return [Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1AccessLevel]
|
248
|
+
attr_accessor :access_level
|
249
|
+
|
250
|
+
# `AccessPolicy` is a container for `AccessLevels` (which define the necessary
|
251
|
+
# attributes to use Google Cloud services) and `ServicePerimeters` (which define
|
252
|
+
# regions of services able to freely pass data within a perimeter). An access
|
253
|
+
# policy is globally visible within an organization, and the restrictions it
|
254
|
+
# specifies apply to all projects within an organization.
|
255
|
+
# Corresponds to the JSON property `accessPolicy`
|
256
|
+
# @return [Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1AccessPolicy]
|
257
|
+
attr_accessor :access_policy
|
258
|
+
|
259
|
+
# The ancestry path of an asset in Google Cloud [resource hierarchy](https://
|
260
|
+
# cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy),
|
261
|
+
# represented as a list of relative resource names. An ancestry path starts with
|
262
|
+
# the closest ancestor in the hierarchy and ends at root. If the asset is a
|
263
|
+
# project, folder, or organization, the ancestry path starts from the asset
|
264
|
+
# itself. Example: `["projects/123456789", "folders/5432", "organizations/1234"]`
|
265
|
+
# Corresponds to the JSON property `ancestors`
|
483
266
|
# @return [Array<String>]
|
484
|
-
attr_accessor :
|
267
|
+
attr_accessor :ancestors
|
485
268
|
|
486
|
-
#
|
487
|
-
#
|
488
|
-
#
|
269
|
+
# The type of the asset. Example: `compute.googleapis.com/Disk` See [Supported
|
270
|
+
# asset types](https://cloud.google.com/asset-inventory/docs/supported-asset-
|
271
|
+
# types) for more information.
|
272
|
+
# Corresponds to the JSON property `assetType`
|
489
273
|
# @return [String]
|
490
|
-
attr_accessor :
|
274
|
+
attr_accessor :asset_type
|
491
275
|
|
492
|
-
#
|
493
|
-
#
|
494
|
-
#
|
495
|
-
|
276
|
+
# An Identity and Access Management (IAM) policy, which specifies access
|
277
|
+
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
278
|
+
# A `binding` binds one or more `members` to a single `role`. Members can be
|
279
|
+
# user accounts, service accounts, Google groups, and domains (such as G Suite).
|
280
|
+
# A `role` is a named list of permissions; each `role` can be an IAM predefined
|
281
|
+
# role or a user-created custom role. For some types of Google Cloud resources,
|
282
|
+
# a `binding` can also specify a `condition`, which is a logical expression that
|
283
|
+
# allows access to a resource only if the expression evaluates to `true`. A
|
284
|
+
# condition can add constraints based on attributes of the request, the resource,
|
285
|
+
# or both. To learn which resources support conditions in their IAM policies,
|
286
|
+
# see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
|
287
|
+
# resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
|
288
|
+
# resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
|
289
|
+
# group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
|
290
|
+
# appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
|
291
|
+
# organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
|
292
|
+
# title": "expirable access", "description": "Does not grant access after Sep
|
293
|
+
# 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
|
294
|
+
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
|
295
|
+
# members: - user:mike@example.com - group:admins@example.com - domain:google.
|
296
|
+
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
|
297
|
+
# resourcemanager.organizationAdmin - members: - user:eve@example.com role:
|
298
|
+
# roles/resourcemanager.organizationViewer condition: title: expirable access
|
299
|
+
# description: Does not grant access after Sep 2020 expression: request.time <
|
300
|
+
# timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
|
301
|
+
# description of IAM and its features, see the [IAM documentation](https://cloud.
|
302
|
+
# google.com/iam/docs/).
|
303
|
+
# Corresponds to the JSON property `iamPolicy`
|
304
|
+
# @return [Google::Apis::CloudassetV1p7beta1::Policy]
|
305
|
+
attr_accessor :iam_policy
|
496
306
|
|
497
|
-
#
|
498
|
-
#
|
499
|
-
#
|
500
|
-
|
307
|
+
# The full name of the asset. Example: `//compute.googleapis.com/projects/
|
308
|
+
# my_project_123/zones/zone1/instances/instance1` See [Resource names](https://
|
309
|
+
# cloud.google.com/apis/design/resource_names#full_resource_name) for more
|
310
|
+
# information.
|
311
|
+
# Corresponds to the JSON property `name`
|
312
|
+
# @return [String]
|
313
|
+
attr_accessor :name
|
314
|
+
|
315
|
+
# A representation of an [organization policy](https://cloud.google.com/resource-
|
316
|
+
# manager/docs/organization-policy/overview#organization_policy). There can be
|
317
|
+
# more than one organization policy with different constraints set on a given
|
318
|
+
# resource.
|
319
|
+
# Corresponds to the JSON property `orgPolicy`
|
320
|
+
# @return [Array<Google::Apis::CloudassetV1p7beta1::GoogleCloudOrgpolicyV1Policy>]
|
321
|
+
attr_accessor :org_policy
|
322
|
+
|
323
|
+
# The detailed related assets with the `relationship_type`.
|
324
|
+
# Corresponds to the JSON property `relatedAssets`
|
325
|
+
# @return [Google::Apis::CloudassetV1p7beta1::GoogleCloudAssetV1p7beta1RelatedAssets]
|
326
|
+
attr_accessor :related_assets
|
327
|
+
|
328
|
+
# A representation of a Google Cloud resource.
|
329
|
+
# Corresponds to the JSON property `resource`
|
330
|
+
# @return [Google::Apis::CloudassetV1p7beta1::GoogleCloudAssetV1p7beta1Resource]
|
331
|
+
attr_accessor :resource
|
332
|
+
|
333
|
+
# `ServicePerimeter` describes a set of Google Cloud resources which can freely
|
334
|
+
# import and export data amongst themselves, but not export outside of the `
|
335
|
+
# ServicePerimeter`. If a request with a source within this `ServicePerimeter`
|
336
|
+
# has a target outside of the `ServicePerimeter`, the request will be blocked.
|
337
|
+
# Otherwise the request is allowed. There are two types of Service Perimeter -
|
338
|
+
# Regular and Bridge. Regular Service Perimeters cannot overlap, a single Google
|
339
|
+
# Cloud project can only belong to a single regular Service Perimeter. Service
|
340
|
+
# Perimeter Bridges can contain only Google Cloud projects as members, a single
|
341
|
+
# Google Cloud project may belong to multiple Service Perimeter Bridges.
|
342
|
+
# Corresponds to the JSON property `servicePerimeter`
|
343
|
+
# @return [Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1ServicePerimeter]
|
344
|
+
attr_accessor :service_perimeter
|
345
|
+
|
346
|
+
# The last update timestamp of an asset. update_time is updated when create/
|
347
|
+
# update/delete operation is performed.
|
348
|
+
# Corresponds to the JSON property `updateTime`
|
349
|
+
# @return [String]
|
350
|
+
attr_accessor :update_time
|
501
351
|
|
502
352
|
def initialize(**args)
|
503
353
|
update!(**args)
|
@@ -505,16 +355,93 @@ module Google
|
|
505
355
|
|
506
356
|
# Update properties of this object
|
507
357
|
def update!(**args)
|
508
|
-
@
|
509
|
-
@
|
510
|
-
@
|
511
|
-
@
|
512
|
-
@
|
358
|
+
@access_level = args[:access_level] if args.key?(:access_level)
|
359
|
+
@access_policy = args[:access_policy] if args.key?(:access_policy)
|
360
|
+
@ancestors = args[:ancestors] if args.key?(:ancestors)
|
361
|
+
@asset_type = args[:asset_type] if args.key?(:asset_type)
|
362
|
+
@iam_policy = args[:iam_policy] if args.key?(:iam_policy)
|
363
|
+
@name = args[:name] if args.key?(:name)
|
364
|
+
@org_policy = args[:org_policy] if args.key?(:org_policy)
|
365
|
+
@related_assets = args[:related_assets] if args.key?(:related_assets)
|
366
|
+
@resource = args[:resource] if args.key?(:resource)
|
367
|
+
@service_perimeter = args[:service_perimeter] if args.key?(:service_perimeter)
|
368
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
369
|
+
end
|
370
|
+
end
|
371
|
+
|
372
|
+
# A BigQuery destination for exporting assets to.
|
373
|
+
class GoogleCloudAssetV1p7beta1BigQueryDestination
|
374
|
+
include Google::Apis::Core::Hashable
|
375
|
+
|
376
|
+
# Required. The BigQuery dataset in format "projects/projectId/datasets/
|
377
|
+
# datasetId", to which the snapshot result should be exported. If this dataset
|
378
|
+
# does not exist, the export call returns an INVALID_ARGUMENT error.
|
379
|
+
# Corresponds to the JSON property `dataset`
|
380
|
+
# @return [String]
|
381
|
+
attr_accessor :dataset
|
382
|
+
|
383
|
+
# If the destination table already exists and this flag is `TRUE`, the table
|
384
|
+
# will be overwritten by the contents of assets snapshot. If the flag is `FALSE`
|
385
|
+
# or unset and the destination table already exists, the export call returns an
|
386
|
+
# INVALID_ARGUMEMT error.
|
387
|
+
# Corresponds to the JSON property `force`
|
388
|
+
# @return [Boolean]
|
389
|
+
attr_accessor :force
|
390
|
+
alias_method :force?, :force
|
391
|
+
|
392
|
+
# Specifications of BigQuery partitioned table as export destination.
|
393
|
+
# Corresponds to the JSON property `partitionSpec`
|
394
|
+
# @return [Google::Apis::CloudassetV1p7beta1::GoogleCloudAssetV1p7beta1PartitionSpec]
|
395
|
+
attr_accessor :partition_spec
|
396
|
+
|
397
|
+
# If this flag is `TRUE`, the snapshot results will be written to one or
|
398
|
+
# multiple tables, each of which contains results of one asset type. The [force]
|
399
|
+
# and [partition_spec] fields will apply to each of them. Field [table] will be
|
400
|
+
# concatenated with "_" and the asset type names (see https://cloud.google.com/
|
401
|
+
# asset-inventory/docs/supported-asset-types for supported asset types) to
|
402
|
+
# construct per-asset-type table names, in which all non-alphanumeric characters
|
403
|
+
# like "." and "/" will be substituted by "_". Example: if field [table] is "
|
404
|
+
# mytable" and snapshot results contain "storage.googleapis.com/Bucket" assets,
|
405
|
+
# the corresponding table name will be "mytable_storage_googleapis_com_Bucket".
|
406
|
+
# If any of these tables does not exist, a new table with the concatenated name
|
407
|
+
# will be created. When [content_type] in the ExportAssetsRequest is `RESOURCE`,
|
408
|
+
# the schema of each table will include RECORD-type columns mapped to the nested
|
409
|
+
# fields in the Asset.resource.data field of that asset type (up to the 15
|
410
|
+
# nested level BigQuery supports (https://cloud.google.com/bigquery/docs/nested-
|
411
|
+
# repeated#limitations)). The fields in >15 nested levels will be stored in JSON
|
412
|
+
# format string as a child column of its parent RECORD column. If error occurs
|
413
|
+
# when exporting to any table, the whole export call will return an error but
|
414
|
+
# the export results that already succeed will persist. Example: if exporting to
|
415
|
+
# table_type_A succeeds when exporting to table_type_B fails during one export
|
416
|
+
# call, the results in table_type_A will persist and there will not be partial
|
417
|
+
# results persisting in a table.
|
418
|
+
# Corresponds to the JSON property `separateTablesPerAssetType`
|
419
|
+
# @return [Boolean]
|
420
|
+
attr_accessor :separate_tables_per_asset_type
|
421
|
+
alias_method :separate_tables_per_asset_type?, :separate_tables_per_asset_type
|
422
|
+
|
423
|
+
# Required. The BigQuery table to which the snapshot result should be written.
|
424
|
+
# If this table does not exist, a new table with the given name will be created.
|
425
|
+
# Corresponds to the JSON property `table`
|
426
|
+
# @return [String]
|
427
|
+
attr_accessor :table
|
428
|
+
|
429
|
+
def initialize(**args)
|
430
|
+
update!(**args)
|
431
|
+
end
|
432
|
+
|
433
|
+
# Update properties of this object
|
434
|
+
def update!(**args)
|
435
|
+
@dataset = args[:dataset] if args.key?(:dataset)
|
436
|
+
@force = args[:force] if args.key?(:force)
|
437
|
+
@partition_spec = args[:partition_spec] if args.key?(:partition_spec)
|
438
|
+
@separate_tables_per_asset_type = args[:separate_tables_per_asset_type] if args.key?(:separate_tables_per_asset_type)
|
439
|
+
@table = args[:table] if args.key?(:table)
|
513
440
|
end
|
514
441
|
end
|
515
442
|
|
516
443
|
# Export asset request.
|
517
|
-
class
|
444
|
+
class GoogleCloudAssetV1p7beta1ExportAssetsRequest
|
518
445
|
include Google::Apis::Core::Hashable
|
519
446
|
|
520
447
|
# A list of asset types to take a snapshot for. For example: "compute.googleapis.
|
@@ -540,7 +467,7 @@ module Google
|
|
540
467
|
|
541
468
|
# Output configuration for export assets destination.
|
542
469
|
# Corresponds to the JSON property `outputConfig`
|
543
|
-
# @return [Google::Apis::CloudassetV1p7beta1::
|
470
|
+
# @return [Google::Apis::CloudassetV1p7beta1::GoogleCloudAssetV1p7beta1OutputConfig]
|
544
471
|
attr_accessor :output_config
|
545
472
|
|
546
473
|
# Timestamp to take an asset snapshot. This can only be set to a timestamp
|
@@ -552,6 +479,19 @@ module Google
|
|
552
479
|
# @return [String]
|
553
480
|
attr_accessor :read_time
|
554
481
|
|
482
|
+
# A list of relationship types to export, for example: `
|
483
|
+
# INSTANCE_TO_INSTANCEGROUP`. This field should only be specified if
|
484
|
+
# content_type=RELATIONSHIP. If specified, it will snapshot [asset_types]'
|
485
|
+
# specified relationships, or give errors if any relationship_types' supported
|
486
|
+
# types are not in [asset_types]. If not specified, it will snapshot all [
|
487
|
+
# asset_types]' supported relationships. An unspecified [asset_types] field
|
488
|
+
# means all supported asset_types. See [Introduction to Cloud Asset Inventory](
|
489
|
+
# https://cloud.google.com/asset-inventory/docs/overview) for all supported
|
490
|
+
# asset types and relationship types.
|
491
|
+
# Corresponds to the JSON property `relationshipTypes`
|
492
|
+
# @return [Array<String>]
|
493
|
+
attr_accessor :relationship_types
|
494
|
+
|
555
495
|
def initialize(**args)
|
556
496
|
update!(**args)
|
557
497
|
end
|
@@ -562,53 +502,122 @@ module Google
|
|
562
502
|
@content_type = args[:content_type] if args.key?(:content_type)
|
563
503
|
@output_config = args[:output_config] if args.key?(:output_config)
|
564
504
|
@read_time = args[:read_time] if args.key?(:read_time)
|
505
|
+
@relationship_types = args[:relationship_types] if args.key?(:relationship_types)
|
565
506
|
end
|
566
507
|
end
|
567
508
|
|
568
|
-
#
|
569
|
-
|
570
|
-
# identifier.
|
571
|
-
class ExportSetting
|
509
|
+
# A Cloud Storage location.
|
510
|
+
class GoogleCloudAssetV1p7beta1GcsDestination
|
572
511
|
include Google::Apis::Core::Hashable
|
573
512
|
|
574
|
-
#
|
575
|
-
#
|
576
|
-
#
|
577
|
-
#
|
578
|
-
#
|
579
|
-
#
|
580
|
-
|
581
|
-
# does not match any supported asset type, an INVALID_ARGUMENT error will be
|
582
|
-
# returned. If specified, only matching assets will be returned. See [
|
583
|
-
# Introduction to Cloud Asset Inventory](https://cloud.google.com/asset-
|
584
|
-
# inventory/docs/overview) for all supported asset types.
|
585
|
-
# Corresponds to the JSON property `assetTypes`
|
586
|
-
# @return [Array<String>]
|
587
|
-
attr_accessor :asset_types
|
513
|
+
# The uri of the Cloud Storage object. It's the same uri that is used by gsutil.
|
514
|
+
# Example: "gs://bucket_name/object_name". See [Viewing and Editing Object
|
515
|
+
# Metadata](https://cloud.google.com/storage/docs/viewing-editing-metadata) for
|
516
|
+
# more information.
|
517
|
+
# Corresponds to the JSON property `uri`
|
518
|
+
# @return [String]
|
519
|
+
attr_accessor :uri
|
588
520
|
|
589
|
-
#
|
590
|
-
#
|
591
|
-
#
|
592
|
-
|
521
|
+
# The uri prefix of all generated Cloud Storage objects. Example: "gs://
|
522
|
+
# bucket_name/object_name_prefix". Each object uri is in format: "gs://
|
523
|
+
# bucket_name/object_name_prefix/`ASSET_TYPE`/`SHARD_NUMBER` and only contains
|
524
|
+
# assets for that type. starts from 0. Example: "gs://bucket_name/
|
525
|
+
# object_name_prefix/compute.googleapis.com/Disk/0" is the first shard of output
|
526
|
+
# objects containing all compute.googleapis.com/Disk assets. An INVALID_ARGUMENT
|
527
|
+
# error will be returned if file with the same name "gs://bucket_name/
|
528
|
+
# object_name_prefix" already exists.
|
529
|
+
# Corresponds to the JSON property `uriPrefix`
|
530
|
+
# @return [String]
|
531
|
+
attr_accessor :uri_prefix
|
593
532
|
|
594
|
-
|
595
|
-
|
596
|
-
|
533
|
+
def initialize(**args)
|
534
|
+
update!(**args)
|
535
|
+
end
|
536
|
+
|
537
|
+
# Update properties of this object
|
538
|
+
def update!(**args)
|
539
|
+
@uri = args[:uri] if args.key?(:uri)
|
540
|
+
@uri_prefix = args[:uri_prefix] if args.key?(:uri_prefix)
|
541
|
+
end
|
542
|
+
end
|
543
|
+
|
544
|
+
# Output configuration for export assets destination.
|
545
|
+
class GoogleCloudAssetV1p7beta1OutputConfig
|
546
|
+
include Google::Apis::Core::Hashable
|
547
|
+
|
548
|
+
# A BigQuery destination for exporting assets to.
|
549
|
+
# Corresponds to the JSON property `bigqueryDestination`
|
550
|
+
# @return [Google::Apis::CloudassetV1p7beta1::GoogleCloudAssetV1p7beta1BigQueryDestination]
|
551
|
+
attr_accessor :bigquery_destination
|
552
|
+
|
553
|
+
# A Cloud Storage location.
|
554
|
+
# Corresponds to the JSON property `gcsDestination`
|
555
|
+
# @return [Google::Apis::CloudassetV1p7beta1::GoogleCloudAssetV1p7beta1GcsDestination]
|
556
|
+
attr_accessor :gcs_destination
|
557
|
+
|
558
|
+
def initialize(**args)
|
559
|
+
update!(**args)
|
560
|
+
end
|
561
|
+
|
562
|
+
# Update properties of this object
|
563
|
+
def update!(**args)
|
564
|
+
@bigquery_destination = args[:bigquery_destination] if args.key?(:bigquery_destination)
|
565
|
+
@gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination)
|
566
|
+
end
|
567
|
+
end
|
568
|
+
|
569
|
+
# Specifications of BigQuery partitioned table as export destination.
|
570
|
+
class GoogleCloudAssetV1p7beta1PartitionSpec
|
571
|
+
include Google::Apis::Core::Hashable
|
572
|
+
|
573
|
+
# The partition key for BigQuery partitioned table.
|
574
|
+
# Corresponds to the JSON property `partitionKey`
|
597
575
|
# @return [String]
|
598
|
-
attr_accessor :
|
576
|
+
attr_accessor :partition_key
|
599
577
|
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
attr_accessor :gcs_setting
|
578
|
+
def initialize(**args)
|
579
|
+
update!(**args)
|
580
|
+
end
|
604
581
|
|
605
|
-
#
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
582
|
+
# Update properties of this object
|
583
|
+
def update!(**args)
|
584
|
+
@partition_key = args[:partition_key] if args.key?(:partition_key)
|
585
|
+
end
|
586
|
+
end
|
587
|
+
|
588
|
+
# An asset identify in Google Cloud which contains its name, type and ancestors.
|
589
|
+
# An asset can be any resource in the Google Cloud [resource hierarchy](https://
|
590
|
+
# cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy), a
|
591
|
+
# resource outside the Google Cloud resource hierarchy (such as Google
|
592
|
+
# Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy).
|
593
|
+
# See [Supported asset types](https://cloud.google.com/asset-inventory/docs/
|
594
|
+
# supported-asset-types) for more information.
|
595
|
+
class GoogleCloudAssetV1p7beta1RelatedAsset
|
596
|
+
include Google::Apis::Core::Hashable
|
597
|
+
|
598
|
+
# The ancestors of an asset in Google Cloud [resource hierarchy](https://cloud.
|
599
|
+
# google.com/resource-manager/docs/cloud-platform-resource-hierarchy),
|
600
|
+
# represented as a list of relative resource names. An ancestry path starts with
|
601
|
+
# the closest ancestor in the hierarchy and ends at root. Example: `["projects/
|
602
|
+
# 123456789", "folders/5432", "organizations/1234"]`
|
603
|
+
# Corresponds to the JSON property `ancestors`
|
604
|
+
# @return [Array<String>]
|
605
|
+
attr_accessor :ancestors
|
606
|
+
|
607
|
+
# The full name of the asset. Example: `//compute.googleapis.com/projects/
|
608
|
+
# my_project_123/zones/zone1/instances/instance1` See [Resource names](https://
|
609
|
+
# cloud.google.com/apis/design/resource_names#full_resource_name) for more
|
610
|
+
# information.
|
611
|
+
# Corresponds to the JSON property `asset`
|
610
612
|
# @return [String]
|
611
|
-
attr_accessor :
|
613
|
+
attr_accessor :asset
|
614
|
+
|
615
|
+
# The type of the asset. Example: `compute.googleapis.com/Disk` See [Supported
|
616
|
+
# asset types](https://cloud.google.com/asset-inventory/docs/supported-asset-
|
617
|
+
# types) for more information.
|
618
|
+
# Corresponds to the JSON property `assetType`
|
619
|
+
# @return [String]
|
620
|
+
attr_accessor :asset_type
|
612
621
|
|
613
622
|
def initialize(**args)
|
614
623
|
update!(**args)
|
@@ -616,54 +625,63 @@ module Google
|
|
616
625
|
|
617
626
|
# Update properties of this object
|
618
627
|
def update!(**args)
|
619
|
-
@
|
620
|
-
@
|
621
|
-
@
|
622
|
-
@gcs_setting = args[:gcs_setting] if args.key?(:gcs_setting)
|
623
|
-
@name = args[:name] if args.key?(:name)
|
628
|
+
@ancestors = args[:ancestors] if args.key?(:ancestors)
|
629
|
+
@asset = args[:asset] if args.key?(:asset)
|
630
|
+
@asset_type = args[:asset_type] if args.key?(:asset_type)
|
624
631
|
end
|
625
632
|
end
|
626
633
|
|
627
|
-
#
|
628
|
-
|
629
|
-
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
630
|
-
# "Summary size limit" description: "Determines if a summary is less than 100
|
631
|
-
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
632
|
-
# Requestor is owner" description: "Determines if requestor is the document
|
633
|
-
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
634
|
-
# Logic): title: "Public documents" description: "Determine whether the document
|
635
|
-
# should be publicly visible" expression: "document.type != 'private' &&
|
636
|
-
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
637
|
-
# string" description: "Create a notification string with a timestamp."
|
638
|
-
# expression: "'New message received at ' + string(document.create_time)" The
|
639
|
-
# exact variables and functions that may be referenced within an expression are
|
640
|
-
# determined by the service that evaluates it. See the service documentation for
|
641
|
-
# additional information.
|
642
|
-
class Expr
|
634
|
+
# The detailed related assets with the `relationship_type`.
|
635
|
+
class GoogleCloudAssetV1p7beta1RelatedAssets
|
643
636
|
include Google::Apis::Core::Hashable
|
644
637
|
|
645
|
-
#
|
646
|
-
#
|
647
|
-
#
|
638
|
+
# The peer resources of the relationship.
|
639
|
+
# Corresponds to the JSON property `assets`
|
640
|
+
# @return [Array<Google::Apis::CloudassetV1p7beta1::GoogleCloudAssetV1p7beta1RelatedAsset>]
|
641
|
+
attr_accessor :assets
|
642
|
+
|
643
|
+
# The relationship attributes which include `type`, `source_resource_type`, `
|
644
|
+
# target_resource_type` and `action`.
|
645
|
+
# Corresponds to the JSON property `relationshipAttributes`
|
646
|
+
# @return [Google::Apis::CloudassetV1p7beta1::GoogleCloudAssetV1p7beta1RelationshipAttributes]
|
647
|
+
attr_accessor :relationship_attributes
|
648
|
+
|
649
|
+
def initialize(**args)
|
650
|
+
update!(**args)
|
651
|
+
end
|
652
|
+
|
653
|
+
# Update properties of this object
|
654
|
+
def update!(**args)
|
655
|
+
@assets = args[:assets] if args.key?(:assets)
|
656
|
+
@relationship_attributes = args[:relationship_attributes] if args.key?(:relationship_attributes)
|
657
|
+
end
|
658
|
+
end
|
659
|
+
|
660
|
+
# The relationship attributes which include `type`, `source_resource_type`, `
|
661
|
+
# target_resource_type` and `action`.
|
662
|
+
class GoogleCloudAssetV1p7beta1RelationshipAttributes
|
663
|
+
include Google::Apis::Core::Hashable
|
664
|
+
|
665
|
+
# The detail of the relationship, e.g. `contains`, `attaches`
|
666
|
+
# Corresponds to the JSON property `action`
|
648
667
|
# @return [String]
|
649
|
-
attr_accessor :
|
668
|
+
attr_accessor :action
|
650
669
|
|
651
|
-
#
|
652
|
-
# Corresponds to the JSON property `
|
670
|
+
# The source asset type. Example: `compute.googleapis.com/Instance`
|
671
|
+
# Corresponds to the JSON property `sourceResourceType`
|
653
672
|
# @return [String]
|
654
|
-
attr_accessor :
|
673
|
+
attr_accessor :source_resource_type
|
655
674
|
|
656
|
-
#
|
657
|
-
#
|
658
|
-
# Corresponds to the JSON property `location`
|
675
|
+
# The target asset type. Example: `compute.googleapis.com/Disk`
|
676
|
+
# Corresponds to the JSON property `targetResourceType`
|
659
677
|
# @return [String]
|
660
|
-
attr_accessor :
|
678
|
+
attr_accessor :target_resource_type
|
661
679
|
|
662
|
-
#
|
663
|
-
#
|
664
|
-
# Corresponds to the JSON property `
|
680
|
+
# The unique identifier of the relationship type. Example: `
|
681
|
+
# INSTANCE_TO_INSTANCEGROUP`
|
682
|
+
# Corresponds to the JSON property `type`
|
665
683
|
# @return [String]
|
666
|
-
attr_accessor :
|
684
|
+
attr_accessor :type
|
667
685
|
|
668
686
|
def initialize(**args)
|
669
687
|
update!(**args)
|
@@ -671,68 +689,67 @@ module Google
|
|
671
689
|
|
672
690
|
# Update properties of this object
|
673
691
|
def update!(**args)
|
674
|
-
@
|
675
|
-
@
|
676
|
-
@
|
677
|
-
@
|
692
|
+
@action = args[:action] if args.key?(:action)
|
693
|
+
@source_resource_type = args[:source_resource_type] if args.key?(:source_resource_type)
|
694
|
+
@target_resource_type = args[:target_resource_type] if args.key?(:target_resource_type)
|
695
|
+
@type = args[:type] if args.key?(:type)
|
678
696
|
end
|
679
697
|
end
|
680
698
|
|
681
|
-
# A Cloud
|
682
|
-
class
|
699
|
+
# A representation of a Google Cloud resource.
|
700
|
+
class GoogleCloudAssetV1p7beta1Resource
|
683
701
|
include Google::Apis::Core::Hashable
|
684
702
|
|
685
|
-
# The
|
686
|
-
#
|
687
|
-
#
|
688
|
-
#
|
689
|
-
|
690
|
-
# example: the real destination for an scheduled snapshot is: gs://bucket_name/`
|
691
|
-
# YYYY`/`MM`/`DD`/snapshot/`HHMMSS`/file
|
692
|
-
# Corresponds to the JSON property `uri`
|
693
|
-
# @return [String]
|
694
|
-
attr_accessor :uri
|
703
|
+
# The content of the resource, in which some sensitive fields are removed and
|
704
|
+
# may not be present.
|
705
|
+
# Corresponds to the JSON property `data`
|
706
|
+
# @return [Hash<String,Object>]
|
707
|
+
attr_accessor :data
|
695
708
|
|
696
|
-
# The
|
697
|
-
#
|
698
|
-
#
|
699
|
-
#
|
700
|
-
#
|
701
|
-
# objects containing all compute.googleapis.com/Disk assets. An INVALID_ARGUMENT
|
702
|
-
# error will be returned if file with the same name "gs://bucket_name/
|
703
|
-
# object_name_prefix" already exists. In the case of scheduled export, a path
|
704
|
-
# indiciating when the export happens will be appended. For example: the real
|
705
|
-
# destination for an scheduled snapshot is: gs://bucket_name/object_name_prefix/`
|
706
|
-
# YYYY`/`MM`/`DD`/snapshot/`HHMMSS`/`ASSET_TYPE`/`SHARD_NUMBER`
|
707
|
-
# Corresponds to the JSON property `uriPrefix`
|
709
|
+
# The URL of the discovery document containing the resource's JSON schema.
|
710
|
+
# Example: `https://www.googleapis.com/discovery/v1/apis/compute/v1/rest` This
|
711
|
+
# value is unspecified for resources that do not have an API based on a
|
712
|
+
# discovery document, such as Cloud Bigtable.
|
713
|
+
# Corresponds to the JSON property `discoveryDocumentUri`
|
708
714
|
# @return [String]
|
709
|
-
attr_accessor :
|
715
|
+
attr_accessor :discovery_document_uri
|
710
716
|
|
711
|
-
|
712
|
-
|
713
|
-
|
717
|
+
# The JSON schema name listed in the discovery document. Example: `Project` This
|
718
|
+
# value is unspecified for resources that do not have an API based on a
|
719
|
+
# discovery document, such as Cloud Bigtable.
|
720
|
+
# Corresponds to the JSON property `discoveryName`
|
721
|
+
# @return [String]
|
722
|
+
attr_accessor :discovery_name
|
714
723
|
|
715
|
-
#
|
716
|
-
|
717
|
-
|
718
|
-
|
719
|
-
|
720
|
-
end
|
724
|
+
# The location of the resource in Google Cloud, such as its zone and region. For
|
725
|
+
# more information, see https://cloud.google.com/about/locations/.
|
726
|
+
# Corresponds to the JSON property `location`
|
727
|
+
# @return [String]
|
728
|
+
attr_accessor :location
|
721
729
|
|
722
|
-
|
723
|
-
|
724
|
-
|
730
|
+
# The full name of the immediate parent of this resource. See [Resource Names](
|
731
|
+
# https://cloud.google.com/apis/design/resource_names#full_resource_name) for
|
732
|
+
# more information. For Google Cloud assets, this value is the parent resource
|
733
|
+
# defined in the [Cloud IAM policy hierarchy](https://cloud.google.com/iam/docs/
|
734
|
+
# overview#policy_hierarchy). Example: `//cloudresourcemanager.googleapis.com/
|
735
|
+
# projects/my_project_123` For third-party assets, this field may be set
|
736
|
+
# differently.
|
737
|
+
# Corresponds to the JSON property `parent`
|
738
|
+
# @return [String]
|
739
|
+
attr_accessor :parent
|
725
740
|
|
726
|
-
#
|
727
|
-
#
|
728
|
-
#
|
729
|
-
|
741
|
+
# The REST URL for accessing the resource. An HTTP `GET` request using this URL
|
742
|
+
# returns the resource itself. Example: `https://cloudresourcemanager.googleapis.
|
743
|
+
# com/v1/projects/my-project-123` This value is unspecified for resources
|
744
|
+
# without a REST API.
|
745
|
+
# Corresponds to the JSON property `resourceUrl`
|
746
|
+
# @return [String]
|
747
|
+
attr_accessor :resource_url
|
730
748
|
|
731
|
-
#
|
732
|
-
#
|
733
|
-
#
|
734
|
-
|
735
|
-
attr_accessor :snapshot_schedule
|
749
|
+
# The API version. Example: `v1`
|
750
|
+
# Corresponds to the JSON property `version`
|
751
|
+
# @return [String]
|
752
|
+
attr_accessor :version
|
736
753
|
|
737
754
|
def initialize(**args)
|
738
755
|
update!(**args)
|
@@ -740,8 +757,13 @@ module Google
|
|
740
757
|
|
741
758
|
# Update properties of this object
|
742
759
|
def update!(**args)
|
743
|
-
@
|
744
|
-
@
|
760
|
+
@data = args[:data] if args.key?(:data)
|
761
|
+
@discovery_document_uri = args[:discovery_document_uri] if args.key?(:discovery_document_uri)
|
762
|
+
@discovery_name = args[:discovery_name] if args.key?(:discovery_name)
|
763
|
+
@location = args[:location] if args.key?(:location)
|
764
|
+
@parent = args[:parent] if args.key?(:parent)
|
765
|
+
@resource_url = args[:resource_url] if args.key?(:resource_url)
|
766
|
+
@version = args[:version] if args.key?(:version)
|
745
767
|
end
|
746
768
|
end
|
747
769
|
|
@@ -1350,9 +1372,9 @@ module Google
|
|
1350
1372
|
|
1351
1373
|
# Defines the conditions under which an EgressPolicy matches a request.
|
1352
1374
|
# Conditions based on information about the source of the request. Note that if
|
1353
|
-
# the destination of the request is protected by a ServicePerimeter, then
|
1354
|
-
# ServicePerimeter must have an IngressPolicy which allows access in order
|
1355
|
-
# this request to succeed.
|
1375
|
+
# the destination of the request is also protected by a ServicePerimeter, then
|
1376
|
+
# that ServicePerimeter must have an IngressPolicy which allows access in order
|
1377
|
+
# for this request to succeed.
|
1356
1378
|
class GoogleIdentityAccesscontextmanagerV1EgressFrom
|
1357
1379
|
include Google::Apis::Core::Hashable
|
1358
1380
|
|
@@ -1398,9 +1420,9 @@ module Google
|
|
1398
1420
|
|
1399
1421
|
# Defines the conditions under which an EgressPolicy matches a request.
|
1400
1422
|
# Conditions based on information about the source of the request. Note that if
|
1401
|
-
# the destination of the request is protected by a ServicePerimeter, then
|
1402
|
-
# ServicePerimeter must have an IngressPolicy which allows access in order
|
1403
|
-
# this request to succeed.
|
1423
|
+
# the destination of the request is also protected by a ServicePerimeter, then
|
1424
|
+
# that ServicePerimeter must have an IngressPolicy which allows access in order
|
1425
|
+
# for this request to succeed.
|
1404
1426
|
# Corresponds to the JSON property `egressFrom`
|
1405
1427
|
# @return [Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1EgressFrom]
|
1406
1428
|
attr_accessor :egress_from
|
@@ -1408,8 +1430,10 @@ module Google
|
|
1408
1430
|
# Defines the conditions under which an EgressPolicy matches a request.
|
1409
1431
|
# Conditions are based on information about the ApiOperation intended to be
|
1410
1432
|
# performed on the `resources` specified. Note that if the destination of the
|
1411
|
-
# request is protected by a ServicePerimeter, then that ServicePerimeter
|
1412
|
-
# have an IngressPolicy which allows access in order for this request to
|
1433
|
+
# request is also protected by a ServicePerimeter, then that ServicePerimeter
|
1434
|
+
# must have an IngressPolicy which allows access in order for this request to
|
1435
|
+
# succeed. The request must match `operations` AND `resources` fields in order
|
1436
|
+
# to be allowed egress out of the perimeter.
|
1413
1437
|
# Corresponds to the JSON property `egressTo`
|
1414
1438
|
# @return [Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1EgressTo]
|
1415
1439
|
attr_accessor :egress_to
|
@@ -1428,21 +1452,25 @@ module Google
|
|
1428
1452
|
# Defines the conditions under which an EgressPolicy matches a request.
|
1429
1453
|
# Conditions are based on information about the ApiOperation intended to be
|
1430
1454
|
# performed on the `resources` specified. Note that if the destination of the
|
1431
|
-
# request is protected by a ServicePerimeter, then that ServicePerimeter
|
1432
|
-
# have an IngressPolicy which allows access in order for this request to
|
1455
|
+
# request is also protected by a ServicePerimeter, then that ServicePerimeter
|
1456
|
+
# must have an IngressPolicy which allows access in order for this request to
|
1457
|
+
# succeed. The request must match `operations` AND `resources` fields in order
|
1458
|
+
# to be allowed egress out of the perimeter.
|
1433
1459
|
class GoogleIdentityAccesscontextmanagerV1EgressTo
|
1434
1460
|
include Google::Apis::Core::Hashable
|
1435
1461
|
|
1436
|
-
# A list of ApiOperations
|
1437
|
-
# it
|
1462
|
+
# A list of ApiOperations allowed to be performed by the sources specified in
|
1463
|
+
# the corresponding EgressFrom. A request matches if it uses an operation/
|
1464
|
+
# service in this list.
|
1438
1465
|
# Corresponds to the JSON property `operations`
|
1439
1466
|
# @return [Array<Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1ApiOperation>]
|
1440
1467
|
attr_accessor :operations
|
1441
1468
|
|
1442
|
-
# A list of resources, currently only projects in the form `projects/`, that
|
1443
|
-
#
|
1444
|
-
#
|
1445
|
-
#
|
1469
|
+
# A list of resources, currently only projects in the form `projects/`, that are
|
1470
|
+
# allowed to be accessed by sources defined in the corresponding EgressFrom. A
|
1471
|
+
# request matches if it contains a resource in this list. If `*` is specified
|
1472
|
+
# for `resources`, then this EgressTo rule will authorize access to all
|
1473
|
+
# resources outside the perimeter.
|
1446
1474
|
# Corresponds to the JSON property `resources`
|
1447
1475
|
# @return [Array<String>]
|
1448
1476
|
attr_accessor :resources
|
@@ -1459,7 +1487,9 @@ module Google
|
|
1459
1487
|
end
|
1460
1488
|
|
1461
1489
|
# Defines the conditions under which an IngressPolicy matches a request.
|
1462
|
-
# Conditions are based on information about the source of the request.
|
1490
|
+
# Conditions are based on information about the source of the request. The
|
1491
|
+
# request must satisfy what is defined in `sources` AND identity related fields
|
1492
|
+
# in order to match.
|
1463
1493
|
class GoogleIdentityAccesscontextmanagerV1IngressFrom
|
1464
1494
|
include Google::Apis::Core::Hashable
|
1465
1495
|
|
@@ -1508,14 +1538,17 @@ module Google
|
|
1508
1538
|
include Google::Apis::Core::Hashable
|
1509
1539
|
|
1510
1540
|
# Defines the conditions under which an IngressPolicy matches a request.
|
1511
|
-
# Conditions are based on information about the source of the request.
|
1541
|
+
# Conditions are based on information about the source of the request. The
|
1542
|
+
# request must satisfy what is defined in `sources` AND identity related fields
|
1543
|
+
# in order to match.
|
1512
1544
|
# Corresponds to the JSON property `ingressFrom`
|
1513
1545
|
# @return [Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1IngressFrom]
|
1514
1546
|
attr_accessor :ingress_from
|
1515
1547
|
|
1516
1548
|
# Defines the conditions under which an IngressPolicy matches a request.
|
1517
1549
|
# Conditions are based on information about the ApiOperation intended to be
|
1518
|
-
# performed on the
|
1550
|
+
# performed on the target resource of the request. The request must satisfy what
|
1551
|
+
# is defined in `operations` AND `resources` in order to match.
|
1519
1552
|
# Corresponds to the JSON property `ingressTo`
|
1520
1553
|
# @return [Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1IngressTo]
|
1521
1554
|
attr_accessor :ingress_to
|
@@ -1541,7 +1574,8 @@ module Google
|
|
1541
1574
|
# cause an error. If no AccessLevel names are listed, resources within the
|
1542
1575
|
# perimeter can only be accessed via Google Cloud calls with request origins
|
1543
1576
|
# within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`
|
1544
|
-
# . If `*` is specified
|
1577
|
+
# . If a single `*` is specified for `access_level`, then all IngressSources
|
1578
|
+
# will be allowed.
|
1545
1579
|
# Corresponds to the JSON property `accessLevel`
|
1546
1580
|
# @return [String]
|
1547
1581
|
attr_accessor :access_level
|
@@ -1569,22 +1603,21 @@ module Google
|
|
1569
1603
|
|
1570
1604
|
# Defines the conditions under which an IngressPolicy matches a request.
|
1571
1605
|
# Conditions are based on information about the ApiOperation intended to be
|
1572
|
-
# performed on the
|
1606
|
+
# performed on the target resource of the request. The request must satisfy what
|
1607
|
+
# is defined in `operations` AND `resources` in order to match.
|
1573
1608
|
class GoogleIdentityAccesscontextmanagerV1IngressTo
|
1574
1609
|
include Google::Apis::Core::Hashable
|
1575
1610
|
|
1576
|
-
# A list of ApiOperations the sources specified in
|
1577
|
-
#
|
1611
|
+
# A list of ApiOperations allowed to be performed by the sources specified in
|
1612
|
+
# corresponding IngressFrom in this ServicePerimeter.
|
1578
1613
|
# Corresponds to the JSON property `operations`
|
1579
1614
|
# @return [Array<Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1ApiOperation>]
|
1580
1615
|
attr_accessor :operations
|
1581
1616
|
|
1582
1617
|
# A list of resources, currently only projects in the form `projects/`,
|
1583
1618
|
# protected by this ServicePerimeter that are allowed to be accessed by sources
|
1584
|
-
# defined in the corresponding IngressFrom.
|
1585
|
-
#
|
1586
|
-
# rule will authorize access to all resources inside the perimeter, provided
|
1587
|
-
# that the request also matches the `operations` field.
|
1619
|
+
# defined in the corresponding IngressFrom. If a single `*` is specified, then
|
1620
|
+
# access to all resources inside the perimeter are allowed.
|
1588
1621
|
# Corresponds to the JSON property `resources`
|
1589
1622
|
# @return [Array<String>]
|
1590
1623
|
attr_accessor :resources
|
@@ -1838,93 +1871,6 @@ module Google
|
|
1838
1871
|
end
|
1839
1872
|
end
|
1840
1873
|
|
1841
|
-
# Inventory Settings. There is only one inventory settings for a given
|
1842
|
-
# organization, folder or project. Users can update inventory settings using
|
1843
|
-
# specific API, but cannot create or delete.
|
1844
|
-
class InventorySettings
|
1845
|
-
include Google::Apis::Core::Hashable
|
1846
|
-
|
1847
|
-
# Output only. A list of export settings.
|
1848
|
-
# Corresponds to the JSON property `exportSettings`
|
1849
|
-
# @return [Array<String>]
|
1850
|
-
attr_accessor :export_settings
|
1851
|
-
|
1852
|
-
# Required. The format will be projects/`PROJECT_NUMBER`/inventorySettings or
|
1853
|
-
# folders/`FOLDER_NUMBER`/inventorySettings or organizations/`
|
1854
|
-
# ORGANIZATION_NUMBER`/inventorySettings
|
1855
|
-
# Corresponds to the JSON property `name`
|
1856
|
-
# @return [String]
|
1857
|
-
attr_accessor :name
|
1858
|
-
|
1859
|
-
def initialize(**args)
|
1860
|
-
update!(**args)
|
1861
|
-
end
|
1862
|
-
|
1863
|
-
# Update properties of this object
|
1864
|
-
def update!(**args)
|
1865
|
-
@export_settings = args[:export_settings] if args.key?(:export_settings)
|
1866
|
-
@name = args[:name] if args.key?(:name)
|
1867
|
-
end
|
1868
|
-
end
|
1869
|
-
|
1870
|
-
# ListAssets response.
|
1871
|
-
class ListAssetUpdatesResponse
|
1872
|
-
include Google::Apis::Core::Hashable
|
1873
|
-
|
1874
|
-
# Asset updates in the time window.
|
1875
|
-
# Corresponds to the JSON property `assetUpdates`
|
1876
|
-
# @return [Array<Google::Apis::CloudassetV1p7beta1::Asset>]
|
1877
|
-
attr_accessor :asset_updates
|
1878
|
-
|
1879
|
-
# Token to retrieve the next page of results. Set to empty if there are no
|
1880
|
-
# remaining results.
|
1881
|
-
# Corresponds to the JSON property `nextPageToken`
|
1882
|
-
# @return [String]
|
1883
|
-
attr_accessor :next_page_token
|
1884
|
-
|
1885
|
-
# Time window configuration for asset updates requests.
|
1886
|
-
# Corresponds to the JSON property `updateTimeWindow`
|
1887
|
-
# @return [Google::Apis::CloudassetV1p7beta1::UpdateTimeWindow]
|
1888
|
-
attr_accessor :update_time_window
|
1889
|
-
|
1890
|
-
def initialize(**args)
|
1891
|
-
update!(**args)
|
1892
|
-
end
|
1893
|
-
|
1894
|
-
# Update properties of this object
|
1895
|
-
def update!(**args)
|
1896
|
-
@asset_updates = args[:asset_updates] if args.key?(:asset_updates)
|
1897
|
-
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1898
|
-
@update_time_window = args[:update_time_window] if args.key?(:update_time_window)
|
1899
|
-
end
|
1900
|
-
end
|
1901
|
-
|
1902
|
-
#
|
1903
|
-
class ListExportSettingsResponse
|
1904
|
-
include Google::Apis::Core::Hashable
|
1905
|
-
|
1906
|
-
# A list of export settings.
|
1907
|
-
# Corresponds to the JSON property `exportSettings`
|
1908
|
-
# @return [Array<Google::Apis::CloudassetV1p7beta1::ExportSetting>]
|
1909
|
-
attr_accessor :export_settings
|
1910
|
-
|
1911
|
-
# Token to retrieve the next page of results. Set to empty if there are no
|
1912
|
-
# remaining results.
|
1913
|
-
# Corresponds to the JSON property `nextPageToken`
|
1914
|
-
# @return [String]
|
1915
|
-
attr_accessor :next_page_token
|
1916
|
-
|
1917
|
-
def initialize(**args)
|
1918
|
-
update!(**args)
|
1919
|
-
end
|
1920
|
-
|
1921
|
-
# Update properties of this object
|
1922
|
-
def update!(**args)
|
1923
|
-
@export_settings = args[:export_settings] if args.key?(:export_settings)
|
1924
|
-
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1925
|
-
end
|
1926
|
-
end
|
1927
|
-
|
1928
1874
|
# This resource represents a long-running operation that is the result of a
|
1929
1875
|
# network API call.
|
1930
1876
|
class Operation
|
@@ -1987,50 +1933,6 @@ module Google
|
|
1987
1933
|
end
|
1988
1934
|
end
|
1989
1935
|
|
1990
|
-
# Output configuration for export assets destination.
|
1991
|
-
class OutputConfig
|
1992
|
-
include Google::Apis::Core::Hashable
|
1993
|
-
|
1994
|
-
# A BigQuery destination for exporting assets to.
|
1995
|
-
# Corresponds to the JSON property `bigqueryDestination`
|
1996
|
-
# @return [Google::Apis::CloudassetV1p7beta1::BigQueryDestination]
|
1997
|
-
attr_accessor :bigquery_destination
|
1998
|
-
|
1999
|
-
# A Cloud Storage location.
|
2000
|
-
# Corresponds to the JSON property `gcsDestination`
|
2001
|
-
# @return [Google::Apis::CloudassetV1p7beta1::GcsDestination]
|
2002
|
-
attr_accessor :gcs_destination
|
2003
|
-
|
2004
|
-
def initialize(**args)
|
2005
|
-
update!(**args)
|
2006
|
-
end
|
2007
|
-
|
2008
|
-
# Update properties of this object
|
2009
|
-
def update!(**args)
|
2010
|
-
@bigquery_destination = args[:bigquery_destination] if args.key?(:bigquery_destination)
|
2011
|
-
@gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination)
|
2012
|
-
end
|
2013
|
-
end
|
2014
|
-
|
2015
|
-
# Specifications of BigQuery partitioned table as export destination.
|
2016
|
-
class PartitionSpec
|
2017
|
-
include Google::Apis::Core::Hashable
|
2018
|
-
|
2019
|
-
# The partition key for BigQuery partitioned table.
|
2020
|
-
# Corresponds to the JSON property `partitionKey`
|
2021
|
-
# @return [String]
|
2022
|
-
attr_accessor :partition_key
|
2023
|
-
|
2024
|
-
def initialize(**args)
|
2025
|
-
update!(**args)
|
2026
|
-
end
|
2027
|
-
|
2028
|
-
# Update properties of this object
|
2029
|
-
def update!(**args)
|
2030
|
-
@partition_key = args[:partition_key] if args.key?(:partition_key)
|
2031
|
-
end
|
2032
|
-
end
|
2033
|
-
|
2034
1936
|
# An Identity and Access Management (IAM) policy, which specifies access
|
2035
1937
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
2036
1938
|
# A `binding` binds one or more `members` to a single `role`. Members can be
|
@@ -2121,110 +2023,6 @@ module Google
|
|
2121
2023
|
end
|
2122
2024
|
end
|
2123
2025
|
|
2124
|
-
# A representation of a Google Cloud resource.
|
2125
|
-
class Resource
|
2126
|
-
include Google::Apis::Core::Hashable
|
2127
|
-
|
2128
|
-
# The content of the resource, in which some sensitive fields are removed and
|
2129
|
-
# may not be present.
|
2130
|
-
# Corresponds to the JSON property `data`
|
2131
|
-
# @return [Hash<String,Object>]
|
2132
|
-
attr_accessor :data
|
2133
|
-
|
2134
|
-
# The URL of the discovery document containing the resource's JSON schema.
|
2135
|
-
# Example: `https://www.googleapis.com/discovery/v1/apis/compute/v1/rest` This
|
2136
|
-
# value is unspecified for resources that do not have an API based on a
|
2137
|
-
# discovery document, such as Cloud Bigtable.
|
2138
|
-
# Corresponds to the JSON property `discoveryDocumentUri`
|
2139
|
-
# @return [String]
|
2140
|
-
attr_accessor :discovery_document_uri
|
2141
|
-
|
2142
|
-
# The JSON schema name listed in the discovery document. Example: `Project` This
|
2143
|
-
# value is unspecified for resources that do not have an API based on a
|
2144
|
-
# discovery document, such as Cloud Bigtable.
|
2145
|
-
# Corresponds to the JSON property `discoveryName`
|
2146
|
-
# @return [String]
|
2147
|
-
attr_accessor :discovery_name
|
2148
|
-
|
2149
|
-
# The location of the resource in Google Cloud, such as its zone and region. For
|
2150
|
-
# more information, see https://cloud.google.com/about/locations/.
|
2151
|
-
# Corresponds to the JSON property `location`
|
2152
|
-
# @return [String]
|
2153
|
-
attr_accessor :location
|
2154
|
-
|
2155
|
-
# The full name of the immediate parent of this resource. See [Resource Names](
|
2156
|
-
# https://cloud.google.com/apis/design/resource_names#full_resource_name) for
|
2157
|
-
# more information. For Google Cloud assets, this value is the parent resource
|
2158
|
-
# defined in the [Cloud IAM policy hierarchy](https://cloud.google.com/iam/docs/
|
2159
|
-
# overview#policy_hierarchy). Example: `//cloudresourcemanager.googleapis.com/
|
2160
|
-
# projects/my_project_123` For third-party assets, this field may be set
|
2161
|
-
# differently.
|
2162
|
-
# Corresponds to the JSON property `parent`
|
2163
|
-
# @return [String]
|
2164
|
-
attr_accessor :parent
|
2165
|
-
|
2166
|
-
# The REST URL for accessing the resource. An HTTP `GET` request using this URL
|
2167
|
-
# returns the resource itself. Example: `https://cloudresourcemanager.googleapis.
|
2168
|
-
# com/v1/projects/my-project-123` This value is unspecified for resources
|
2169
|
-
# without a REST API.
|
2170
|
-
# Corresponds to the JSON property `resourceUrl`
|
2171
|
-
# @return [String]
|
2172
|
-
attr_accessor :resource_url
|
2173
|
-
|
2174
|
-
# The API version. Example: `v1`
|
2175
|
-
# Corresponds to the JSON property `version`
|
2176
|
-
# @return [String]
|
2177
|
-
attr_accessor :version
|
2178
|
-
|
2179
|
-
def initialize(**args)
|
2180
|
-
update!(**args)
|
2181
|
-
end
|
2182
|
-
|
2183
|
-
# Update properties of this object
|
2184
|
-
def update!(**args)
|
2185
|
-
@data = args[:data] if args.key?(:data)
|
2186
|
-
@discovery_document_uri = args[:discovery_document_uri] if args.key?(:discovery_document_uri)
|
2187
|
-
@discovery_name = args[:discovery_name] if args.key?(:discovery_name)
|
2188
|
-
@location = args[:location] if args.key?(:location)
|
2189
|
-
@parent = args[:parent] if args.key?(:parent)
|
2190
|
-
@resource_url = args[:resource_url] if args.key?(:resource_url)
|
2191
|
-
@version = args[:version] if args.key?(:version)
|
2192
|
-
end
|
2193
|
-
end
|
2194
|
-
|
2195
|
-
# Schedule for scheduled export. This is used to configure scheduled export for
|
2196
|
-
# both GCS and BigQuery.
|
2197
|
-
class ScheduleConfig
|
2198
|
-
include Google::Apis::Core::Hashable
|
2199
|
-
|
2200
|
-
# Required. Cron-tab formatted schedule by which the job will execute Format:
|
2201
|
-
# minute, hour, day of month, month, day of week e.g. 0 0 * * WED = every
|
2202
|
-
# Wednesday More examples: https://crontab.guru/examples.html
|
2203
|
-
# Corresponds to the JSON property `crontab`
|
2204
|
-
# @return [String]
|
2205
|
-
attr_accessor :crontab
|
2206
|
-
|
2207
|
-
# Specifies the time zone to be used in interpreting [crontab]. The value of
|
2208
|
-
# this field must be a time zone name from the [tz database](https://en.
|
2209
|
-
# wikipedia.org/wiki/Tz_database). Note that some time zones include a provision
|
2210
|
-
# for daylight savings time. The rules for daylight saving time are determined
|
2211
|
-
# by the chosen tz. For UTC use the string "utc". If a time zone is not
|
2212
|
-
# specified, the default will be in UTC (also known as GMT).
|
2213
|
-
# Corresponds to the JSON property `timeZone`
|
2214
|
-
# @return [String]
|
2215
|
-
attr_accessor :time_zone
|
2216
|
-
|
2217
|
-
def initialize(**args)
|
2218
|
-
update!(**args)
|
2219
|
-
end
|
2220
|
-
|
2221
|
-
# Update properties of this object
|
2222
|
-
def update!(**args)
|
2223
|
-
@crontab = args[:crontab] if args.key?(:crontab)
|
2224
|
-
@time_zone = args[:time_zone] if args.key?(:time_zone)
|
2225
|
-
end
|
2226
|
-
end
|
2227
|
-
|
2228
2026
|
# The `Status` type defines a logical error model that is suitable for different
|
2229
2027
|
# programming environments, including REST APIs and RPC APIs. It is used by [
|
2230
2028
|
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
@@ -2263,57 +2061,6 @@ module Google
|
|
2263
2061
|
@message = args[:message] if args.key?(:message)
|
2264
2062
|
end
|
2265
2063
|
end
|
2266
|
-
|
2267
|
-
# A time window specified by its `start_time` and `end_time`.
|
2268
|
-
class TimeWindow
|
2269
|
-
include Google::Apis::Core::Hashable
|
2270
|
-
|
2271
|
-
# End time of the time window (inclusive). If not specified, the current
|
2272
|
-
# timestamp is used instead.
|
2273
|
-
# Corresponds to the JSON property `endTime`
|
2274
|
-
# @return [String]
|
2275
|
-
attr_accessor :end_time
|
2276
|
-
|
2277
|
-
# Start time of the time window (exclusive).
|
2278
|
-
# Corresponds to the JSON property `startTime`
|
2279
|
-
# @return [String]
|
2280
|
-
attr_accessor :start_time
|
2281
|
-
|
2282
|
-
def initialize(**args)
|
2283
|
-
update!(**args)
|
2284
|
-
end
|
2285
|
-
|
2286
|
-
# Update properties of this object
|
2287
|
-
def update!(**args)
|
2288
|
-
@end_time = args[:end_time] if args.key?(:end_time)
|
2289
|
-
@start_time = args[:start_time] if args.key?(:start_time)
|
2290
|
-
end
|
2291
|
-
end
|
2292
|
-
|
2293
|
-
# Time window configuration for asset updates requests.
|
2294
|
-
class UpdateTimeWindow
|
2295
|
-
include Google::Apis::Core::Hashable
|
2296
|
-
|
2297
|
-
# A time window specified by its `start_time` and `end_time`.
|
2298
|
-
# Corresponds to the JSON property `timeWindow`
|
2299
|
-
# @return [Google::Apis::CloudassetV1p7beta1::TimeWindow]
|
2300
|
-
attr_accessor :time_window
|
2301
|
-
|
2302
|
-
# The type of the time in time_window.
|
2303
|
-
# Corresponds to the JSON property `type`
|
2304
|
-
# @return [String]
|
2305
|
-
attr_accessor :type
|
2306
|
-
|
2307
|
-
def initialize(**args)
|
2308
|
-
update!(**args)
|
2309
|
-
end
|
2310
|
-
|
2311
|
-
# Update properties of this object
|
2312
|
-
def update!(**args)
|
2313
|
-
@time_window = args[:time_window] if args.key?(:time_window)
|
2314
|
-
@type = args[:type] if args.key?(:type)
|
2315
|
-
end
|
2316
|
-
end
|
2317
2064
|
end
|
2318
2065
|
end
|
2319
2066
|
end
|