class Fog::Baremetal::OpenStack::Node
Public Class Methods
new(attributes)
click to toggle source
Calls superclass method
# File lib/fog/openstack/models/baremetal/node.rb, line 32 def initialize(attributes) # Old 'connection' is renamed as service and should be used instead prepare_service_value(attributes) super end
Public Instance Methods
chassis()
click to toggle source
# File lib/fog/openstack/models/baremetal/node.rb, line 68 def chassis requires :uuid service.get_chassis(self.chassis_uuid).body end
create()
click to toggle source
# File lib/fog/openstack/models/baremetal/node.rb, line 43 def create requires :driver merge_attributes(service.create_node(self.attributes).body) self end
destroy()
click to toggle source
# File lib/fog/openstack/models/baremetal/node.rb, line 62 def destroy requires :uuid service.delete_node(self.uuid) true end
metadata()
click to toggle source
# File lib/fog/openstack/models/baremetal/node.rb, line 78 def metadata requires :uuid service.get_node(self.uuid).headers end
ports()
click to toggle source
# File lib/fog/openstack/models/baremetal/node.rb, line 73 def ports requires :uuid service.list_ports_detailed({:node_uuid => self.uuid}).body['ports'] end
save()
click to toggle source
# File lib/fog/openstack/models/baremetal/node.rb, line 38 def save requires :driver identity ? update : create end
update(patch=nil)
click to toggle source
# File lib/fog/openstack/models/baremetal/node.rb, line 49 def update(patch=nil) requires :uuid if patch merge_attributes(service.patch_node(uuid, patch).body) else # TODO implement update_node method using PUT method and self.attributes # once it is supported by Ironic raise ArgumentError, ('You need to provide patch attribute. Ironic does ' 'not support update by hash yet, only by jsonpatch.') end self end