mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Initial work toward separate galaxy-lib, galaxy-app, galaxy, and
tool-shed packages (see #1396). Lots of path fixing to be done still.
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import os
|
||||
import sys
|
||||
|
||||
from setuptools import setup, find_packages
|
||||
@@ -11,6 +12,91 @@ readme = open('README.rst').read()
|
||||
requirements = [
|
||||
]
|
||||
|
||||
GALAXY_PACKAGE = os.environ.get("GALAXY_PACKAGE", "galaxy-lib")
|
||||
|
||||
def _find_packages(base):
|
||||
r = []
|
||||
for sub in find_packages(os.sep.join(['lib'] + base.split('.'))):
|
||||
print 'Found package', '.'.join([base, sub])
|
||||
r.append('.'.join([base, sub]))
|
||||
return r
|
||||
|
||||
|
||||
if GALAXY_PACKAGE == "galaxy-lib":
|
||||
requirements = []
|
||||
base_packages = [
|
||||
'galaxy.datatypes',
|
||||
'galaxy.exceptions',
|
||||
'galaxy.jobs.metrics',
|
||||
'galaxy.objectstore',
|
||||
'galaxy.tools',
|
||||
'galaxy.util',
|
||||
]
|
||||
package_data = [
|
||||
'exceptions/error_codes.json',
|
||||
'datatypes/converters/*.xml',
|
||||
'datatypes/set_metadata_tool.xml',
|
||||
'tools/imp_exp/imp_history_from_archive.xml',
|
||||
'tools/imp_exp/exp_history_to_archive.xml',
|
||||
]
|
||||
elif GALAXY_PACKAGE == "galaxy-app":
|
||||
requirements = [
|
||||
'galaxy-lib',
|
||||
]
|
||||
base_packages = [
|
||||
'galaxy.auth',
|
||||
'galaxy.dependencies',
|
||||
'galaxy.external_services',
|
||||
'galaxy.jobs',
|
||||
'galaxy.model',
|
||||
'galaxy.quota',
|
||||
'galaxy.security',
|
||||
'galaxy.work',
|
||||
]
|
||||
package_data = [
|
||||
'jobs/runners/util/job_script/DEFAULT_JOB_FILE_TEMPLATE.sh',
|
||||
'jobs/runners/util/job_script/CLUSTER_SLOTS_STATEMENT.sh',
|
||||
'model/migrate/migrate.cfg',
|
||||
'dependencies/*.txt',
|
||||
# FIXME: web/proxy/js/lib doesn't exist
|
||||
#'web/proxy/js/*',
|
||||
]
|
||||
elif GALAXY_PACKAGE == "galaxy":
|
||||
requirements = [
|
||||
'galaxy-app',
|
||||
]
|
||||
base_packages = [
|
||||
'galaxy.actions',
|
||||
'galaxy.dataset_collections',
|
||||
'galaxy.forms',
|
||||
'galaxy.managers',
|
||||
'galaxy.openid',
|
||||
'galaxy.sample_tracking',
|
||||
'galaxy.tags',
|
||||
'galaxy.tours',
|
||||
'galaxy.visualization',
|
||||
'galaxy.web',
|
||||
'galaxy.webapps',
|
||||
'galaxy.workflow',
|
||||
]
|
||||
package_data = []
|
||||
elif GALAXY_PACKAGE == 'tool-shed':
|
||||
requirements = [
|
||||
'galaxy-app',
|
||||
]
|
||||
packages = ['tool_shed'] + _find_packages('tool_shed')
|
||||
package_data = []
|
||||
else:
|
||||
sys.stderr.write('ERROR: Unknown package name: {}\n'.format(GALAXY_PACKAGE))
|
||||
sys.exit(1)
|
||||
|
||||
|
||||
if GALAXY_PACKAGE.startswith('galaxy'):
|
||||
packages = ['galaxy']
|
||||
for base_package in base_packages:
|
||||
packages.append(base_package)
|
||||
packages.extend(_find_packages(base_package))
|
||||
|
||||
|
||||
# sets VERSION (also VERSION_MAJOR and VERSION_MINOR)
|
||||
execfile('lib/galaxy/version.py')
|
||||
@@ -18,38 +104,31 @@ execfile('lib/galaxy/version.py')
|
||||
scripts = ["scripts/galaxy"]
|
||||
|
||||
setup(
|
||||
name='galaxy',
|
||||
#name='galaxy',
|
||||
name=GALAXY_PACKAGE,
|
||||
version=VERSION,
|
||||
description='Galaxy (http://galaxyproject.org/).',
|
||||
long_description=readme,
|
||||
author='Galaxy Project',
|
||||
author_email='galaxy-dev@lists.galaxyproject.org',
|
||||
url='https://github.com/galaxyproject/galaxy',
|
||||
packages=find_packages('lib'),
|
||||
#packages=find_packages('lib'),
|
||||
packages=packages,
|
||||
entry_points='''
|
||||
[console_scripts]
|
||||
galaxy-paster=galaxy.util.pastescript.serve:run
|
||||
galaxy-main=galaxy.main:main
|
||||
''',
|
||||
scripts=scripts,
|
||||
package_data={'galaxy': [
|
||||
'exceptions/error_codes.json',
|
||||
'jobs/runners/util/job_script/DEFAULT_JOB_FILE_TEMPLATE.sh',
|
||||
'jobs/runners/util/job_script/CLUSTER_SLOTS_STATEMENT.sh',
|
||||
'model/migrate/migrate.cfg',
|
||||
'dependencies/*.txt',
|
||||
'datatypes/converters/*.xml',
|
||||
'datatypes/set_metadata_tool.xml',
|
||||
'tools/imp_exp/imp_history_from_archive.xml',
|
||||
'tools/imp_exp/exp_history_to_archive.xml',
|
||||
# FIXME: web/proxy/js/lib doesn't exist
|
||||
#'web/proxy/js/*',
|
||||
], 'tool_shed': [
|
||||
'galaxy_install/migrate/migrate.cfg',
|
||||
'scripts/bootstrap_tool_shed/parse_run_sh_args.sh',
|
||||
'scripts/bootstrap_tool_shed/bootstrap_tool_shed.sh',
|
||||
'scripts/bootstrap_tool_shed/user_info.xml',
|
||||
]},
|
||||
package_data={
|
||||
'galaxy': package_data,
|
||||
'tool_shed': [
|
||||
'galaxy_install/migrate/migrate.cfg',
|
||||
'scripts/bootstrap_tool_shed/parse_run_sh_args.sh',
|
||||
'scripts/bootstrap_tool_shed/bootstrap_tool_shed.sh',
|
||||
'scripts/bootstrap_tool_shed/user_info.xml',
|
||||
],
|
||||
},
|
||||
package_dir={'': 'lib'},
|
||||
include_package_data=True,
|
||||
install_requires=requirements,
|
||||
|
||||
Reference in New Issue
Block a user