Class: Google::Apis::ComputeAlpha::FutureResourcesSpec

Inherits:
Object
  • Object
show all
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

Specification of resources to be created at some time in the future within an optionally specified set of locations, and within the specified time range.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ FutureResourcesSpec

Returns a new instance of FutureResourcesSpec.



14975
14976
14977
# File 'lib/google/apis/compute_alpha/classes.rb', line 14975

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

Instance Attribute Details

#deployment_typeString

Indicates if the reservation allocation strategy is static (DENSE) or dynamic ( STANDARD). Defaults to DENSE. Corresponds to the JSON property deploymentType

Returns:

  • (String)


14955
14956
14957
# File 'lib/google/apis/compute_alpha/classes.rb', line 14955

def deployment_type
  @deployment_type
end

#location_policyGoogle::Apis::ComputeAlpha::FutureResourcesSpecLocationPolicy

Specification of locations to create resources in. Corresponds to the JSON property locationPolicy



14960
14961
14962
# File 'lib/google/apis/compute_alpha/classes.rb', line 14960

def location_policy
  @location_policy
end

#target_resourcesGoogle::Apis::ComputeAlpha::FutureResourcesSpecTargetResources

Specification of reserved resources. Corresponds to the JSON property targetResources



14965
14966
14967
# File 'lib/google/apis/compute_alpha/classes.rb', line 14965

def target_resources
  @target_resources
end

#time_range_specGoogle::Apis::ComputeAlpha::FlexibleTimeRange

A flexible specification of a time range that has 3 points of flexibility: (1) a flexible start time, (2) a flexible end time, (3) a flexible duration. It is possible to specify a contradictory time range that cannot be matched by any Interval. This causes a validation error. Corresponds to the JSON property timeRangeSpec



14973
14974
14975
# File 'lib/google/apis/compute_alpha/classes.rb', line 14973

def time_range_spec
  @time_range_spec
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



14980
14981
14982
14983
14984
14985
# File 'lib/google/apis/compute_alpha/classes.rb', line 14980

def update!(**args)
  @deployment_type = args[:deployment_type] if args.key?(:deployment_type)
  @location_policy = args[:location_policy] if args.key?(:location_policy)
  @target_resources = args[:target_resources] if args.key?(:target_resources)
  @time_range_spec = args[:time_range_spec] if args.key?(:time_range_spec)
end