node['network'] = self.api.hrn
node['network_urn'] = hrn_to_urn(self.api.hrn, 'authority+sa')
node['urn'] = hostname_to_urn(self.api.hrn, site['login_base'], node['hostname'])
- node['site_urn'] = hrn_to_urn(PlXrn.site_hrn(self.api.hrn, site['login_base']), 'authority')
+ node['site_urn'] = hrn_to_urn(PlXrn.site_hrn(self.api.hrn, site['login_base']), 'authority+am')
node['site'] = site
node['interfaces'] = interfaces
node['tags'] = tags
# node already exists
continue
- node_tag = etree.SubElement(self.xml, 'node')
+ node_tag = etree.SubElement(self.xml, 'node', exclusive='false')
if 'network_urn' in node:
node_tag.set('component_manager_id', node['network_urn'])
if 'urn' in node:
node_tag.set('component_id', node['urn'])
if 'hostname' in node:
node_tag.set('component_name', node['hostname'])
- node_type_tag = etree.SubElement(node_tag, 'node_type', type_name='pcvm', type_slots='100')
- available_tag = etree.SubElement(node_tag, 'available').text = 'true'
- exclusive_tag = etree.SubElement(node_tag, 'exclusive').text = 'false'
- location_tag = etree.SubElement(node_tag, 'location', location="US")
+ # TODO: should replace plab-pc with pc model
+ node_type_tag = etree.SubElement(node_tag, 'hardware_type', type_name='plab-pc')
+ node_type_tag = etree.SubElement(node_tag, 'hardware_type', type_name='pc')
+ available_tag = etree.SubElement(node_tag, 'available', now='true')
+ location_tag = etree.SubElement(node_tag, 'country', location="us")
if 'site' in node:
if 'longitude' in node['site']:
location_tag.set('longitude', str(node['site']['longitude']))
if nodes:
node = nodes[0]
node.set('client_id', hostname)
- etree.SubElement(node, 'sliver_type', name='planetlab-vnode')
+ etree.SubElement(node, 'sliver_type', name='plab-vnode')
def add_interfaces(self, interfaces, check_for_dupes=False):
pass
generated_ts = now.strftime(date_format)
expires_ts = (now + timedelta(hours=1)).strftime(date_format)
self.parse_rspec(self.template, self.namespaces)
- self.xml.set('valid_until', expires_ts)
+ self.xml.set('expires', expires_ts)
self.xml.set('generated', generated_ts)
def parse_rspec(self, rspec, namespaces={}):