Class: Google::Apis::CloudassetV1::ResourceSearchResult

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/cloudasset_v1/classes.rb,
lib/google/apis/cloudasset_v1/representations.rb,
lib/google/apis/cloudasset_v1/representations.rb

Overview

A result of Resource Search, containing information of a cloud resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ResourceSearchResult

Returns a new instance of ResourceSearchResult.



3509
3510
3511
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3509

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#additional_attributesHash<String,Object>

The additional searchable attributes of this resource. The attributes may vary from one resource type to another. Examples: projectId for Project, dnsName for DNS ManagedZone. This field contains a subset of the resource metadata fields that are returned by the List or Get APIs provided by the corresponding GCP service (e.g., Compute Engine). see API references and supported searchable attributes to see which fields are included. You can search values of these fields through free text search. However, you should not consume the field programically as the field names and values may change as the GCP service updates to a new incompatible API version. To search against the additional_attributes: * use a free text query to match the attributes values. Example: to search additional_attributes = dnsName: " foobar" `, you can issue a queryfoobar. Corresponds to the JSON propertyadditionalAttributes`

Returns:

  • (Hash<String,Object>)


3357
3358
3359
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3357

def additional_attributes
  @additional_attributes
end

#asset_typeString

The type of this resource. Example: compute.googleapis.com/Disk. To search against the asset_type: * specify the asset_type field in your search request. Corresponds to the JSON property assetType

Returns:

  • (String)


3364
3365
3366
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3364

def asset_type
  @asset_type
end

#create_timeString

The create timestamp of this resource, at which the resource was created. The granularity is in seconds. Timestamp.nanos will always be 0. This field is available only when the resource's proto contains it. To search against create_time: * use a field query (value in seconds). Example: createTime >= 1594294238 Corresponds to the JSON property createTime

Returns:

  • (String)


3373
3374
3375
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3373

def create_time
  @create_time
end

#descriptionString

One or more paragraphs of text description of this resource. Maximum length could be up to 1M bytes. This field is available only when the resource's proto contains it. To search against the description: * use a field query. Example: description:"important instance" * use a free text query. Example: "important instance" Corresponds to the JSON property description

Returns:

  • (String)


3382
3383
3384
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3382

def description
  @description
end

#display_nameString

The display name of this resource. This field is available only when the resource's proto contains it. To search against the display_name: * use a field query. Example: displayName:"My Instance" * use a free text query. Example: "My Instance" Corresponds to the JSON property displayName

Returns:

  • (String)


3390
3391
3392
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3390

def display_name
  @display_name
end

#foldersArray<String>

The folder(s) that this resource belongs to, in the form of folders/ FOLDER_NUMBER. This field is available when the resource belongs to one or more folders. To search against folders: * use a field query. Example: folders:(123 OR 456) * use a free text query. Example: 123 * specify the scope field as this folder in your search request. Corresponds to the JSON property folders

Returns:

  • (Array<String>)


3399
3400
3401
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3399

def folders
  @folders
end

#kms_keyString

The Cloud KMS CryptoKey name or CryptoKeyVersion name. This field is available only when the resource's proto contains it. To search against the kms_key: * use a field query. Example: kmsKey:key * use a free text query. Example: key Corresponds to the JSON property kmsKey

Returns:

  • (String)


3409
3410
3411
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3409

def kms_key
  @kms_key
end

#labelsHash<String,String>

Labels associated with this resource. See Labelling and grouping GCP resources for more information. This field is available only when the resource's proto contains it. To search against the labels: * use a field query: - query on any label's key or value. Example: labels:prod - query by a given label. Example: labels.env:prod - query by a given label's existence. Example: labels.env:* * use a free text query. Example: prod Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


3421
3422
3423
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3421

def labels
  @labels
end

#locationString

Location can be global, regional like us-east1, or zonal like us-west1-b. This field is available only when the resource's proto contains it. To search against the location: * use a field query. Example: location:us-west* * use a free text query. Example: us-west* Corresponds to the JSON property location

Returns:

  • (String)


3429
3430
3431
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3429

def location
  @location
end

#nameString

The full resource name of this resource. Example: //compute.googleapis.com/ projects/my_project_123/zones/zone1/instances/instance1. See Cloud Asset Inventory Resource Name Format for more information. To search against the name: * use a field query. Example: name:instance1 * use a free text query. Example: instance1 Corresponds to the JSON property name

