def PUT(self, node_id): """:returns: JSONized node disks. :http: * 200 (OK) * 400 (invalid disks data specified) * 404 (node not found in db) """ node = self.get_object_or_404(Node, node_id) data = self.checked_data() if node.cluster: objects.Cluster.add_pending_changes( node.cluster, 'disks', node_id=node.id ) volumes_data = DisksFormatConvertor.format_disks_to_full(node, data) # For some reasons if we update node attributes like # node.attributes.volumes = volumes_data # after # db().commit() # it resets to previous state db().query(NodeAttributes).filter_by(node_id=node_id).update( {'volumes': volumes_data}) db().flush() db().refresh(node) return DisksFormatConvertor.format_disks_to_simple( node.attributes.volumes)
def PUT(self, node_id): """ :returns: JSONized node disks. :http: * 200 (OK) * 400 (invalid disks data specified) * 404 (node not found in db) """ node = self.get_object_or_404(Node, node_id) data = self.checked_data() if node.cluster: node.cluster.add_pending_changes('disks', node_id=node.id) volumes_data = DisksFormatConvertor.format_disks_to_full(node, data) # For some reasons if we update node attributes like # node.attributes.volumes = volumes_data # after # db().commit() # it resets to previous state db().query(NodeAttributes).filter_by(node_id=node_id).update( {'volumes': volumes_data}) db().commit() return DisksFormatConvertor.format_disks_to_simple( node.attributes.volumes)
def GET(self, node_id): """:returns: JSONized node disks. :http: * 200 (OK) * 404 (node not found in db) """ node = self.get_object_or_404(objects.Node, node_id) node_volumes = node.attributes.volumes return DisksFormatConvertor.format_disks_to_simple(node_volumes)
def GET(self, node_id): """:returns: JSONized node disks. :http: * 200 (OK) * 404 (node not found in db) """ node = self.get_object_or_404(objects.Node, node_id) node_volumes = node.attributes.volumes return DisksFormatConvertor.format_disks_to_simple(node_volumes)
def GET(self, node_id): node = self.get_object_or_404(Node, node_id) if not node.attributes: return web.notfound() volumes = DisksFormatConvertor.format_disks_to_simple( node.volume_manager.gen_volumes_info()) return volumes
def GET(self, node_id): """:returns: JSONized node disks. :http: * 200 (OK) * 404 (node or its attributes not found in db) """ node = self.get_object_or_404(Node, node_id) if not node.attributes: return web.notfound() volumes = DisksFormatConvertor.format_disks_to_simple(node.volume_manager.gen_volumes_info()) return volumes
def GET(self, node_id): """:returns: JSONized node disks. :http: * 200 (OK) * 404 (node or its attributes not found in db) """ node = self.get_object_or_404(objects.Node, node_id) if not node.attributes: raise self.http(404) volumes = DisksFormatConvertor.format_disks_to_simple( node.volume_manager.gen_volumes_info()) return volumes
def PUT(self, node_id): node = self.get_object_or_404(Node, node_id) data = self.checked_data() if node.cluster: node.cluster.add_pending_changes('disks', node_id=node.id) volumes_data = DisksFormatConvertor.format_disks_to_full(node, data) # For some reasons if we update node attributes like # node.attributes.volumes = volumes_data # after # db().commit() # it resets to previous state db().query(NodeAttributes).filter_by(node_id=node_id).update( {'volumes': volumes_data}) db().commit() return DisksFormatConvertor.format_disks_to_simple( node.attributes.volumes)
def PUT(self, node_id): """:returns: JSONized node disks. :http: * 200 (OK) * 400 (invalid disks data specified) * 404 (node not found in db) """ node = self.get_object_or_404(objects.Node, node_id) data = self.checked_data(self.validator.validate, node=node) if node.cluster: objects.Cluster.add_pending_changes(node.cluster, 'disks', node_id=node.id) volumes_data = DisksFormatConvertor.format_disks_to_full(node, data) objects.Node.set_volumes(node, volumes_data) return DisksFormatConvertor.format_disks_to_simple( node.attributes.volumes)
def PUT(self, node_id): """:returns: JSONized node disks. :http: * 200 (OK) * 400 (invalid disks data specified) * 404 (node not found in db) """ node = self.get_object_or_404(objects.Node, node_id) data = self.checked_data( self.validator.validate, node=node ) if node.cluster: objects.Cluster.add_pending_changes( node.cluster, 'disks', node_id=node.id ) volumes_data = DisksFormatConvertor.format_disks_to_full(node, data) objects.Node.set_volumes(node, volumes_data) return DisksFormatConvertor.format_disks_to_simple( node.attributes.volumes)
def GET(self, node_id): node = self.get_object_or_404(Node, node_id) node_volumes = node.attributes.volumes return DisksFormatConvertor.format_disks_to_simple(node_volumes)