class Google::Apis::ComputeBeta::ResourcePolicy

Represents a Resource Policy resource. You can use resource policies to schedule actions for some Compute Engine resources. For example, you can use them to schedule persistent disk snapshots.

Attributes

creation_timestamp[RW]
Output Only

Creation timestamp in RFC3339 text format.

Corresponds to the JSON property `creationTimestamp` @return [String]

description[RW]

Corresponds to the JSON property `description` @return [String]

group_placement_policy[RW]

A GroupPlacementPolicy specifies resource placement configuration. It specifies the failure bucket separation as well as network locality Corresponds to the JSON property `groupPlacementPolicy` @return [Google::Apis::ComputeBeta::ResourcePolicyGroupPlacementPolicy]

id[RW]
Output Only

The unique identifier for the resource. This identifier is

defined by the server. Corresponds to the JSON property `id` @return [Fixnum]

instance_schedule_policy[RW]

An InstanceSchedulePolicy specifies when and how frequent certain operations are performed on the instance. Corresponds to the JSON property `instanceSchedulePolicy` @return [Google::Apis::ComputeBeta::ResourcePolicyInstanceSchedulePolicy]

kind[RW]
Output Only

Type of the resource. Always compute#resource_policies for

resource policies. Corresponds to the JSON property `kind` @return [String]

name[RW]

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])?` 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` @return [String]

region[RW]

Corresponds to the JSON property `region` @return [String]

resource_status[RW]

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` @return [Google::Apis::ComputeBeta::ResourcePolicyResourceStatus]

snapshot_schedule_policy[RW]

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` @return [Google::Apis::ComputeBeta::ResourcePolicySnapshotSchedulePolicy]

status[RW]
Output Only

The status of resource policy creation.

Corresponds to the JSON property `status` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/compute_beta/classes.rb, line 28120
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/compute_beta/classes.rb, line 28125
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)
  @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)
  @snapshot_schedule_policy = args[:snapshot_schedule_policy] if args.key?(:snapshot_schedule_policy)
  @status = args[:status] if args.key?(:status)
end