Class: Google::Apis::ComputeAlpha::Reservation
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::Reservation
- 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 reservation resource. A reservation ensures that capacity is held in a specific zone even if the reserved VMs are not running. For more information, read Reserving zonal resources.
Instance Attribute Summary collapse
-
#commitment ⇒ String
[Output Only] Full or partial URL to a parent commitment.
-
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
-
#description ⇒ String
An optional description of this resource.
-
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource.
-
#kind ⇒ String
[Output Only] Type of the resource.
-
#name ⇒ String
The name of the resource, provided by the client when initially creating the resource.
-
#resource_policies ⇒ Hash<String,String>
Resource policies to be added to this reservation.
-
#resource_status ⇒ Google::Apis::ComputeAlpha::AllocationResourceStatus
[Output Only] Contains output only fields.
-
#satisfies_pzs ⇒ Boolean
(also: #satisfies_pzs?)
[Output Only] Reserved for future use.
-
#self_link ⇒ String
[Output Only] Server-defined fully-qualified URL for this resource.
-
#self_link_with_id ⇒ String
[Output Only] Server-defined URL for this resource with the resource id.
-
#share_settings ⇒ Google::Apis::ComputeAlpha::ShareSettings
The share setting for reservations and sole tenancy node groups.
-
#specific_reservation ⇒ Google::Apis::ComputeAlpha::AllocationSpecificSkuReservation
This reservation type allows to pre allocate specific instance configuration.
-
#specific_reservation_required ⇒ Boolean
(also: #specific_reservation_required?)
Indicates whether the reservation can be consumed by VMs with affinity for " any" reservation.
-
#status ⇒ String
[Output Only] The status of the reservation.
-
#zone ⇒ String
Zone in which the reservation resides.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Reservation
constructor
A new instance of Reservation.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Reservation
Returns a new instance of Reservation.
35184 35185 35186 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35184 def initialize(**args) update!(**args) end |
Instance Attribute Details
#commitment ⇒ String
[Output Only] Full or partial URL to a parent commitment. This field displays
for reservations that are tied to a commitment.
Corresponds to the JSON property commitment
35090 35091 35092 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35090 def commitment @commitment end |
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
Corresponds to the JSON property creationTimestamp
35095 35096 35097 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35095 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
35101 35102 35103 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35101 def description @description end |
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource. This identifier is
defined by the server.
Corresponds to the JSON property id
35107 35108 35109 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35107 def id @id end |
#kind ⇒ String
[Output Only] Type of the resource. Always compute#reservations for
reservations.
Corresponds to the JSON property kind
35113 35114 35115 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35113 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 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
35124 35125 35126 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35124 def name @name end |
#resource_policies ⇒ Hash<String,String>
Resource policies to be added to this reservation. The key is defined by user,
and the value is resource policy url. This is to define placement policy with
reservation.
Corresponds to the JSON property resourcePolicies
35131 35132 35133 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35131 def resource_policies @resource_policies end |
#resource_status ⇒ Google::Apis::ComputeAlpha::AllocationResourceStatus
[Output Only] Contains output only fields.
Corresponds to the JSON property resourceStatus
35136 35137 35138 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35136 def resource_status @resource_status end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
[Output Only] Reserved for future use.
Corresponds to the JSON property satisfiesPzs
35141 35142 35143 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35141 def satisfies_pzs @satisfies_pzs end |
#self_link ⇒ String
[Output Only] Server-defined fully-qualified URL for this resource.
Corresponds to the JSON property selfLink
35147 35148 35149 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35147 def self_link @self_link end |
#self_link_with_id ⇒ String
[Output Only] Server-defined URL for this resource with the resource id.
Corresponds to the JSON property selfLinkWithId
35152 35153 35154 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35152 def self_link_with_id @self_link_with_id end |
#share_settings ⇒ Google::Apis::ComputeAlpha::ShareSettings
The share setting for reservations and sole tenancy node groups.
Corresponds to the JSON property shareSettings
35157 35158 35159 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35157 def share_settings @share_settings end |
#specific_reservation ⇒ Google::Apis::ComputeAlpha::AllocationSpecificSkuReservation
This reservation type allows to pre allocate specific instance configuration.
Next ID: 6
Corresponds to the JSON property specificReservation
35163 35164 35165 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35163 def specific_reservation @specific_reservation end |
#specific_reservation_required ⇒ Boolean Also known as: specific_reservation_required?
Indicates whether the reservation can be consumed by VMs with affinity for "
any" reservation. If the field is set, then only VMs that target the
reservation by name can consume from this reservation.
Corresponds to the JSON property specificReservationRequired
35170 35171 35172 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35170 def specific_reservation_required @specific_reservation_required end |
#status ⇒ String
[Output Only] The status of the reservation.
Corresponds to the JSON property status
35176 35177 35178 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35176 def status @status end |
#zone ⇒ String
Zone in which the reservation resides. A zone must be provided if the
reservation is created within a commitment.
Corresponds to the JSON property zone
35182 35183 35184 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35182 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
35189 35190 35191 35192 35193 35194 35195 35196 35197 35198 35199 35200 35201 35202 35203 35204 35205 35206 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35189 def update!(**args) @commitment = args[:commitment] if args.key?(:commitment) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @resource_policies = args[:resource_policies] if args.key?(:resource_policies) @resource_status = args[:resource_status] if args.key?(:resource_status) @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs) @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) @share_settings = args[:share_settings] if args.key?(:share_settings) @specific_reservation = args[:specific_reservation] if args.key?(:specific_reservation) @specific_reservation_required = args[:specific_reservation_required] if args.key?(:specific_reservation_required) @status = args[:status] if args.key?(:status) @zone = args[:zone] if args.key?(:zone) end |