4 Installation script for the geniwrapper module
9 from distutils.core import setup, Extension
11 scripts = ['geni/gimport.py', 'geni/plc.py', 'cmdline/sfi.py', 'config/geni-config-tty']
12 package_dirs = ['geni', 'geni/util', 'geni/methods']
13 data_files = [ ('/etc/geni/', ['config/aggregates.xml', 'config/registries.xml',
14 'config/geni_config', 'config/sfi_config']),
15 ('/etc/init.d/', ['geni/init.d/geni'])]
16 symlinks = ['/usr/share/geniwrapper']
17 initscripts = ['/etc/init.d/geni']
19 if sys.argv[1] in ['uninstall', 'remove', 'delete', 'clean']:
20 python_path = sys.path
21 site_packages_path = [ path + os.sep + 'geni' for path in python_path if path.endswith('site-packages')]
22 remove_dirs = ['/etc/geni/'] + site_packages_path
23 remove_files = ['/usr/bin/gimport.py', '/usr/bin/plc.py', '/usr/bin/sfi.py', '/usr/bin/geni-config-tty'] + \
24 symlinks + initscripts
27 for filepath in remove_files:
28 print "removing", filepath, "...",
32 except: print "failed"
34 for directory in remove_dirs:
35 print "removing", directory, "...",
37 shutil.rmtree(directory)
39 except: print "failed"
43 # avoid repeating what's in the specfile already
44 setup(packages = package_dirs,
45 data_files = data_files,
51 # create symlink to geniwrapper source in /usr/share
52 python_path = sys.path
53 site_packages_path = [ path + os.sep + 'geni' for path in python_path if path.endswith('site-packages')]
54 # python path usualy has /usr/local/lib/ path , filter this out
55 site_packages_path = [x for x in site_packages_path if 'local' not in x]
57 # we can not do this here as installation root might change paths
60 # for src in site_packages_path:
61 # for dst in symlinks:
63 # os.symlink(src, dst)
65 # for initscript in initscripts:
66 # os.chmod(initscript, 00744)