#!/usr/bin/python
from sfa.util.xrn import Xrn, hrn_to_urn, urn_to_hrn, urn_to_sliver_id
from sfa.util.sfatime import epochparse
+from sfa.util.sfalogging import logger
from sfa.rspecs.rspec import RSpec
from sfa.rspecs.elements.hardware_type import HardwareType
class PlAggregate:
- api = None
- #panos new user options variable
- user_options = {}
-
def __init__(self, driver):
self.driver = driver
-
+
def get_sites(self, filter={}):
sites = {}
for site in self.driver.GetSites(filter):
interface['ipv4'] = interface['ip']
interface['component_id'] = PlXrn(auth=self.driver.hrn,
interface='node%s:eth%s' % (node['node_id'], if_count)).get_urn()
+ # interfaces in the manifest need a client id
+ if slice:
+ interface['client_id'] = "%s:%s" % (node['node_id'], if_id)
rspec_node['interfaces'].append(interface)
if_count+=1
rspec.version.add_links(links)
# add sliver defaults
- default_sliver_attribs = slivers.get(None, [])
- for sliver_attrib in default_sliver_attribs:
- rspec.version.add_default_sliver_attribute(sliver_attrib['name'], sliver_attrib['value'])
-
+ default_sliver = slivers.get(None, [])
+ if default_sliver:
+ default_sliver_attribs = default_sliver.get('tags', [])
+ for attrib in default_sliver_attribs:
+ logger.info(attrib)
+ rspec.version.add_default_sliver_attribute(attrib['tagname'], attrib['value'])
return rspec.toxml()