Returns:

  • (String)


3439
3440
3441
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3439

def name
  @name
end

#network_tagsArray<String>

Network tags associated with this resource. Like labels, network tags are a type of annotations used to group GCP resources. See Labelling GCP resources for more information. This field is available only when the resource's proto contains it. To search against the network_tags: * use a field query. Example: networkTags:internal * use a free text query. Example: internal Corresponds to the JSON property networkTags

Returns:

  • (Array<String>)


3450
3451
3452
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3450

def network_tags
  @network_tags
end

#organizationString

The organization that this resource belongs to, in the form of organizations/ ORGANIZATION_NUMBER. This field is available when the resource belongs to an organization. To search against organization: * use a field query. Example: organization:123 * use a free text query. Example: 123 * specify the scope field as this organization in your search request. Corresponds to the JSON property organization

Returns:

  • (String)


3459
3460
3461
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3459

def organization
  @organization
end

#parent_asset_typeString

The type of this resource's immediate parent, if there is one. To search against the parent_asset_type: * use a field query. Example: parentAssetType:"cloudresourcemanager.googleapis.com/Project" * use a free text query. Example: cloudresourcemanager.googleapis.com/Project Corresponds to the JSON property parentAssetType

Returns:

  • (String)


3467
3468
3469
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3467

def parent_asset_type
  @parent_asset_type
end

#parent_full_resource_nameString

The full resource name of this resource's parent, if it has one. Corresponds to the JSON property parentFullResourceName

Returns:

  • (String)


3472
3473
3474
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3472

def parent_full_resource_name
  @parent_full_resource_name
end

#projectString

The project that this resource belongs to, in the form of projects/ PROJECT_NUMBER. This field is available when the resource belongs to a project. To search against project: * use a field query. Example: project: 12345 * use a free text query. Example: 12345 * specify the scope field as this project in your search request. Corresponds to the JSON property project

Returns:

  • (String)


3481
3482
3483
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3481

def project
  @project
end

#stateString

The state of this resource. Different resources types have different state definitions that are mapped from various fields of different resource types. This field is available only when the resource's proto contains it. Example: If the resource is an instance provided by Compute Engine, its state will include PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. See status definition in API Reference. If the resource is a project provided by Cloud Resource Manager, its state will include LIFECYCLE_STATE_UNSPECIFIED, ACTIVE, DELETE_REQUESTED and DELETE_IN_PROGRESS. See lifecycleState definition in API Reference. To search against the state: * use a field query. Example: state:RUNNING * use a free text query. Example: RUNNING Corresponds to the JSON property state

Returns:

  • (String)


3498
3499
3500
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3498

def state
  @state
end

#update_timeString

The last update timestamp of this resource, at which the resource was last modified or deleted. The granularity is in seconds. Timestamp.nanos will always be 0. This field is available only when the resource's proto contains it. To search against update_time: * use a field query (value in seconds). Example: updateTime < 1594294238 Corresponds to the JSON property updateTime

Returns:

  • (String)


3507
3508
3509
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3507

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
# File 'lib/google/apis/cloudasset_v1/classes.rb', line 3514

def update!(**args)
  @additional_attributes = args[:additional_attributes] if args.key?(:additional_attributes)
  @asset_type = args[:asset_type] if args.key?(:asset_type)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @display_name = args[:display_name] if args.key?(:display_name)
  @folders = args[:folders] if args.key?(:folders)
  @kms_key = args[:kms_key] if args.key?(:kms_key)
  @labels = args[:labels] if args.key?(:labels)
  @location = args[:location] if args.key?(:location)
  @name = args[:name] if args.key?(:name)
  @network_tags = args[:network_tags] if args.key?(:network_tags)
  @organization = args[:organization] if args.key?(:organization)
  @parent_asset_type = args[:parent_asset_type] if args.key?(:parent_asset_type)
  @parent_full_resource_name = args[:parent_full_resource_name] if args.key?(:parent_full_resource_name)
  @project = args[:project] if args.key?(:project)
  @state = args[:state] if args.key?(:state)
  @update_time = args[:update_time] if args.key?(:update_time)
end