From 19ae610a180ec0eed158c00228f55ba71212d34d Mon Sep 17 00:00:00 2001 From: "Michael R. Crusoe" Date: Fri, 1 Apr 2022 17:21:01 +0200 Subject: [PATCH] packaging: declarative, only one README --- MANIFEST.in | 1 - README.pypi.rst | 93 -------------------------------------------- dev-requirements.txt | 1 + pyproject.toml | 3 ++ setup.cfg | 56 ++++++++++++++++++++++++++ setup.py | 59 ---------------------------- 6 files changed, 60 insertions(+), 153 deletions(-) delete mode 100644 README.pypi.rst create mode 100644 pyproject.toml create mode 100644 setup.cfg delete mode 100644 setup.py diff --git a/MANIFEST.in b/MANIFEST.in index 2d637d2..765498d 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,2 +1 @@ -include README.pypi.rst include wes_service/openapi/workflow_execution_service.swagger.yaml diff --git a/README.pypi.rst b/README.pypi.rst deleted file mode 100644 index 85bd9fe..0000000 --- a/README.pypi.rst +++ /dev/null @@ -1,93 +0,0 @@ -Workflow as a Service -===================== - -This provides client and server implementations of the `GA4GH Workflow -Execution -Service `__ API for -the Common Workflow Language. - -It provides an `Arvados `__ -backend. It also works with any ``cwl-runner`` that supports the CWL -standard command line interface: -http://www.commonwl.org/v1.0/CommandLineTool.html#Executing\_CWL\_documents\_as\_scripts - -Installation: - -:: - - pip install wes-service - -Run a standalone server with default ``cwl-runner`` backend: - -:: - - $ wes-server - -Submit a workflow to run: - -:: - - $ wes-client --host=localhost:8080 myworkflow.cwl myjob.json - -List workflows: - -:: - - $ wes-client --list - -Get workflow status: - -:: - - $ wes-client --get - -Get stderr log from workflow: - -:: - - $ wes-client --log - -Server Options -============== - -Run a standalone server with Arvados backend: ---------------------------------------------- - -:: - - $ wes-server --backend=wes_service.arvados_wes - -Use a different executable with cwl\_runner backend ---------------------------------------------------- - -:: - - $ wes-server --backend=wes_service.cwl_runner --opt runner=cwltoil - -Pass parameters to cwl-runner ------------------------------ - -:: - - $ wes-server --backend=wes_service.cwl_runner --opt extra=--workDir=/ - -Client environment options -========================== - -Set service endpoint: - -:: - - $ export WES_API_HOST=localhost:8080 - -Set the value to pass in the ``Authorization`` header: - -:: - - $ export WES_API_AUTH=my_api_token - -Set the protocol (one of http, https) - -:: - - $ export WES_API_PROTO=http diff --git a/dev-requirements.txt b/dev-requirements.txt index 1a68f8c..d9ecf1a 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -1,3 +1,4 @@ +build flake8 pytest black diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..b0f0765 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["setuptools>=42"] +build-backend = "setuptools.build_meta" diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..5e05d0e --- /dev/null +++ b/setup.cfg @@ -0,0 +1,56 @@ +[metadata] +name = wes-service +version = 4.0 +author = GA4GH Containers and Workflows task team +author_email = common-workflow-language@googlegroups.com +description = GA4GH Workflow Execution Service reference implementation +long_description = file: README.md +long_description_content_type = text/markdown +url = https://github.com/common-workflow-language/cwltool-service +download_url = https://github.com/common-workflow-language/cwltool-service/releases +project_urls = + Bug Tracker = https://github.com/common-workflow-language/cwltool-service/issues +license = Apache 2.0 +classifiers = + Intended Audience :: Developers + License :: OSI Approved :: Apache Software License + Operating System :: MacOS :: MacOS X + Operating System :: POSIX + Programming Language :: Python + programming language :: python :: 3.7 + Programming Language :: Python :: 3.8 + Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 + Topic :: Software Development :: Libraries :: Python Modules +platforms = "MacOS X", "Posix" + +[options] +packages = wes_service, wes_client +python_requires = ~=3.7 +setup_requires = + pytest-runner +test_requires = + pytest +include_package_data = True +install_requires = + connexion >= 2.0.2, < 3 + ruamel.yaml >= 0.15.78 + schema-salad +zip_safe = False + +[options.extras_require] +cwltool = + cwlref-runner +arvados = + arvados-cwl-runner +toil = + toil[cwl]==5.6.0 + +[options.entry_points] +console_scripts= + wes-server=wes_service.wes_service_main:main + wes-client=wes_client.wes_client_main:main + +[options.package_data] +wes_service = + openapi/workflow_execution_service.swagger.yaml diff --git a/setup.py b/setup.py deleted file mode 100644 index 38c7de4..0000000 --- a/setup.py +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/env python - -import os -from setuptools import setup - -SETUP_DIR = os.path.dirname(__file__) - -long_description = "" - -with open("README.pypi.rst") as readmeFile: - long_description = readmeFile.read() - -setup( - name="wes-service", - version="4.0", - description="GA4GH Workflow Execution Service reference implementation", - long_description=long_description, - author="GA4GH Containers and Workflows task team", - author_email="common-workflow-language@googlegroups.com", - url="https://github.com/common-workflow-language/cwltool-service", - download_url="https://github.com/common-workflow-language/cwltool-service", - license="Apache 2.0", - python_requires="~=3.7", - setup_requires=["pytest-runner"], - tests_require=["pytest"], - packages=["wes_service", "wes_client"], - package_data={"wes_service": ["openapi/workflow_execution_service.swagger.yaml"]}, - include_package_data=True, - install_requires=[ - "connexion >= 2.0.2, < 3", - "ruamel.yaml >= 0.15.78", - "schema-salad", - ], - entry_points={ - "console_scripts": [ - "wes-server=wes_service.wes_service_main:main", - "wes-client=wes_client.wes_client_main:main", - ] - }, - extras_require={ - "cwltool": ["cwlref-runner"], - "arvados": ["arvados-cwl-runner"], - "toil": ["toil[cwl]==5.6.0"], - }, - zip_safe=False, - platforms=["MacOS X", "Posix"], - classifiers=[ - "Intended Audience :: Developers", - "License :: OSI Approved :: Apache Software License", - "Operating System :: MacOS :: MacOS X", - "Operating System :: POSIX", - "Programming Language :: Python", - "Programming Language :: Python :: 3.7", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Topic :: Software Development :: Libraries :: Python Modules", - ], -)