Class: Google::Apis::ComputeAlpha::ResourcePolicy

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ ResourcePolicy

Returns a new instance of ResourcePolicy.



27418
27419
27420
# File 'generated/google/apis/compute_alpha/classes.rb', line 27418

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

Instance Attribute Details

#creation_timestampString

[Output Only] Creation timestamp in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


27350
27351
27352
# File 'generated/google/apis/compute_alpha/classes.rb', line 27350

def creation_timestamp
  @creation_timestamp
end

#descriptionString

Corresponds to the JSON property description

Returns:

  • (String)


27355
27356
27357
# File 'generated/google/apis/compute_alpha/classes.rb', line 27355

def description
  @description
end

#group_placement_policyGoogle::Apis::ComputeAlpha::ResourcePolicyGroupPlacementPolicy

A GroupPlacementPolicy specifies resource placement configuration. It specifies the failure bucket separation as well as network locality Corresponds to the JSON property groupPlacementPolicy



27361
27362
27363
# File 'generated/google/apis/compute_alpha/classes.rb', line 27361

def group_placement_policy
  @group_placement_policy
end

#idFixnum

[Output Only] The unique identifier for the resource. This identifier is defined by the server. Corresponds to the JSON property id

Returns:

  • (Fixnum)


27367
27368
27369
# File 'generated/google/apis/compute_alpha/classes.rb', line 27367

def id
  @id
end

#kindString

[Output Only] Type of the resource. Always compute#resource_policies for resource policies. Corresponds to the JSON property kind

Returns:

  • (String)


27373
27374
27375
# File 'generated/google/apis/compute_alpha/classes.rb', line 27373

def kind
  @kind
end

#nameString

The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Corresponds to the JSON property name

Returns:

  • (String)


27384
27385
27386
# File 'generated/google/apis/compute_alpha/classes.rb', line 27384

def name
  @name
end

#regionString

Corresponds to the JSON property region

Returns:

  • (String)


27389
27390
27391
# File 'generated/google/apis/compute_alpha/classes.rb', line 27389

def region
  @region
end

[Output Only] Server-defined fully-qualified URL for this resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


27394
27395
27396
# File 'generated/google/apis/compute_alpha/classes.rb', line 27394

def self_link
  @self_link
end

[Output Only] Server-defined URL for this resource with the resource id. Corresponds to the JSON property selfLinkWithId

Returns:

  • (String)


27399
27400
27401
# File 'generated/google/apis/compute_alpha/classes.rb', line 27399

def self_link_with_id
  @self_link_with_id
end

#snapshot_schedule_policyGoogle::Apis::ComputeAlpha::ResourcePolicySnapshotSchedulePolicy

A snapshot schedule policy specifies when and how frequently snapshots are to be created for the target disk. Also specifies how many and how long these scheduled snapshots should be retained. Corresponds to the JSON property snapshotSchedulePolicy



27406
27407
27408
# File 'generated/google/apis/compute_alpha/classes.rb', line 27406

def snapshot_schedule_policy
  @snapshot_schedule_policy
end

#statusString

[Output Only] The status of resource policy creation. Corresponds to the JSON property status

Returns:

  • (String)


27411
27412
27413
# File 'generated/google/apis/compute_alpha/classes.rb', line 27411

def status
  @status
end

#vm_maintenance_policyGoogle::Apis::ComputeAlpha::ResourcePolicyVmMaintenancePolicy

Resource policy applicable to VMs for infrastructure maintenance. Corresponds to the JSON property vmMaintenancePolicy



27416
27417
27418
# File 'generated/google/apis/compute_alpha/classes.rb', line 27416

def vm_maintenance_policy
  @vm_maintenance_policy
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



27423
27424
27425
27426
27427
27428
27429
27430
27431
27432
27433
27434
27435
27436
# File 'generated/google/apis/compute_alpha/classes.rb', line 27423

def update!(**args)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @description = args[:description] if args.key?(:description)
  @group_placement_policy = args[:group_placement_policy] if args.key?(:group_placement_policy)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @name = args[:name] if args.key?(:name)
  @region = args[:region] if args.key?(:region)
  @self_link = args[:self_link] if args.key?(:self_link)
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
  @snapshot_schedule_policy = args[:snapshot_schedule_policy] if args.key?(:snapshot_schedule_policy)
  @status = args[:status] if args.key?(:status)
  @vm_maintenance_policy = args[:vm_maintenance_policy] if args.key?(:vm_maintenance_policy)
end