Class: VSphereCloud::FixedClusterPlacer

Inherits:
Object
  • Object
show all
Defined in:
lib/cloud/vsphere/fixed_cluster_placer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(cluster, drs_rules) ⇒ FixedClusterPlacer

Returns a new instance of FixedClusterPlacer.



5
6
7
8
# File 'lib/cloud/vsphere/fixed_cluster_placer.rb', line 5

def initialize(cluster, drs_rules)
  @cluster = cluster
  @drs_rules = drs_rules
end

Instance Attribute Details

#drs_rulesObject (readonly)

Returns the value of attribute drs_rules.



3
4
5
# File 'lib/cloud/vsphere/fixed_cluster_placer.rb', line 3

def drs_rules
  @drs_rules
end

Instance Method Details

#place(memory, ephemeral, persistent) ⇒ Object



10
11
12
13
14
15
16
17
18
# File 'lib/cloud/vsphere/fixed_cluster_placer.rb', line 10

def place(memory, ephemeral, persistent)
  datastore = @cluster.pick_ephemeral(ephemeral)
  if datastore
    @cluster.allocate(memory)
    datastore.allocate(ephemeral)
    return [@cluster, datastore]
  end
  raise "No available resources"
end