X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=setup.py;h=c8259f92d3ef0ee6a3d9ebdd356d0563fa7d006a;hb=0a4c02a2bf0bf21726a6decf3e7f3f01ed32d89a;hp=a0c222a07db21c64d9b7b3c35f7977490a7a12ea;hpb=6e46a2373bcda1c1793d18936cc40fb39beb149a;p=sfa.git diff --git a/setup.py b/setup.py index a0c222a0..c8259f92 100755 --- a/setup.py +++ b/setup.py @@ -1,30 +1,43 @@ -#!/usr/bin/python +#!/usr/bin/env python + +from __future__ import print_function """ Installation script for the sfa module """ +# as fas as pushing onto pypi, I have been using this page +# http://peterdowns.com/posts/first-time-with-pypi.html +# for setting up the whole business + import sys, os, os.path from glob import glob import shutil from distutils.core import setup +# while cleaning up we might not have this.. +try: + from sfa.util.version import version_tag +except: + version_tag='cleaningup' + scripts = glob("clientbin/*.py") + \ - [ + [ 'config/sfa-config-tty', - 'config/gen-sfa-cm-config.py', - 'sfa/server/sfa-start.py', - 'sfa/server/sfa_component_setup.py', + 'config/sfa-config', +# 'config/gen-sfa-cm-config.py', + 'sfa/server/sfa-start.py', +# 'sfa/server/sfa_component_setup.py', 'sfatables/sfatables', 'keyconvert/keyconvert.py', 'flashpolicy/sfa_flashpolicy.py', ] packages = [ - 'sfa', + 'sfa', 'sfa/trust', 'sfa/storage', - 'sfa/util', + 'sfa/util', 'sfa/server', 'sfa/methods', 'sfa/generic', @@ -36,18 +49,24 @@ packages = [ 'sfa/rspecs/versions', 'sfa/client', 'sfa/planetlab', + 'sfa/nitos', + 'sfa/dummy', 'sfa/openstack', 'sfa/federica', + 'sfa/iotlab', + 'sfa/cortexlab', 'sfatables', 'sfatables/commands', 'sfatables/processors', ] -initscripts = [ 'sfa', 'sfa-cm' ] +initscripts = [ 'sfa' ] +if not os.path.isfile('/etc/redhat-release'): initscripts.append('functions.sfa') data_files = [ ('/etc/sfa/', [ 'config/aggregates.xml', 'config/registries.xml', 'config/default_config.xml', + 'config/api_versions.xml', 'config/sfi_config', 'config/topology', 'sfa/managers/pl/pl.rng', @@ -83,24 +102,41 @@ if sys.argv[1] in ['uninstall', 'remove', 'delete', 'clean']: remove_bins = [ '/usr/bin/' + os.path.basename(bin) for bin in scripts ] remove_files = remove_bins + [ "/etc/init.d/%s"%x for x in initscripts ] - # remove files + # remove files + def feedback (file, msg): print ("removing", file, "...",msg) for filepath in remove_files: - print "removing", filepath, "...", - try: + try: os.remove(filepath) - print "success" - except: print "failed" - # remove directories - for directory in remove_dirs: - print "removing", directory, "...", - try: + feedback(filepath,"success") + except: + feedback(filepath,"failed") + # remove directories + for directory in remove_dirs: + try: shutil.rmtree(directory) - print "success" - except: print "failed" + feedback (directory,"success") + except: + feedback (directory, "failed") else: # avoid repeating what's in the specfile already + with open("LICENSE.txt") as l: + license = l.read() + long_description = "Could not open README.html" + with open("readme.html") as r: + long_description = r.read() + setup(name='sfa', - packages = packages, + packages = packages, data_files = data_files, - scripts = scripts) + version=version_tag, + keywords = ['federation','testbeds','SFA','SfaWrap'], + url="http://svn.planet-lab.org/wiki/SFATutorial", + author="Thierry Parmentelat, Tony Mack, Scott Baker", + author_email="thierry.parmentelat@inria.fr, tmack@princeton.cs.edu, smbaker@gmail.com", + download_url = "http://build.onelab.eu/sfa/{v}/sfa-{v}.tar.gz".format(v=version_tag), + description="SFA Wrapper with drivers for PlanetLab and IotLab and others", + license = license, + long_description = long_description, + scripts = scripts, +)