diff --git a/lib/galaxy/webapps/galaxy/controllers/admin.py b/lib/galaxy/webapps/galaxy/controllers/admin.py index 484b178c5db..f023ad177bd 100644 --- a/lib/galaxy/webapps/galaxy/controllers/admin.py +++ b/lib/galaxy/webapps/galaxy/controllers/admin.py @@ -889,7 +889,7 @@ class AdminGalaxy(controller.JSAppLauncher, AdminActions, UsesQuotaMixin, QuotaP modules.sort() modules.reverse() for item in modules: - if not item.endswith('.py') or item.startswith('0001_tools'): + if not item.endswith('_tools.py') or item.startswith('0001_tools'): continue module = item.replace('.py', '') migration_stage = int(module.replace('_tools', '')) diff --git a/lib/galaxy/webapps/tool_shed/model/migrate/versions/__init__.py b/lib/galaxy/webapps/tool_shed/model/migrate/versions/__init__.py new file mode 100644 index 00000000000..e69de29bb2d diff --git a/lib/tool_shed/galaxy_install/migrate/versions/__init__.py b/lib/tool_shed/galaxy_install/migrate/versions/__init__.py new file mode 100644 index 00000000000..e69de29bb2d diff --git a/packages/app/setup.py b/packages/app/setup.py index a07a31a86a8..1f1b2fa3b07 100644 --- a/packages/app/setup.py +++ b/packages/app/setup.py @@ -77,6 +77,28 @@ PACKAGES = [ 'galaxy.workflow', 'galaxy.workflow.resources', 'galaxy.workflow.schedulers', + 'tool_shed', + 'tool_shed.capsule', + 'tool_shed.dependencies', + 'tool_shed.dependencies.repository', + 'tool_shed.dependencies.tool', + 'tool_shed.galaxy_install.datatypes', + 'tool_shed.galaxy_install.grids', + 'tool_shed.galaxy_install.metadata', + 'tool_shed.galaxy_install.migrate', + 'tool_shed.galaxy_install.migrate.versions', + 'tool_shed.galaxy_install.repository_dependencies', + 'tool_shed.galaxy_install.tool_dependencies', + 'tool_shed.galaxy_install.tool_dependencies.recipe', + 'tool_shed.galaxy_install.tools', + 'tool_shed.galaxy_install.utility_containers', + 'tool_shed.grids', + 'tool_shed.managers', + 'tool_shed.metadata', + 'tool_shed.repository_types', + 'tool_shed.tools', + 'tool_shed.util', + 'tool_shed.utility_containers', ] ENTRY_POINTS = ''' [console_scripts] @@ -85,6 +107,9 @@ PACKAGE_DATA = { # Be sure to update MANIFEST.in for source dist. 'galaxy': [ ], + 'tool_shed': [ + 'scripts/bootstrap_tool_shed/user_info.xml', + ], } PACKAGE_DIR = { SOURCE_DIR: SOURCE_DIR, diff --git a/packages/app/tool_shed b/packages/app/tool_shed new file mode 120000 index 00000000000..a24c5c74750 --- /dev/null +++ b/packages/app/tool_shed @@ -0,0 +1 @@ +../../lib/tool_shed \ No newline at end of file diff --git a/packages/test.sh b/packages/test.sh index 53ab2a49d0c..aaf70bd4464 100755 --- a/packages/test.sh +++ b/packages/test.sh @@ -27,10 +27,12 @@ PACKAGE_DIRS=( web_stack web_framework app + web_apps ) # containers has no tests, tool_util not yet working 100%, # data has many problems quota, tool shed install database, etc.. -RUN_TESTS=(1 1 1 0 1 0 1 0 1 0 0 0) +RUN_TESTS=(1 1 1 0 1 0 1 0 1 0 0 0 0) + for ((i=0; i<${#PACKAGE_DIRS[@]}; i++)); do package_dir=${PACKAGE_DIRS[$i]} diff --git a/packages/web_apps/HISTORY.rst b/packages/web_apps/HISTORY.rst new file mode 100644 index 00000000000..ec2f0e746e9 --- /dev/null +++ b/packages/web_apps/HISTORY.rst @@ -0,0 +1,12 @@ +.. :changelog: + +History +------- + +.. to_doc + +--------------------- +19.9.0.dev0 +--------------------- + +* Initial import from dev branch of Galaxy during 19.09 development cycle. diff --git a/packages/web_apps/LICENSE b/packages/web_apps/LICENSE new file mode 120000 index 00000000000..1ef648f64b3 --- /dev/null +++ b/packages/web_apps/LICENSE @@ -0,0 +1 @@ +../../LICENSE.txt \ No newline at end of file diff --git a/packages/web_apps/MANIFEST.in b/packages/web_apps/MANIFEST.in new file mode 100644 index 00000000000..c74cefe0942 --- /dev/null +++ b/packages/web_apps/MANIFEST.in @@ -0,0 +1 @@ +include *.rst LICENSE diff --git a/packages/web_apps/Makefile b/packages/web_apps/Makefile new file mode 120000 index 00000000000..37af8bae5ba --- /dev/null +++ b/packages/web_apps/Makefile @@ -0,0 +1 @@ +../package.Makefile \ No newline at end of file diff --git a/packages/web_apps/README.rst b/packages/web_apps/README.rst new file mode 100644 index 00000000000..2f28a9fefb6 --- /dev/null +++ b/packages/web_apps/README.rst @@ -0,0 +1,14 @@ + +.. image:: https://badge.fury.io/py/galaxy-web-apps.svg + :target: https://pypi.python.org/pypi/galaxy-web-apps/ + + +Overview +-------- + +The Galaxy_ web apps (Galaxy, Reports, Tool Shed). + +* Free software: Academic Free License version 3.0 +* Code: https://github.com/galaxyproject/galaxy + +.. _Galaxy: http://galaxyproject.org/ diff --git a/packages/web_apps/dev-requirements.txt b/packages/web_apps/dev-requirements.txt new file mode 120000 index 00000000000..467b90d7a23 --- /dev/null +++ b/packages/web_apps/dev-requirements.txt @@ -0,0 +1 @@ +../package-dev-requirements.txt \ No newline at end of file diff --git a/packages/web_apps/galaxy/__init__.py b/packages/web_apps/galaxy/__init__.py new file mode 100644 index 00000000000..69e3be50dac --- /dev/null +++ b/packages/web_apps/galaxy/__init__.py @@ -0,0 +1 @@ +__path__ = __import__('pkgutil').extend_path(__path__, __name__) diff --git a/packages/web_apps/galaxy/project_galaxy_web_apps.py b/packages/web_apps/galaxy/project_galaxy_web_apps.py new file mode 100644 index 00000000000..3f416bde726 --- /dev/null +++ b/packages/web_apps/galaxy/project_galaxy_web_apps.py @@ -0,0 +1,13 @@ +# -*- coding: utf-8 -*- + +__version__ = '19.9.0.dev0' + +PROJECT_NAME = "galaxy-web-apps" +PROJECT_OWNER = PROJECT_USERAME = "galaxyproject" +PROJECT_URL = "https://github.com/galaxyproject/galaxy" +PROJECT_AUTHOR = 'Galaxy Project and Community' +PROJECT_DESCRIPTION = 'Galaxy Web Apps' +PROJECT_EMAIL = 'jmchilton@gmail.com' +RAW_CONTENT_URL = "https://raw.github.com/%s/%s/master/" % ( + PROJECT_USERAME, PROJECT_NAME +) diff --git a/packages/web_apps/galaxy/webapps b/packages/web_apps/galaxy/webapps new file mode 120000 index 00000000000..7f4c3888cef --- /dev/null +++ b/packages/web_apps/galaxy/webapps @@ -0,0 +1 @@ +../../../lib/galaxy/webapps \ No newline at end of file diff --git a/packages/web_apps/requirements.txt b/packages/web_apps/requirements.txt new file mode 100644 index 00000000000..eaf79b2a242 --- /dev/null +++ b/packages/web_apps/requirements.txt @@ -0,0 +1,2 @@ +galaxy-app + diff --git a/packages/web_apps/scripts b/packages/web_apps/scripts new file mode 120000 index 00000000000..9aec9dc5a06 --- /dev/null +++ b/packages/web_apps/scripts @@ -0,0 +1 @@ +../build_scripts \ No newline at end of file diff --git a/packages/web_apps/setup.cfg b/packages/web_apps/setup.cfg new file mode 120000 index 00000000000..eb7cf09393f --- /dev/null +++ b/packages/web_apps/setup.cfg @@ -0,0 +1 @@ +../../setup.cfg \ No newline at end of file diff --git a/packages/web_apps/setup.py b/packages/web_apps/setup.py new file mode 100644 index 00000000000..a55e4a3ad29 --- /dev/null +++ b/packages/web_apps/setup.py @@ -0,0 +1,118 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import ast +import os +import re +try: + from setuptools import setup +except ImportError: + from distutils.core import setup + +SOURCE_DIR = "galaxy" + +_version_re = re.compile(r'__version__\s+=\s+(.*)') + +project_short_name = os.path.basename(os.path.dirname(os.path.realpath(__file__))) +with open('%s/project_galaxy_%s.py' % (SOURCE_DIR, project_short_name), 'rb') as f: + init_contents = f.read().decode('utf-8') + + def get_var(var_name): + pattern = re.compile(r'%s\s+=\s+(.*)' % var_name) + match = pattern.search(init_contents).group(1) + return str(ast.literal_eval(match)) + + version = get_var("__version__") + PROJECT_NAME = get_var("PROJECT_NAME") + PROJECT_URL = get_var("PROJECT_URL") + PROJECT_AUTHOR = get_var("PROJECT_AUTHOR") + PROJECT_EMAIL = get_var("PROJECT_EMAIL") + PROJECT_DESCRIPTION = get_var("PROJECT_DESCRIPTION") + +TEST_DIR = 'tests' +PACKAGES = [ + 'galaxy', + 'galaxy.webapps', + 'galaxy.webapps.base', + 'galaxy.webapps.galaxy', + 'galaxy.webapps.galaxy.api', + 'galaxy.webapps.galaxy.controllers', + 'galaxy.webapps.reports', + 'galaxy.webapps.reports.controllers', + 'galaxy.webapps.reports.framework', + 'galaxy.webapps.tool_shed', + 'galaxy.webapps.tool_shed.api', + 'galaxy.webapps.tool_shed.controllers', + 'galaxy.webapps.tool_shed.framework', + 'galaxy.webapps.tool_shed.framework.middleware', + 'galaxy.webapps.tool_shed.model', + 'galaxy.webapps.tool_shed.model.migrate', + 'galaxy.webapps.tool_shed.model.migrate.versions', + 'galaxy.webapps.tool_shed.search', + 'galaxy.webapps.tool_shed.security', + 'galaxy.webapps.tool_shed.util', +] +ENTRY_POINTS = ''' + [console_scripts] +''' +PACKAGE_DATA = { + # Be sure to update MANIFEST.in for source dist. + 'galaxy': [ + ], +} +PACKAGE_DIR = { + SOURCE_DIR: SOURCE_DIR, +} + +readme = open('README.rst').read() +history = open('HISTORY.rst').read().replace('.. :changelog:', '') + +if os.path.exists("requirements.txt"): + requirements = open("requirements.txt").read().split("\n") +else: + # In tox, it will cover them anyway. + requirements = [] + + +test_requirements = [ + # TODO: put package test requirements here +] + + +setup( + name=PROJECT_NAME, + version=version, + description=PROJECT_DESCRIPTION, + long_description=readme + '\n\n' + history, + long_description_content_type='text/x-rst', + author=PROJECT_AUTHOR, + author_email=PROJECT_EMAIL, + url=PROJECT_URL, + packages=PACKAGES, + entry_points=ENTRY_POINTS, + package_data=PACKAGE_DATA, + package_dir=PACKAGE_DIR, + include_package_data=True, + install_requires=requirements, + license="AFL", + zip_safe=False, + keywords='galaxy', + classifiers=[ + 'Development Status :: 5 - Production/Stable', + 'Intended Audience :: Developers', + 'Environment :: Console', + 'License :: OSI Approved :: Academic Free License (AFL)', + 'Operating System :: POSIX', + 'Topic :: Software Development', + 'Topic :: Software Development :: Code Generators', + 'Topic :: Software Development :: Testing', + 'Natural Language :: English', + "Programming Language :: Python :: 2", + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + ], + test_suite=TEST_DIR, + tests_require=test_requirements +)