def get_node_objs(node_elems): nodes=[] for node_elem in node_elems: node = NodeElement(node_elem.attrib, node_elem) # Get the Openstack node objects from the requested rspec node['slivers'] = Korenv1SliverType.get_os_slivers(node_elem) nodes.append(node) return nodes
def add_nodes(xml, nodes, rspec_content_type=None): node_elems = [] for node in nodes: node_fields = ['component_manager_id', 'component_id', 'exclusive'] node_elem = xml.add_instance('node', node, node_fields) # set granularity if node.get('exclusive') == "true": granularity = node.get('granularity') node_elem.add_instance('granularity', granularity, Granularity.fields) # set available element if node.get('available'): node_elem.add_element('available', now=node['available']) # add slivers slivers = node.get('slivers', []) Korenv1SliverType.add_os_slivers(node_elem, slivers) node_elems.append(node_elem) return node_elems