2012-11-14 15:31:02 +02:00
|
|
|
module Fog
|
|
|
|
module Compute
|
|
|
|
class Vsphere
|
|
|
|
|
|
|
|
class Datacenter < Fog::Model
|
|
|
|
|
|
|
|
identity :id
|
|
|
|
attribute :name
|
2013-10-02 16:56:35 +02:00
|
|
|
attribute :path
|
2012-11-14 15:31:02 +02:00
|
|
|
attribute :status
|
|
|
|
|
|
|
|
def clusters filters = { }
|
2013-10-02 16:56:35 +02:00
|
|
|
service.clusters({ :datacenter => path.join("/") }.merge(filters))
|
2012-11-14 15:31:02 +02:00
|
|
|
end
|
|
|
|
|
|
|
|
def networks filters = { }
|
2013-10-02 16:56:35 +02:00
|
|
|
service.networks({ :datacenter => path.join("/") }.merge(filters))
|
2012-11-14 15:31:02 +02:00
|
|
|
end
|
|
|
|
|
|
|
|
def datastores filters = { }
|
2013-10-02 16:56:35 +02:00
|
|
|
service.datastores({ :datacenter => path.join("/") }.merge(filters))
|
2012-11-14 15:31:02 +02:00
|
|
|
end
|
|
|
|
|
|
|
|
def vm_folders filters = { }
|
2013-10-02 16:56:35 +02:00
|
|
|
service.folders({ :datacenter => path.join("/"), :type => :vm }.merge(filters))
|
2012-11-14 15:31:02 +02:00
|
|
|
end
|
2012-12-22 23:21:53 +00:00
|
|
|
|
2012-12-01 07:48:18 -07:00
|
|
|
def virtual_machines filters = {}
|
2013-10-02 16:56:35 +02:00
|
|
|
service.servers({ :datacenter => path.join("/") }.merge(filters))
|
2012-12-01 07:48:18 -07:00
|
|
|
end
|
2013-02-15 10:14:50 +01:00
|
|
|
|
2013-09-27 11:48:31 +02:00
|
|
|
def servertypes filters={}
|
|
|
|
service.servertypes({:datacenter => name }.merge(filters))
|
|
|
|
end
|
|
|
|
|
2013-02-15 10:14:50 +01:00
|
|
|
def customfields filters = {}
|
2013-10-02 16:56:35 +02:00
|
|
|
service.customfields({ :datacenter => path.join("/")}.merge(filters))
|
2013-02-15 10:14:50 +01:00
|
|
|
end
|
2012-11-14 15:31:02 +02:00
|
|
|
|
|
|
|
def to_s
|
|
|
|
name
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|