Class: Google::Apis::ComputeAlpha::ResourcePolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::ResourcePolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Overview
Represents a Resource Policy resource. You can use resource policies to schedule actions for some Compute Engine resources. For example, you can use them toschedule persistent disk snapshots.
Instance Attribute Summary collapse
-
#creation_timestamp ⇒ String
Output only.
-
#description ⇒ String
Corresponds to the JSON property
description. -
#disk_consistency_group_policy ⇒ Google::Apis::ComputeAlpha::ResourcePolicyDiskConsistencyGroupPolicy
Resource policy for disk consistency groups.
-
#group_placement_policy ⇒ Google::Apis::ComputeAlpha::ResourcePolicyGroupPlacementPolicy
A GroupPlacementPolicy specifies resource placement configuration.
-
#id ⇒ Fixnum
Output only.
-
#instance_schedule_policy ⇒ Google::Apis::ComputeAlpha::ResourcePolicyInstanceSchedulePolicy
An InstanceSchedulePolicy specifies when and how frequent certain operations are performed on the instance.
-
#kind ⇒ String
Output only.
-
#name ⇒ String
The name of the resource, provided by the client when initially creating the resource.
-
#region ⇒ String
Corresponds to the JSON property
region. -
#resource_status ⇒ Google::Apis::ComputeAlpha::ResourcePolicyResourceStatus
Contains output only fields.
-
#self_link ⇒ String
Output only.
-
#self_link_with_id ⇒ String
Output only.
-
#snapshot_schedule_policy ⇒ Google::Apis::ComputeAlpha::ResourcePolicySnapshotSchedulePolicy
A snapshot schedule policy specifies when and how frequently snapshots are to be created for the target disk.
-
#status ⇒ String
Output only.
-
#vm_maintenance_policy ⇒ Google::Apis::ComputeAlpha::ResourcePolicyVmMaintenancePolicy
Resource policy applicable to VMs for infrastructure maintenance.
-
#workload_policy ⇒ Google::Apis::ComputeAlpha::ResourcePolicyWorkloadPolicy
Represents the workload policy.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ResourcePolicy
constructor
A new instance of ResourcePolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ResourcePolicy
Returns a new instance of ResourcePolicy.
62551 62552 62553 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62551 def initialize(**args) update!(**args) end |
Instance Attribute Details
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
62455 62456 62457 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62455 def @creation_timestamp end |
#description ⇒ String
Corresponds to the JSON property description
62460 62461 62462 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62460 def description @description end |
#disk_consistency_group_policy ⇒ Google::Apis::ComputeAlpha::ResourcePolicyDiskConsistencyGroupPolicy
Resource policy for disk consistency groups.
Corresponds to the JSON property diskConsistencyGroupPolicy
62465 62466 62467 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62465 def disk_consistency_group_policy @disk_consistency_group_policy end |
#group_placement_policy ⇒ Google::Apis::ComputeAlpha::ResourcePolicyGroupPlacementPolicy
A GroupPlacementPolicy specifies resource placement configuration.
It specifies the failure bucket separation
Corresponds to the JSON property groupPlacementPolicy
62471 62472 62473 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62471 def group_placement_policy @group_placement_policy end |
#id ⇒ Fixnum
Output only. [Output Only] The unique identifier for the resource. This
identifier is
defined by the server.
Corresponds to the JSON property id
62478 62479 62480 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62478 def id @id end |
#instance_schedule_policy ⇒ Google::Apis::ComputeAlpha::ResourcePolicyInstanceSchedulePolicy
An InstanceSchedulePolicy specifies when and how frequent certain
operations are performed on the instance.
Corresponds to the JSON property instanceSchedulePolicy
62484 62485 62486 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62484 def instance_schedule_policy @instance_schedule_policy end |
#kind ⇒ String
Output only. [Output Only] Type of the resource. Alwayscompute#
resource_policies for resource policies.
Corresponds to the JSON property kind
62490 62491 62492 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62490 def kind @kind end |
#name ⇒ String
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
withRFC1035.
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
62502 62503 62504 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62502 def name @name end |
#region ⇒ String
Corresponds to the JSON property region
62507 62508 62509 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62507 def region @region end |
#resource_status ⇒ Google::Apis::ComputeAlpha::ResourcePolicyResourceStatus
Contains output only fields.
Use this sub-message for all output fields set on ResourcePolicy.
The internal structure of this "status" field should mimic the structure
of ResourcePolicy proto specification.
Corresponds to the JSON property resourceStatus
62515 62516 62517 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62515 def resource_status @resource_status end |
#self_link ⇒ String
Output only. [Output Only] Server-defined fully-qualified URL for this
resource.
Corresponds to the JSON property selfLink
62521 62522 62523 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62521 def self_link @self_link end |
#self_link_with_id ⇒ String
Output only. [Output Only] Server-defined URL for this resource with the
resource id.
Corresponds to the JSON property selfLinkWithId
62527 62528 62529 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62527 def self_link_with_id @self_link_with_id end |
#snapshot_schedule_policy ⇒ Google::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
62534 62535 62536 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62534 def snapshot_schedule_policy @snapshot_schedule_policy end |
#status ⇒ String
Output only. [Output Only] The status of resource policy creation.
Corresponds to the JSON property status
62539 62540 62541 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62539 def status @status end |
#vm_maintenance_policy ⇒ Google::Apis::ComputeAlpha::ResourcePolicyVmMaintenancePolicy
Resource policy applicable to VMs for infrastructure maintenance.
Corresponds to the JSON property vmMaintenancePolicy
62544 62545 62546 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62544 def vm_maintenance_policy @vm_maintenance_policy end |
#workload_policy ⇒ Google::Apis::ComputeAlpha::ResourcePolicyWorkloadPolicy
Represents the workload policy.
Corresponds to the JSON property workloadPolicy
62549 62550 62551 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62549 def workload_policy @workload_policy end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
62556 62557 62558 62559 62560 62561 62562 62563 62564 62565 62566 62567 62568 62569 62570 62571 62572 62573 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 62556 def update!(**args) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @disk_consistency_group_policy = args[:disk_consistency_group_policy] if args.key?(:disk_consistency_group_policy) @group_placement_policy = args[:group_placement_policy] if args.key?(:group_placement_policy) @id = args[:id] if args.key?(:id) @instance_schedule_policy = args[:instance_schedule_policy] if args.key?(:instance_schedule_policy) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @region = args[:region] if args.key?(:region) @resource_status = args[:resource_status] if args.key?(:resource_status) @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) @workload_policy = args[:workload_policy] if args.key?(:workload_policy) end |