package_dirs = [
'sfa',
'sfa/trust',
+ 'sfa/storage',
'sfa/util',
'sfa/client',
'sfa/server',
'sfa/managers',
'sfa/importer',
'sfa/plc',
+ 'sfa/senslab',
'sfa/rspecs',
'sfa/rspecs/elements',
'sfa/rspecs/elements/versions',
]
+ initscripts = [ 'sfa', 'sfa-cm' ]
+
data_files = [('/etc/sfa/', [ 'config/aggregates.xml',
'config/registries.xml',
'config/default_config.xml',
]),
('/etc/sfatables/matches/', glob('sfatables/matches/*.xml')),
('/etc/sfatables/targets/', glob('sfatables/targets/*.xml')),
- ('/etc/init.d/', ['sfa/init.d/sfa', 'sfa/init.d/sfa-cm'])]
+ ('/etc/init.d/', [ "init.d/%s"%x for x in initscripts ]),
+ ('/usr/share/sfa/', [ 'sfa/storage/sfa.sql' ] ),
+ ]
# add sfatables processors as data_files
processor_files = [f for f in glob('sfatables/processors/*') if os.path.isfile(f)]
d_files = [f for f in glob(d + '/*') if os.path.isfile(f)]
data_files.append((etc_dir, processor_files))
- initscripts = [ '/etc/init.d/sfa', '/etc/init.d/sfa-cm' ]
-
if sys.argv[1] in ['uninstall', 'remove', 'delete', 'clean']:
python_path = sys.path
site_packages_path = [ os.path.join(p,'sfa') for p in python_path if p.endswith('site-packages')]
site_packages_path += [ os.path.join(p,'sfatables') for p in python_path if p.endswith('site-packages')]
remove_dirs = ['/etc/sfa/', '/etc/sfatables'] + site_packages_path
remove_bins = [ '/usr/bin/' + os.path.basename(bin) for bin in bins ]
- remove_files = remove_bins + initscripts
+ remove_files = remove_bins + [ "/etc/init.d/%s"%x for x in initscripts ]
# remove files
for filepath in remove_files:
import zlib
-
+import sys
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
- from sfa.util.parameter import Parameter, Mixed
- from sfa.trust.credential import Credential
from sfa.util.sfatablesRuntime import run_sfatables
+ from sfa.util.faults import SfaInvalidArgument
+ from sfa.trust.credential import Credential
+
+ from sfa.storage.parameter import Parameter, Mixed
class ListResources(Method):
"""
def call(self, creds, options={}):
self.api.logger.info("interface: %s\tmethod-name: %s" % (self.api.interface, self.name))
-
+
+ # client must specify a version
+ if not options.get('geni_rspec_version'):
+ raise SfaInvalidArgument('Must specify an rspec version option. geni_rspec_version cannot be null')
+
# get slice's hrn from options
xrn = options.get('geni_slice_urn', '')
(hrn, _) = urn_to_hrn(xrn)
# get hrn of the original caller
origin_hrn = options.get('origin_hrn', None)
+
if not origin_hrn:
origin_hrn = Credential(string=valid_creds[0]).get_gid_caller().get_hrn()
+ print >>sys.stderr, " \r\n \r\n \t Lsitresources.py call :self.api.interface %s origin_hrn %s options %s \r\n \t creds %s " %(self.api.interface,origin_hrn,options, creds)
rspec = self.api.manager.ListResources(self.api, creds, options)
# filter rspec through sfatables
chain_name = 'OUTGOING'
elif self.api.interface in ['slicemgr']:
chain_name = 'FORWARD-OUTGOING'
- self.api.logger.debug("ListResources: sfatables on chain %s"%chain_name)
+ self.api.logger.debug("ListResources: sfatables on chain %s"%chain_name)
+ print >>sys.stderr, " \r\n \r\n \t Listresources.py call : chain_name %s hrn %s origine_hrn %s " %(chain_name, hrn, origin_hrn)
filtered_rspec = run_sfatables(chain_name, hrn, origin_hrn, rspec)
if options.has_key('geni_compressed') and options['geni_compressed'] == True: