toil 8.2.0__tar.gz → 9.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {toil-8.2.0 → toil-9.0.0}/.gitlab-ci.yml +21 -26
- {toil-8.2.0 → toil-9.0.0}/Makefile +8 -7
- {toil-8.2.0 → toil-9.0.0}/PKG-INFO +23 -23
- {toil-8.2.0 → toil-9.0.0}/docker/Dockerfile.py +31 -12
- {toil-8.2.0 → toil-9.0.0}/docs/cwl/conformance.rst +12 -0
- {toil-8.2.0 → toil-9.0.0}/docs/cwl/running.rst +2 -2
- {toil-8.2.0 → toil-9.0.0}/docs/gettingStarted/quickStart.rst +65 -2
- {toil-8.2.0 → toil-9.0.0}/docs/running/cliOptions.rst +2 -1
- {toil-8.2.0 → toil-9.0.0}/docs/wdl/running.rst +34 -0
- {toil-8.2.0 → toil-9.0.0}/requirements-aws.txt +1 -1
- {toil-8.2.0 → toil-9.0.0}/requirements-cwl.txt +1 -1
- {toil-8.2.0 → toil-9.0.0}/requirements-dev.txt +2 -1
- toil-9.0.0/requirements-server.txt +8 -0
- {toil-8.2.0 → toil-9.0.0}/requirements-wdl.txt +1 -1
- {toil-8.2.0 → toil-9.0.0}/setup.cfg +1 -0
- toil-9.0.0/src/toil/batchSystems/registry.py +136 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/common.py +20 -1
- {toil-8.2.0 → toil-9.0.0}/src/toil/cwl/cwltoil.py +80 -37
- {toil-8.2.0 → toil-9.0.0}/src/toil/cwl/utils.py +103 -3
- {toil-8.2.0 → toil-9.0.0}/src/toil/jobStores/abstractJobStore.py +11 -236
- {toil-8.2.0 → toil-9.0.0}/src/toil/jobStores/aws/jobStore.py +2 -1
- {toil-8.2.0 → toil-9.0.0}/src/toil/jobStores/fileJobStore.py +2 -1
- {toil-8.2.0 → toil-9.0.0}/src/toil/jobStores/googleJobStore.py +7 -4
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/accelerators.py +1 -1
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/generatedEC2Lists.py +81 -19
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/misc.py +1 -1
- toil-9.0.0/src/toil/lib/plugins.py +106 -0
- toil-9.0.0/src/toil/lib/url.py +320 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/options/cwl.py +13 -1
- {toil-8.2.0 → toil-9.0.0}/src/toil/options/runner.py +17 -10
- {toil-8.2.0 → toil-9.0.0}/src/toil/options/wdl.py +12 -1
- {toil-8.2.0 → toil-9.0.0}/src/toil/provisioners/aws/awsProvisioner.py +25 -2
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/app.py +12 -6
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/cli/wes_cwl_runner.py +2 -2
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/wes/abstract_backend.py +21 -43
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/wes/toil_backend.py +2 -2
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/__init__.py +2 -2
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/batchSystems/batchSystemTest.py +2 -9
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/batchSystems/batch_system_plugin_test.py +7 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/cwlTest.py +181 -8
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scriptsTest.py +2 -1
- toil-9.0.0/src/toil/test/lib/test_url.py +69 -0
- toil-9.0.0/src/toil/test/lib/url_plugin_test.py +105 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/provisioners/aws/awsProvisionerTest.py +1 -1
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/provisioners/clusterTest.py +15 -2
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/provisioners/gceProvisionerTest.py +1 -1
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/server/serverTest.py +78 -36
- toil-9.0.0/src/toil/test/wdl/md5sum/md5sum-gs.json +1 -0
- toil-9.0.0/src/toil/test/wdl/testfiles/read_file.wdl +18 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/url_to_optional_file.wdl +2 -1
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/wdltoil_test.py +74 -125
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilSshCluster.py +23 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilUpdateEC2Instances.py +1 -0
- toil-9.0.0/src/toil/version.py +14 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/wdl/wdltoil.py +182 -314
- {toil-8.2.0 → toil-9.0.0}/src/toil/worker.py +11 -6
- {toil-8.2.0 → toil-9.0.0}/src/toil.egg-info/PKG-INFO +23 -23
- {toil-8.2.0 → toil-9.0.0}/src/toil.egg-info/SOURCES.txt +5 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil.egg-info/requires.txt +22 -22
- {toil-8.2.0 → toil-9.0.0}/version_template.py +1 -1
- toil-8.2.0/requirements-server.txt +0 -8
- toil-8.2.0/src/toil/batchSystems/registry.py +0 -239
- toil-8.2.0/src/toil/test/wdl/md5sum/md5sum-gs.json +0 -1
- toil-8.2.0/src/toil/version.py +0 -14
- {toil-8.2.0 → toil-9.0.0}/.git-blame-ignore-revs +0 -0
- {toil-8.2.0 → toil-9.0.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {toil-8.2.0 → toil-9.0.0}/.github/dependabot.yml +0 -0
- {toil-8.2.0 → toil-9.0.0}/.github/workflows/codeql-analysis.yml +0 -0
- {toil-8.2.0 → toil-9.0.0}/.gitignore +0 -0
- {toil-8.2.0 → toil-9.0.0}/.readthedocs.yaml +0 -0
- {toil-8.2.0 → toil-9.0.0}/CODE_OF_CONDUCT.md +0 -0
- {toil-8.2.0 → toil-9.0.0}/CONTRIBUTING.md +0 -0
- {toil-8.2.0 → toil-9.0.0}/LICENSE +0 -0
- {toil-8.2.0 → toil-9.0.0}/MANIFEST.in +0 -0
- {toil-8.2.0 → toil-9.0.0}/README.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/ROADMAP.md +0 -0
- {toil-8.2.0 → toil-9.0.0}/attic/README.md +0 -0
- {toil-8.2.0 → toil-9.0.0}/attic/absolute_imports.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/attic/jobTreeSlides.pdf +0 -0
- {toil-8.2.0 → toil-9.0.0}/attic/toil-sort-example.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/common.mk +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/admin/buildkit-deployment.yml +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/admin/cleanup_aws_resources.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/admin/mypy-with-ignore.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/admin/remove_trailing_whitespace.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/admin/test-pr +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/admin/wheel-of-issues +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/assets/toil-slug-logo-wordmark-2022.svg +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/hooks/lib.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/hooks/mypy-after-commit.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/hooks/mypy-before-push.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/configargparse/__init__.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/configargparse/configargparse.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/dill/__init__.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/dill/_dill.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/__init__.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/__init__.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/annotations.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/callables.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/listener.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/notificationmgr.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/publisher.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/topicargspec.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/topicdefnprovider.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/topicexc.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/topicmgr.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/topicobj.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/topictreetraverser.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/topicutils.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/core/weakmethod.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/pub.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/utils/__init__.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/utils/exchandling.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/utils/misc.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/utils/notification.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/utils/topictreeprinter.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/pubsub/utils/xmltopicdefnprovider.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/tes/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/tes/client.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/mypy-stubs/tes/models.pyi +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/pod-murder-bot/murder.yaml +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/pod-murder-bot/podKiller.sh +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/slurm-test/check_out.sh +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/slurm-test/docker-compose.yml +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/slurm-test/expected_out_basic.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/slurm-test/expected_out_sort.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/slurm-test/fileToSort.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/slurm-test/slurm.conf +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/slurm-test/slurm_test.sh +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/slurm-test/sort.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/slurm-test/toil_workflow.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/toil-ci-prebake/Dockerfile +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/toil-cwl-runner/README.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/toil-cwl-runner/pyproject.toml +0 -0
- {toil-8.2.0 → toil-9.0.0}/contrib/toil-cwl-runner/setup.cfg +0 -0
- {toil-8.2.0 → toil-9.0.0}/dashboard/grafana/Dockerfile +0 -0
- {toil-8.2.0 → toil-9.0.0}/dashboard/grafana/toil_dashboard.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/dashboard/mtail/Dockerfile +0 -0
- {toil-8.2.0 → toil-9.0.0}/dashboard/mtail/toil.mtail +0 -0
- {toil-8.2.0 → toil-9.0.0}/dashboard/prometheus/Dockerfile +0 -0
- {toil-8.2.0 → toil-9.0.0}/dashboard/prometheus/prometheus.yml +0 -0
- {toil-8.2.0 → toil-9.0.0}/dashboard/prometheus/run.sh +0 -0
- {toil-8.2.0 → toil-9.0.0}/docker/customDockerInit.sh +0 -0
- {toil-8.2.0 → toil-9.0.0}/docker/extra-debs.tsv +0 -0
- {toil-8.2.0 → toil-9.0.0}/docker/singularity-wrapper.sh +0 -0
- {toil-8.2.0 → toil-9.0.0}/docker/waitForKey.sh +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/Makefile +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/_static/favicon.ico +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/_static/logo.jpeg +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/_static/shortcut.png +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/appendices/architecture.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/appendices/aws_min_permissions.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/appendices/caching_benefits.png +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/appendices/deploy.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/appendices/environment_vars.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/appendices/toil_architecture.png +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/conf.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/contributing/checklists.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/contributing/contributing.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/cwl/introduction.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/gettingStarted/googleScreenShot.png +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/gettingStarted/googleScreenShot2.png +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/gettingStarted/install.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/index.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/python/developing.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/python/toilAPI.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/python/toilAPIBatchsystem.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/python/toilAPIExceptions.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/python/toilAPIFilestore.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/python/toilAPIJobFunctions.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/python/toilAPIJobstore.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/python/toilAPIMethods.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/python/toilAPIRunner.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/python/toilAPIService.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/cloud/amazon.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/cloud/amazonaddkeypair.png +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/cloud/cloud.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/cloud/clusterUtils.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/cloud/dashboard_screenshot.png +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/cloud/gce.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/cloud/googleScreenShot.png +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/cloud/googleScreenShot2.png +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/cloud/kubernetes.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/debugging.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/hpcEnvironments.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/introduction.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/server/docker-compose.yml +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/server/wes.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/running/utils.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/vendor/sphinxcontrib/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/vendor/sphinxcontrib/fulltoc.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/wdl/conformance.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/wdl/developing.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/wdl/introduction.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/docs/wdl/tutorial.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/pyproject.toml +0 -0
- {toil-8.2.0 → toil-9.0.0}/requirements-encryption.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/requirements-google.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/requirements-htcondor.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/requirements-kubernetes.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/requirements-mesos.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/requirements.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/setup.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/setup_gitlab_docker.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/setup_gitlab_ssh.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/abstractBatchSystem.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/abstractGridEngineBatchSystem.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/awsBatch.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/cleanup_support.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/contained_executor.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/gridengine.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/htcondor.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/kubernetes.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/local_support.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/lsf.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/lsfHelper.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/mesos/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/mesos/batchSystem.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/mesos/conftest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/mesos/executor.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/mesos/test/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/options.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/singleMachine.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/slurm.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/batchSystems/torque.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/bus.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/cwl/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/cwl/conftest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/deferred.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/exceptions.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/fileStores/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/fileStores/abstractFileStore.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/fileStores/cachingFileStore.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/fileStores/nonCachingFileStore.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/job.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/jobStores/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/jobStores/aws/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/jobStores/aws/utils.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/jobStores/conftest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/jobStores/utils.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/leader.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/aws/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/aws/ami.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/aws/iam.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/aws/s3.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/aws/session.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/aws/utils.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/aws/utils.py.orig +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/bioio.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/compatibility.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/conversions.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/docker.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/dockstore.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/ec2.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/ec2nodes.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/encryption/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/encryption/_dummy.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/encryption/_nacl.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/encryption/conftest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/exceptions.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/expando.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/ftp_utils.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/history.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/history_submission.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/humanize.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/io.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/iterables.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/memoize.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/objects.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/resources.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/retry.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/threading.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/throttle.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/trs.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/lib/web.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/options/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/options/common.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/provisioners/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/provisioners/abstractProvisioner.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/provisioners/aws/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/provisioners/clusterScaler.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/provisioners/gceProvisioner.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/provisioners/node.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/realtimeLogger.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/resource.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/api_spec/LICENSE +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/api_spec/README.rst +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/api_spec/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/api_spec/workflow_execution_service.swagger.yaml +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/celery_app.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/cli/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/utils.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/wes/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/wes/amazon_wes_utils.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/wes/tasks.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/server/wsgi_app.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/serviceManager.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/statsAndLogging.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/batchSystems/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/batchSystems/test_gridengine.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/batchSystems/test_lsf_helper.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/batchSystems/test_slurm.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cactus/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cactus/pestis.tar.gz +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cactus/test_cactus_integration.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/conftest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/2.fasta +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/2.fastq +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/alwaysfails.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/colon_test_output.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/colon_test_output_job.yaml +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/conditional_wf.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/conditional_wf.yaml +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/conftest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/directory/directory/file.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/directory_from_directory.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/download.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/download_directory.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/download_directory_file.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/download_directory_s3.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/download_file.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/download_http.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/download_https.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/download_s3.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/download_subdirectory.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/download_subdirectory_file.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/download_subdirectory_s3.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/echo-stderr.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/echo-stdout-log-dir.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/echo.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/echo_string.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/echo_string_scatter_capture_stdout.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/empty.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/file_from_directory.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/glob_dir.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/load_contents.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/measure_default_memory.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/mock_mpi/fake_mpi.yml +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/mock_mpi/fake_mpi_run.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/mpi_simple.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/not_run_required_input.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/nvidia_smi.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/optional-file-exists.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/optional-file-missing.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/optional-file.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/preemptible.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/preemptible_expression.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/preemptible_expression.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/revsort-job-missing.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/revsort-job.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/revsort.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/revsort2.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/revtool.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/revtool2.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/s3_secondary_file.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/s3_secondary_file.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/scatter_duplicate_outputs.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/seqtk_seq.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/seqtk_seq_job.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/sorttool.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/stream.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/stream.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_detection.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_detection_at_root.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.dat +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f0 +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f1 +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f1i +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f2 +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f2_TSM0 +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f3 +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f3_TSM0 +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f4 +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f4_TSM0 +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f5 +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.info +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.lock +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/cwl/whale.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/example_alwaysfail.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/example_alwaysfail_with_files.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/example_cachingbenchmark.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/stagingExampleFiles/in.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/stagingExampleFiles/out.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_arguments.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_debugging.patch +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_debugging_hangs.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_debugging_works.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_docker.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_dynamic.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_encapsulation.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_encapsulation2.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_helloworld.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_invokeworkflow.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_invokeworkflow2.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_jobfunctions.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_managing.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_managing2.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_multiplejobs.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_multiplejobs2.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_multiplejobs3.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_promises.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_promises2.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_quickstart.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_requirements.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_services.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_staging.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/docs/scripts/tutorial_stats.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/jobStores/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/jobStores/jobStoreTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/lib/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/lib/aws/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/lib/aws/test_iam.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/lib/aws/test_s3.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/lib/aws/test_utils.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/lib/dockerTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/lib/test_conversions.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/lib/test_ec2.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/lib/test_history.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/lib/test_misc.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/lib/test_trs.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/mesos/MesosDataStructuresTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/mesos/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/mesos/helloWorld.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/mesos/stress.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/options/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/options/options.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/provisioners/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/provisioners/aws/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/provisioners/clusterScalerTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/provisioners/provisionerTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/provisioners/restartScript.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/server/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/sort/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/sort/restart_sort.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/sort/sort.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/sort/sortTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/autoDeploymentTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/busTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/checkpointTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/deferredFunctionTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/dockerCheckTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/environmentTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/fileStoreTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/helloWorldTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/importExportFileTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/jobDescriptionTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/jobEncapsulationTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/jobFileStoreTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/jobServiceTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/jobTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/miscTests.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/promisedRequirementTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/promisesTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/realtimeLoggerTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/regularLogTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/resourceTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/restartDAGTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/resumabilityTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/retainTempDirTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/systemTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/threadingTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/toilContextManagerTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/userDefinedJobArgTypeTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/src/workerTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/utils/ABCWorkflowDebug/B_file.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/utils/ABCWorkflowDebug/debugWorkflow.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/utils/ABCWorkflowDebug/mkFile.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/utils/ABCWorkflowDebug/sleep.cwl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/utils/ABCWorkflowDebug/sleep.yaml +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/utils/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/utils/toilDebugTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/utils/toilKillTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/utils/utilsTest.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/lint_error.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/md5sum/empty_file.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/md5sum/md5sum.1.0.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/md5sum/md5sum.input +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/md5sum/md5sum.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/md5sum/md5sum.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/miniwdl_self_test/inputs-namespaced.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/miniwdl_self_test/inputs.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/miniwdl_self_test/self_test.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/as_map.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/as_map_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/as_pairs.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/as_pairs_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/ceil.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/ceil_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/ceil_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/collect_by_key.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/collect_by_key_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/cross.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/cross_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/flatten.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/flatten_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/floor.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/floor_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/floor_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/keys.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/keys_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/length.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/length_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/length_as_input_with_map.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/length_as_input_with_map.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/length_invalid.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/range.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/range_0.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/range_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/range_invalid.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_boolean.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_boolean_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_float.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_float_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_int.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_int_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_json.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_json_as_output.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_lines.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_lines_as_output.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_map.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_map_as_output.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_string.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_string_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_tsv.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/read_tsv_as_output.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/round.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/round_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/round_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/size.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/size_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/size_as_output.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/stderr.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/stderr_as_output.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/stdout.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/stdout_as_output.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/sub.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/sub_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/sub_as_input_with_file.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/transpose.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/transpose_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/write_json.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/write_json_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/write_lines.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/write_lines_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/write_map.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/write_map_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/write_tsv.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/write_tsv_as_command.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/zip.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/standard_library/zip_as_input.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/test.csv +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/test.tsv +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/croo.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/drop_files.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/drop_files_subworkflow.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/empty.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/not_enough_outputs.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/random.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/string_file_coercion.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/string_file_coercion.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/test.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/test_boolean.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/test_float.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/test_int.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/test_lines.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/test_map.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/test_string.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/url_to_file.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/vocab.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/vocab.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/testfiles/wait.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/wdl_specification/type_pair.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/wdl_specification/type_pair_basic.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/wdl_specification/type_pair_with_files.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/wdl_specification/v1_spec.json +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/wdl_specification/v1_spec_declaration.wdl +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/test/wdl/wdltoil_test_kubernetes.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/toilState.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilClean.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilConfig.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilDebugFile.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilDebugJob.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilDestroyCluster.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilKill.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilLaunchCluster.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilMain.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilRsyncCluster.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilServer.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilStats.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/utils/toilStatus.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/wdl/__init__.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil/wdl/utils.py +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil.egg-info/dependency_links.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil.egg-info/entry_points.txt +0 -0
- {toil-8.2.0 → toil-9.0.0}/src/toil.egg-info/top_level.txt +0 -0
|
@@ -208,8 +208,8 @@ py39_main:
|
|
|
208
208
|
python3.9 -m virtualenv venv && . venv/bin/activate && pip install -U pip wheel && make prepare && make develop extras=[all,htcondor]
|
|
209
209
|
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
210
210
|
echo -e "\e[0Ksection_start:`date +%s`:test\r\e[0KRun the tests"
|
|
211
|
-
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils"
|
|
212
|
-
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests=src/toil/test/lib
|
|
211
|
+
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils src/toil/test/server"
|
|
212
|
+
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests="src/toil/test/lib"
|
|
213
213
|
echo -e "\e[0Ksection_end:`date +%s`:test\r\e[0K"
|
|
214
214
|
|
|
215
215
|
py310_appliance_build:
|
|
@@ -253,8 +253,8 @@ py310_main:
|
|
|
253
253
|
python3.10 -m virtualenv venv && . venv/bin/activate && curl -sS https://bootstrap.pypa.io/get-pip.py | python3.10 && pip install -U pip wheel && make prepare && pip install pycparser && make develop extras=[all,htcondor]
|
|
254
254
|
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
255
255
|
echo -e "\e[0Ksection_start:`date +%s`:test\r\e[0KRun the tests"
|
|
256
|
-
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils"
|
|
257
|
-
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests=src/toil/test/lib
|
|
256
|
+
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils src/toil/test/server"
|
|
257
|
+
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests="src/toil/test/lib"
|
|
258
258
|
echo -e "\e[0Ksection_end:`date +%s`:test\r\e[0K"
|
|
259
259
|
|
|
260
260
|
py311_appliance_build:
|
|
@@ -298,8 +298,8 @@ py311_main:
|
|
|
298
298
|
python3.11 -m virtualenv venv && . venv/bin/activate && curl -sS https://bootstrap.pypa.io/get-pip.py | python3.11 && pip install -U pip wheel && make prepare && make develop extras=[all,htcondor]
|
|
299
299
|
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
300
300
|
echo -e "\e[0Ksection_start:`date +%s`:test\r\e[0KRun the tests"
|
|
301
|
-
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils"
|
|
302
|
-
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests=src/toil/test/lib
|
|
301
|
+
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils src/toil/test/server"
|
|
302
|
+
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests="src/toil/test/lib"
|
|
303
303
|
echo -e "\e[0Ksection_end:`date +%s`:test\r\e[0K"
|
|
304
304
|
|
|
305
305
|
py312_appliance_build:
|
|
@@ -343,8 +343,8 @@ py312_main:
|
|
|
343
343
|
python3.12 -m virtualenv venv && . venv/bin/activate && curl -sS https://bootstrap.pypa.io/get-pip.py | python3.12 && pip install -U pip wheel && make prepare && make develop extras=[all,htcondor]
|
|
344
344
|
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
345
345
|
echo -e "\e[0Ksection_start:`date +%s`:test\r\e[0KRun the tests"
|
|
346
|
-
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils"
|
|
347
|
-
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests=src/toil/test/lib
|
|
346
|
+
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils src/toil/test/server"
|
|
347
|
+
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests="src/toil/test/lib"
|
|
348
348
|
echo -e "\e[0Ksection_end:`date +%s`:test\r\e[0K"
|
|
349
349
|
|
|
350
350
|
py313_appliance_build:
|
|
@@ -379,8 +379,8 @@ py313_main:
|
|
|
379
379
|
python3.13 -m virtualenv venv && . venv/bin/activate && curl -sS https://bootstrap.pypa.io/get-pip.py | python3.13 && pip install -U pip wheel && make prepare && make develop extras=[all]
|
|
380
380
|
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
381
381
|
echo -e "\e[0Ksection_start:`date +%s`:test\r\e[0KRun the tests"
|
|
382
|
-
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils"
|
|
383
|
-
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests=src/toil/test/lib
|
|
382
|
+
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils src/toil/test/server"
|
|
383
|
+
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests="src/toil/test/lib"
|
|
384
384
|
echo -e "\e[0Ksection_end:`date +%s`:test\r\e[0K"
|
|
385
385
|
|
|
386
386
|
|
|
@@ -420,7 +420,7 @@ cwl_v1.2:
|
|
|
420
420
|
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
421
421
|
# Run CWL integration tests excluded from cwl_misc
|
|
422
422
|
echo -e "\e[0Ksection_start:`date +%s`:test\r\e[0KRun the tests excluded from cwl_misc"
|
|
423
|
-
time make test threads="${TEST_THREADS}" tests="src/toil/test/cwl/cwlTest.py -k '
|
|
423
|
+
time make test threads="${TEST_THREADS}" tests="src/toil/test/cwl/cwlTest.py -k 'integrative and not conformance'"
|
|
424
424
|
echo -e "\e[0Ksection_end:`date +%s`:test\r\e[0K"
|
|
425
425
|
artifacts:
|
|
426
426
|
reports:
|
|
@@ -545,7 +545,7 @@ cwl_misc:
|
|
|
545
545
|
python setup_gitlab_docker.py # login to increase the docker.io rate limit
|
|
546
546
|
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
547
547
|
echo -e "\e[0Ksection_start:`date +%s`:test\r\e[0KRun the miscellaneous CWL tests"
|
|
548
|
-
make test threads="${TEST_THREADS}" tests="src/toil/test/cwl/cwlTest.py -k '
|
|
548
|
+
make test threads="${TEST_THREADS}" tests="src/toil/test/cwl/cwlTest.py -k 'not integrative and not conformance'"
|
|
549
549
|
echo -e "\e[0Ksection_end:`date +%s`:test\r\e[0K"
|
|
550
550
|
|
|
551
551
|
#cwl_v1.2_kubernetes:
|
|
@@ -642,6 +642,12 @@ server_integration:
|
|
|
642
642
|
- if: $CI_PIPELINE_SOURCE == "schedule"
|
|
643
643
|
- if: $CI_COMMIT_TAG
|
|
644
644
|
- if: $CI_COMMIT_BRANCH =~ /.*-fix-ci/
|
|
645
|
+
- if: $CI_COMMIT_BRANCH
|
|
646
|
+
changes:
|
|
647
|
+
compare_to: 'refs/heads/master'
|
|
648
|
+
paths:
|
|
649
|
+
- 'src/toil/server/*'
|
|
650
|
+
- 'src/toil/test/server/*'
|
|
645
651
|
stage: integration
|
|
646
652
|
cache:
|
|
647
653
|
key: cache-$MAIN_PYTHON_PKG
|
|
@@ -657,7 +663,7 @@ server_integration:
|
|
|
657
663
|
- python setup_gitlab_ssh.py
|
|
658
664
|
- chmod 400 /root/.ssh/id_rsa
|
|
659
665
|
# Test server and its integration with AWS
|
|
660
|
-
- make test threads="${TEST_THREADS}" tests="src/toil/test/server"
|
|
666
|
+
- make test threads="${TEST_THREADS}" tests="src/toil/test/server -k 'integrative'"
|
|
661
667
|
|
|
662
668
|
provisioner_integration:
|
|
663
669
|
rules:
|
|
@@ -732,7 +738,7 @@ mesos:
|
|
|
732
738
|
- export GOOGLE_APPLICATION_CREDENTIALS=$GOOGLE_CREDENTIALS
|
|
733
739
|
- export TOIL_GOOGLE_KEYNAME=id_rsa
|
|
734
740
|
- export TOIL_GOOGLE_PROJECTID=toil-dev
|
|
735
|
-
- make test threads="${TEST_THREADS}" tests="src/toil/test/mesos/MesosDataStructuresTest.py::DataStructuresTest src/toil/test/batchSystems/batchSystemTest.py::MesosBatchSystemTest src/toil/test/sort/sortTest.py::SortTest::testAwsMesos src/toil/test/sort/sortTest.py::SortTest::testFileMesos src/toil/test/sort/sortTest.py::SortTest::testGoogleMesos src/toil/test/cwl/cwlTest.py::
|
|
741
|
+
- make test threads="${TEST_THREADS}" tests="src/toil/test/mesos/MesosDataStructuresTest.py::DataStructuresTest src/toil/test/batchSystems/batchSystemTest.py::MesosBatchSystemTest src/toil/test/sort/sortTest.py::SortTest::testAwsMesos src/toil/test/sort/sortTest.py::SortTest::testFileMesos src/toil/test/sort/sortTest.py::SortTest::testGoogleMesos src/toil/test/cwl/cwlTest.py::TestCWLv10Conformance::test_mesos_cwl_conformance src/toil/test/cwl/cwlTest.py::TestCWLv10Conformance::test_mesos_cwl_conformance_with_caching src/toil/test/src/promisedRequirementTest.py::TestMesosPromisedRequirements src/toil/test/provisioners/aws/awsProvisionerTest.py::AWSAutoscaleTest src/toil/test/provisioners/aws/awsProvisionerTest.py::AWSStaticAutoscaleTest src/toil/test/provisioners/aws/awsProvisionerTest.py::AWSAutoscaleTestMultipleNodeTypes src/toil/test/provisioners/aws/awsProvisionerTest.py::AWSRestartTest::testAutoScaledCluster"
|
|
736
742
|
|
|
737
743
|
batchsystem:
|
|
738
744
|
rules:
|
|
@@ -780,15 +786,4 @@ cactus_integration:
|
|
|
780
786
|
- chmod 400 /root/.ssh/id_rsa
|
|
781
787
|
- make test threads="${TEST_THREADS}" tests=src/toil/test/cactus/test_cactus_integration.py
|
|
782
788
|
|
|
783
|
-
|
|
784
|
-
plugin:
|
|
785
|
-
rules:
|
|
786
|
-
- if: $CI_PIPELINE_SOURCE != "schedule"
|
|
787
|
-
stage: integration
|
|
788
|
-
cache:
|
|
789
|
-
key: cache-$MAIN_PYTHON_PKG
|
|
790
|
-
paths:
|
|
791
|
-
- .cache/pip
|
|
792
|
-
script:
|
|
793
|
-
- ${MAIN_PYTHON_PKG} -m virtualenv venv && . venv/bin/activate && pip install -U pip wheel && make prepare && make develop extras=[all]
|
|
794
|
-
- make test threads="${TEST_THREADS}" tests=src/toil/test/batchSystems/batch_system_plugin_test.py
|
|
789
|
+
|
|
@@ -65,7 +65,7 @@ the appliance images to, for example:
|
|
|
65
65
|
You might also want to build just for one architecture and load into your
|
|
66
66
|
Docker daemon. We have a 'load_docker' target for this.
|
|
67
67
|
|
|
68
|
-
make load_docker arch=amd64
|
|
68
|
+
make load_docker arch=linux/amd64
|
|
69
69
|
|
|
70
70
|
If Docker is not installed, Docker-related targets tasks and tests will be skipped. The
|
|
71
71
|
same can be achieved by setting TOIL_DOCKER_REGISTRY to an empty string.
|
|
@@ -129,7 +129,7 @@ develop: check_venv
|
|
|
129
129
|
|
|
130
130
|
clean_develop: check_venv
|
|
131
131
|
- rm -rf src/*.egg-info
|
|
132
|
-
- rm src/toil/version.py
|
|
132
|
+
- rm -f src/toil/version.py
|
|
133
133
|
|
|
134
134
|
uninstall:
|
|
135
135
|
- pip uninstall -y toil
|
|
@@ -149,7 +149,7 @@ dist/$(sdist_name):
|
|
|
149
149
|
|
|
150
150
|
clean_sdist:
|
|
151
151
|
- rm -rf dist
|
|
152
|
-
- rm src/toil/version.py
|
|
152
|
+
- rm -f src/toil/version.py
|
|
153
153
|
|
|
154
154
|
download_cwl_spec:
|
|
155
155
|
git clone https://github.com/common-workflow-language/cwl-v1.2.git src/toil/test/cwl/spec_v12 || true && cd src/toil/test/cwl/spec_v12 && git checkout 0d538a0dbc5518f3c6083ce4571926f65cb84f76
|
|
@@ -184,11 +184,12 @@ test_offline: check_venv check_build_reqs
|
|
|
184
184
|
TOIL_HISTORY=0 \
|
|
185
185
|
python -m pytest $(verbose) $(durations) $(threadopts) -m "$(marker)" $(logging) $(cov) $(tests) $(pytest_args)
|
|
186
186
|
|
|
187
|
-
# This target will run about 1 minute of tests, and stop at the first failure
|
|
187
|
+
# This target will run about 1 minute of tests, and stop at the first failure.
|
|
188
|
+
# There can be more than one failure because of parallel execution.
|
|
188
189
|
test_1min: check_venv check_build_reqs
|
|
189
|
-
TOIL_SKIP_DOCKER=
|
|
190
|
+
TOIL_SKIP_DOCKER=False \
|
|
190
191
|
TOIL_HISTORY=0 \
|
|
191
|
-
python -m pytest $(verbose) $(durations) $(threadopts) -m "$(marker)" $(logging) --timeout=
|
|
192
|
+
python -m pytest $(verbose) $(durations) $(threadopts) -m "$(marker)" $(logging) --timeout=30 --maxfail=1 $(pytest_args) src/toil/test/batchSystems/batchSystemTest.py::SingleMachineBatchSystemTest::test_run_jobs src/toil/test/batchSystems/batchSystemTest.py::KubernetesBatchSystemBenchTest src/toil/test/server/serverTest.py::ToilWESServerBenchTest::test_get_service_info src/toil/test/cwl/cwlTest.py::TestCWLWorkflow::test_run_colon_output src/toil/test/jobStores/jobStoreTest.py::FileJobStoreTest::testUpdateBehavior
|
|
192
193
|
|
|
193
194
|
ifdef TOIL_DOCKER_REGISTRY
|
|
194
195
|
|
|
@@ -206,7 +207,7 @@ endef
|
|
|
206
207
|
|
|
207
208
|
docker: toil_docker prometheus_docker grafana_docker mtail_docker
|
|
208
209
|
|
|
209
|
-
toil_docker: docker/Dockerfile
|
|
210
|
+
toil_docker: docker/Dockerfile src/toil/version.py
|
|
210
211
|
mkdir -p .docker_cache
|
|
211
212
|
@set -ex \
|
|
212
213
|
; cd docker \
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: toil
|
|
3
|
-
Version:
|
|
3
|
+
Version: 9.0.0
|
|
4
4
|
Summary: Pipeline management software for clusters.
|
|
5
5
|
Home-page: https://github.com/DataBiosphere/toil
|
|
6
6
|
Author: Benedict Paten and the Toil community
|
|
@@ -53,11 +53,11 @@ Requires-Dist: boto3-stubs[autoscaling,boto3,ec2,iam,s3,sdb,sts]<2,>=1.28.3.post
|
|
|
53
53
|
Requires-Dist: mypy-boto3-iam<2,>=1.28.3.post2; extra == "aws"
|
|
54
54
|
Requires-Dist: mypy-boto3-s3<2,>=1.28.3.post2; extra == "aws"
|
|
55
55
|
Requires-Dist: moto<6,>=5.0.3; extra == "aws"
|
|
56
|
-
Requires-Dist: ec2_metadata<3; extra == "aws"
|
|
56
|
+
Requires-Dist: ec2_metadata<3,>=2.14.0; extra == "aws"
|
|
57
57
|
Provides-Extra: cwl
|
|
58
58
|
Requires-Dist: cwltool==3.1.20250110105449; extra == "cwl"
|
|
59
59
|
Requires-Dist: schema-salad<9,>=8.4.20230128170514; extra == "cwl"
|
|
60
|
-
Requires-Dist: galaxy-tool-util<
|
|
60
|
+
Requires-Dist: galaxy-tool-util<26; extra == "cwl"
|
|
61
61
|
Requires-Dist: galaxy-util<25; extra == "cwl"
|
|
62
62
|
Requires-Dist: ruamel.yaml<=0.19,>=0.15; extra == "cwl"
|
|
63
63
|
Requires-Dist: ruamel.yaml.clib>=0.2.6; extra == "cwl"
|
|
@@ -77,18 +77,18 @@ Requires-Dist: types-urllib3; extra == "kubernetes"
|
|
|
77
77
|
Requires-Dist: types-PyYAML; extra == "kubernetes"
|
|
78
78
|
Requires-Dist: idna>=2; extra == "kubernetes"
|
|
79
79
|
Provides-Extra: wdl
|
|
80
|
-
Requires-Dist: miniwdl==1.
|
|
80
|
+
Requires-Dist: miniwdl==1.13.0; extra == "wdl"
|
|
81
81
|
Requires-Dist: wdlparse==0.1.0; extra == "wdl"
|
|
82
82
|
Requires-Dist: graphlib-backport==1.0; python_version < "3.9" and extra == "wdl"
|
|
83
83
|
Provides-Extra: server
|
|
84
|
-
Requires-Dist: connexion[swagger-ui]<4,>=
|
|
85
|
-
Requires-Dist: flask<
|
|
86
|
-
Requires-Dist: werkzeug<4,>=
|
|
87
|
-
Requires-Dist: flask-cors
|
|
88
|
-
Requires-Dist: gunicorn
|
|
89
|
-
Requires-Dist: celery<6,>=5.
|
|
90
|
-
Requires-Dist: wes-service<5
|
|
91
|
-
Requires-Dist: ruamel.yaml<
|
|
84
|
+
Requires-Dist: connexion[swagger-ui]<4,>=3; extra == "server"
|
|
85
|
+
Requires-Dist: flask<4,>=3; extra == "server"
|
|
86
|
+
Requires-Dist: werkzeug<4,>=3; extra == "server"
|
|
87
|
+
Requires-Dist: flask-cors<6,>=5.0.1; extra == "server"
|
|
88
|
+
Requires-Dist: gunicorn<24,>=23.0.0; extra == "server"
|
|
89
|
+
Requires-Dist: celery<6,>=5.4.0; extra == "server"
|
|
90
|
+
Requires-Dist: wes-service<6,>=5.0.0; extra == "server"
|
|
91
|
+
Requires-Dist: ruamel.yaml<1,>=0.18.7; extra == "server"
|
|
92
92
|
Provides-Extra: htcondor
|
|
93
93
|
Requires-Dist: htcondor<25,>=23.6.0; sys_platform != "darwin" and extra == "htcondor"
|
|
94
94
|
Provides-Extra: mesos
|
|
@@ -98,10 +98,10 @@ Requires-Dist: boto3-stubs[autoscaling,boto3,ec2,iam,s3,sdb,sts]<2,>=1.28.3.post
|
|
|
98
98
|
Requires-Dist: mypy-boto3-iam<2,>=1.28.3.post2; extra == "all"
|
|
99
99
|
Requires-Dist: mypy-boto3-s3<2,>=1.28.3.post2; extra == "all"
|
|
100
100
|
Requires-Dist: moto<6,>=5.0.3; extra == "all"
|
|
101
|
-
Requires-Dist: ec2_metadata<3; extra == "all"
|
|
101
|
+
Requires-Dist: ec2_metadata<3,>=2.14.0; extra == "all"
|
|
102
102
|
Requires-Dist: cwltool==3.1.20250110105449; extra == "all"
|
|
103
103
|
Requires-Dist: schema-salad<9,>=8.4.20230128170514; extra == "all"
|
|
104
|
-
Requires-Dist: galaxy-tool-util<
|
|
104
|
+
Requires-Dist: galaxy-tool-util<26; extra == "all"
|
|
105
105
|
Requires-Dist: galaxy-util<25; extra == "all"
|
|
106
106
|
Requires-Dist: ruamel.yaml<=0.19,>=0.15; extra == "all"
|
|
107
107
|
Requires-Dist: ruamel.yaml.clib>=0.2.6; extra == "all"
|
|
@@ -117,17 +117,17 @@ Requires-Dist: kubernetes-stubs==v22.6.0post1; extra == "all"
|
|
|
117
117
|
Requires-Dist: types-urllib3; extra == "all"
|
|
118
118
|
Requires-Dist: types-PyYAML; extra == "all"
|
|
119
119
|
Requires-Dist: idna>=2; extra == "all"
|
|
120
|
-
Requires-Dist: miniwdl==1.
|
|
120
|
+
Requires-Dist: miniwdl==1.13.0; extra == "all"
|
|
121
121
|
Requires-Dist: wdlparse==0.1.0; extra == "all"
|
|
122
122
|
Requires-Dist: graphlib-backport==1.0; python_version < "3.9" and extra == "all"
|
|
123
|
-
Requires-Dist: connexion[swagger-ui]<4,>=
|
|
124
|
-
Requires-Dist: flask<
|
|
125
|
-
Requires-Dist: werkzeug<4,>=
|
|
126
|
-
Requires-Dist: flask-cors
|
|
127
|
-
Requires-Dist: gunicorn
|
|
128
|
-
Requires-Dist: celery<6,>=5.
|
|
129
|
-
Requires-Dist: wes-service<5
|
|
130
|
-
Requires-Dist: ruamel.yaml<
|
|
123
|
+
Requires-Dist: connexion[swagger-ui]<4,>=3; extra == "all"
|
|
124
|
+
Requires-Dist: flask<4,>=3; extra == "all"
|
|
125
|
+
Requires-Dist: werkzeug<4,>=3; extra == "all"
|
|
126
|
+
Requires-Dist: flask-cors<6,>=5.0.1; extra == "all"
|
|
127
|
+
Requires-Dist: gunicorn<24,>=23.0.0; extra == "all"
|
|
128
|
+
Requires-Dist: celery<6,>=5.4.0; extra == "all"
|
|
129
|
+
Requires-Dist: wes-service<6,>=5.0.0; extra == "all"
|
|
130
|
+
Requires-Dist: ruamel.yaml<1,>=0.18.7; extra == "all"
|
|
131
131
|
Requires-Dist: pymesos<0.4,>=0.3.15; python_version < "3.11" and extra == "all"
|
|
132
132
|
Dynamic: author
|
|
133
133
|
Dynamic: author-email
|
|
@@ -72,6 +72,21 @@ dependencies = ' '.join(python_packages[python] +
|
|
|
72
72
|
# Dependencies for singularity on kubernetes
|
|
73
73
|
'tzdata'])
|
|
74
74
|
|
|
75
|
+
# pymesos's http-parser dependency can't build on Python later than 3.10, as
|
|
76
|
+
# released in 0.9.0. The upstream pymesos can, but we write it out of Toil's
|
|
77
|
+
# dependencies on later Python versions, since a working http-parser is not
|
|
78
|
+
# available in PyPI. So we need to manually inject a working http-parser, and
|
|
79
|
+
# pymesos, into the Docker images.
|
|
80
|
+
extra_mesos_python_modules = {
|
|
81
|
+
'python3.9': [],
|
|
82
|
+
'python3.10': [],
|
|
83
|
+
'python3.11': ['http-parser@git+https://github.com/adamnovak/http-parser.git@5a63516597bb4c93a7ba178b1e4bab939da5afb3', 'pymesos==0.3.15'],
|
|
84
|
+
'python3.12': ['http-parser@git+https://github.com/adamnovak/http-parser.git@5a63516597bb4c93a7ba178b1e4bab939da5afb3', 'pymesos==0.3.15'],
|
|
85
|
+
'python3.13': ['http-parser@git+https://github.com/adamnovak/http-parser.git@5a63516597bb4c93a7ba178b1e4bab939da5afb3', 'pymesos==0.3.15']
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
extra_python_modules = " ".join(extra_mesos_python_modules[python])
|
|
89
|
+
|
|
75
90
|
|
|
76
91
|
def heredoc(s):
|
|
77
92
|
s = textwrap.dedent(s).format(**globals())
|
|
@@ -182,18 +197,22 @@ print(heredoc('''
|
|
|
182
197
|
# The stock pip is too old and can't install from sdist with extras
|
|
183
198
|
RUN curl -sS https://bootstrap.pypa.io/get-pip.py | {python}
|
|
184
199
|
|
|
185
|
-
# Include virtualenv, as it is still the recommended way to deploy
|
|
186
|
-
|
|
200
|
+
# Include virtualenv, as it is still the recommended way to deploy
|
|
201
|
+
# pipelines.
|
|
202
|
+
#
|
|
203
|
+
# We need to --ignore-installed here to allow shadowing system packages
|
|
204
|
+
# from apt in /usr/lib/python3/dist-packages when the installed package
|
|
205
|
+
# needs newer versions. We just hope that doesn't break the Ubuntu system
|
|
206
|
+
# too badly when we're actually on the system Python, or if Toil needs to
|
|
207
|
+
# upgrade a distutils or setuptools dependency. On the deadsnakes Pythons,
|
|
208
|
+
# installations into the version-specific package directory won't be seen
|
|
209
|
+
# by the system Python which is a different version.
|
|
210
|
+
#
|
|
211
|
+
# TODO: Change to nested virtual environments and .pth files and teach Toil
|
|
212
|
+
# to just ship the user-level one for hot deploy.
|
|
213
|
+
RUN {pip} install --ignore-installed --upgrade 'virtualenv>=20.25.1,<21'
|
|
187
214
|
|
|
188
|
-
|
|
189
|
-
# Install setuptools within the virtual environment to properly access distutils due to PEP 632 and gh-95299 in Python 3.12 release notes
|
|
190
|
-
# https://docs.python.org/3/whatsnew/3.12.html#summary-release-highlights
|
|
191
|
-
RUN virtualenv --python {python} --never-download /home/s3am \
|
|
192
|
-
&& /home/s3am/bin/pip install setuptools \
|
|
193
|
-
&& /home/s3am/bin/pip install s3am==2.0 \
|
|
194
|
-
&& ln -s /home/s3am/bin/s3am /usr/local/bin/
|
|
195
|
-
|
|
196
|
-
RUN {pip} install --upgrade setuptools==69.2.0
|
|
215
|
+
RUN {pip} install --ignore-installed --upgrade 'setuptools>=80,<81'
|
|
197
216
|
|
|
198
217
|
# Fix for https://issues.apache.org/jira/browse/MESOS-3793
|
|
199
218
|
ENV MESOS_LAUNCHER=posix
|
|
@@ -222,7 +241,7 @@ print(heredoc('''
|
|
|
222
241
|
|
|
223
242
|
# This component changes most frequently and keeping it last maximizes Docker cache hits.
|
|
224
243
|
COPY {sdistName} .
|
|
225
|
-
RUN {pip} install {sdistName}[all]
|
|
244
|
+
RUN {pip} install --ignore-installed --upgrade {sdistName}[all] {extra_python_modules}
|
|
226
245
|
RUN rm {sdistName}
|
|
227
246
|
|
|
228
247
|
# We intentionally inherit the default ENTRYPOINT and CMD from the base image, to the effect
|
|
@@ -64,6 +64,8 @@ CWL 1.2 Optional Features
|
|
|
64
64
|
|
|
65
65
|
.. |docker| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/docker.json%3Fjob=cwl_badge
|
|
66
66
|
|
|
67
|
+
.. |env_var| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/env_var.json%3Fjob=cwl_badge
|
|
68
|
+
|
|
67
69
|
.. |expression_tool| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/expression_tool.json%3Fjob=cwl_badge
|
|
68
70
|
|
|
69
71
|
.. |format_checking| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/format_checking.json%3Fjob=cwl_badge
|
|
@@ -82,16 +84,26 @@ CWL 1.2 Optional Features
|
|
|
82
84
|
|
|
83
85
|
.. |multiple_input| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/multiple_input.json%3Fjob=cwl_badge
|
|
84
86
|
|
|
87
|
+
.. |multiple| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/multiple.json%3Fjob=cwl_badge
|
|
88
|
+
|
|
85
89
|
.. |networkaccess| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/networkaccess.json%3Fjob=cwl_badge
|
|
86
90
|
|
|
91
|
+
.. |require| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/require.json%3Fjob=cwl_badge
|
|
92
|
+
|
|
87
93
|
.. |resource| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/resource.json%3Fjob=cwl_badge
|
|
88
94
|
|
|
89
95
|
.. |scatter| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/scatter.json%3Fjob=cwl_badge
|
|
90
96
|
|
|
91
97
|
.. |schema_def| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/schema_def.json%3Fjob=cwl_badge
|
|
92
98
|
|
|
99
|
+
.. |secondary_files| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/secondary_files.json%3Fjob=cwl_badge
|
|
100
|
+
|
|
101
|
+
.. |shell_command| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/shell_command.json%3Fjob=cwl_badge
|
|
102
|
+
|
|
93
103
|
.. |step_input| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/step_input.json%3Fjob=cwl_badge
|
|
94
104
|
|
|
105
|
+
.. |subworkflow| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/subworkflow.json%3Fjob=cwl_badge
|
|
106
|
+
|
|
95
107
|
.. |timelimit| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/timelimit.json%3Fjob=cwl_badge
|
|
96
108
|
|
|
97
109
|
.. |workflow| image:: https://flat.badgen.net/https/ucsc-ci.com/api/v4/projects/3/jobs/artifacts/master/raw/badges1.2/workflow.json%3Fjob=cwl_badge
|
|
@@ -100,8 +100,8 @@ Besides the normal Toil options and the options supported by cwltool, toil-cwl-r
|
|
|
100
100
|
--reference-inputs Do not copy remote inputs into Toil's file store and assume they are accessible in place from all nodes.
|
|
101
101
|
--disable-streaming Do not allow streaming of job input files. By default, files marked with ``streamable`` True are streamed from remote job stores.
|
|
102
102
|
--cwl-default-ram Apply CWL specification default ramMin.
|
|
103
|
-
--no-cwl-default-ram Do not apply CWL specification default ramMin, so that Toil --defaultMemory applies.
|
|
104
|
-
|
|
103
|
+
--no-cwl-default-ram Do not apply CWL specification default ramMin, so that Toil --defaultMemory applies. This can help jobs get to Slurm with no memory limit assigned.
|
|
104
|
+
--cwl-min-ram BYTES Specify a minimum memory allocation for all tasks. If ``--no-cwl-default-ram`` is passed, this does not apply to tools that do not specify a memory requirement; ``--defaultMemory`` is used for those tools in that case.
|
|
105
105
|
|
|
106
106
|
Running CWL in the Cloud
|
|
107
107
|
------------------------
|
|
@@ -150,10 +150,73 @@ For something beyond a "Hello, world!" example, refer to :ref:`runningDetail`.
|
|
|
150
150
|
|
|
151
151
|
Toil's customization options are available in Python workflows. Run ``python3 helloWorld.py --help`` to see a complete list of available options.
|
|
152
152
|
|
|
153
|
+
|
|
154
|
+
.. _mitochondriaExample:
|
|
155
|
+
|
|
156
|
+
Example: mitochondrial variant calling
|
|
157
|
+
--------------------------------------
|
|
158
|
+
|
|
159
|
+
Let's run a more realistic workflow with Toil. This workflow is mitochondrial variant calling: It will take the human reference genome and sequenced reads from an individual and determine how that person's mitochondrial DNA differs from the reference genome.
|
|
160
|
+
|
|
161
|
+
We will run an example `workflow from Dockstore <https://dockstore.org/workflows/github.com/broadinstitute/gatk/MitochondriaPipeline:master?tab=info>`_.
|
|
162
|
+
First, grab an example workflow input::
|
|
163
|
+
|
|
164
|
+
(venv) $ wget https://toil-datasets.s3.us-west-2.amazonaws.com/MitochondriaInputs.zip && unzip MitochondriaInputs.zip
|
|
165
|
+
|
|
166
|
+
Then, change your current working directory::
|
|
167
|
+
|
|
168
|
+
(venv) $ cd MitochondriaInputs
|
|
169
|
+
|
|
170
|
+
This workflow will take approximately 30 minutes to run.
|
|
171
|
+
|
|
172
|
+
Since Toil supports Dockstore TRS IDs that allows the WDL runner to run any workflow on Dockstore, we will run it directly::
|
|
173
|
+
|
|
174
|
+
(venv) $ toil-wdl-runner '#workflow/github.com/broadinstitute/gatk/MitochondriaPipeline:master' -i ExampleInputsMitochondriaPipeline.json --logInfo --container docker --quantCheck false --outputFile mitochondria.json
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
.. note::
|
|
178
|
+
* ``--logInfo`` runs the workflow with INFO level logging. For different levels of logging, see ``--logLevel``, ``--logCritical``, ``--logError``, ``--logWarning``, ``--logDebug``, and ``--logTrace``.
|
|
179
|
+
* ``--container docker`` uses Docker as the container backend. By default, Toil will run with Singularity. To set explicitly, use ``--container singularity``.
|
|
180
|
+
* ``--outputFile`` will put the workflow JSON outputs into a file. If omitted, Toil will put the workflow outputs onto the commandline.
|
|
181
|
+
* ``--quantCheck false`` disables certain type checks. This is useful for Cromwell compatibility.
|
|
182
|
+
|
|
183
|
+
Unless fakeroot support is set up for Singularity, this particular workflow must be run with Docker because it assumes commands in the container will run as root.
|
|
184
|
+
Additionally, WDL workflows sometimes depend on non-spec compliant behaviors. To see if Toil has an workaround option, see :ref:`wdlOptions`.
|
|
185
|
+
|
|
186
|
+
Once the workflow is done running, you can look at your JSON output with ``jq . mitochondria.json``. For example, if we want the ``out_vcf`` output from the workflow, we can run ``jq -r '.["MitochondriaPipeline.out_vcf"]' mitochondria.json`` to get its path::
|
|
187
|
+
|
|
188
|
+
/private/groups/patenlab/toil-dev/mitochondria/wdl-out-c6o9mjop/MitochondriaPipeline.AlignAndCall.FilterContamination/HG02571.GRCh38.chrM.vcf
|
|
189
|
+
|
|
190
|
+
To open the VCF file, we can run ``less $(jq -r '.["MitochondriaPipeline.out_vcf"]' mitochondria.json)``
|
|
191
|
+
|
|
192
|
+
.. note::
|
|
193
|
+
For outputs that aren't files, their values are directly in the JSON. For example, with ``jq '.["MitochondriaPipeline.median_coverage"]' mitochondria.json`` you can fetch the ``median_coverage`` output's value::
|
|
194
|
+
|
|
195
|
+
4183.5
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
Toil uses a jobstore to store all of a workflow's files and to communicate between workers. If not specified, Toil will use an ephemeral directory that is deleted after Toil is done running.
|
|
199
|
+
To control where those files are placed or allow a workflow to be restarted, you can use the ``--jobStore`` option. If you specify a jobstore explicitly, the jobstore will stick around if the workflow fails. To keep the jobstore after a successful completion, use ``--clean never``. To remove the jobstore even after a failing run, use ``--clean always``.
|
|
200
|
+
|
|
201
|
+
On a cluster, the jobstore must be somewhere accessible to all worker nodes. Here's an example of running the workflow with a specified jobstore::
|
|
202
|
+
|
|
203
|
+
(venv) $ toil-wdl-runner MitochondriaPipeline.wdl -i ExampleInputsMitochondriaPipeline.json --logInfo --container docker --outputFile mitochondria.json --jobstore mitochondriaJobstore
|
|
204
|
+
|
|
205
|
+
Toil supports several batch systems. By default, Toil will use ``single_machine``, which will run everything on the local machine. Other batch systems are available. For example, you can use `--batchSystem slurm` to run on a Slurm cluster::
|
|
206
|
+
|
|
207
|
+
(venv) $ toil-wdl-runner MitochondriaPipeline.wdl -i ExampleInputsMitochondriaPipeline.json --logInfo --container docker --outputFile mitochondria.json --jobStore mitochondriaJobstore --batchSystem slurm
|
|
208
|
+
|
|
209
|
+
See :ref:`runningSlurm` for more information, including how to specify time limits and partitions.
|
|
210
|
+
|
|
211
|
+
Sometimes, a workflow may fail. If this is the case, the workflow can be restarted from the point of failure with ``--restart``, as long as you still have the jobstore::
|
|
212
|
+
|
|
213
|
+
(venv) $ toil-wdl-runner MitochondriaPipeline.wdl -i ExampleInputsMitochondriaPipeline.json --logInfo --container docker --outputFile mitochondria.json --jobStore mitochondriaJobstore --batchSystem slurm
|
|
214
|
+
|
|
215
|
+
|
|
153
216
|
.. _runningDetail:
|
|
154
217
|
|
|
155
|
-
|
|
156
|
-
|
|
218
|
+
Example: sorting
|
|
219
|
+
----------------
|
|
157
220
|
|
|
158
221
|
For a more detailed example and explanation, we've developed a sample pipeline
|
|
159
222
|
that merge-sorts a temporary file. This is not supposed to be an efficient
|
|
@@ -527,7 +527,8 @@ systems have issues!).
|
|
|
527
527
|
|
|
528
528
|
**Miscellaneous Options**
|
|
529
529
|
|
|
530
|
-
--disableChaining
|
|
530
|
+
--disableChaining BOOL
|
|
531
|
+
Disables chaining of jobs (chaining uses one job's
|
|
531
532
|
resource allocation for its successor job if
|
|
532
533
|
possible).
|
|
533
534
|
--disableJobStoreChecksumVerification
|
|
@@ -48,6 +48,8 @@ workflow, you can do::
|
|
|
48
48
|
.. _`5.12.0`: https://github.com/DataBiosphere/toil/releases/tag/releases%2F5.12.0
|
|
49
49
|
.. _`Cromwell`: https://github.com/broadinstitute/cromwell#readme
|
|
50
50
|
|
|
51
|
+
.. _wdlOptions:
|
|
52
|
+
|
|
51
53
|
Toil WDL Runner Options
|
|
52
54
|
-----------------------
|
|
53
55
|
|
|
@@ -84,6 +86,23 @@ the `Cromwell Output Organizer (croo)`_, will default to ``True``.
|
|
|
84
86
|
|
|
85
87
|
.. _`Cromwell Output Organizer (croo)`: https://github.com/ENCODE-DCC/croo
|
|
86
88
|
|
|
89
|
+
``--strict``: Specifies whether Toil should immediately exit on a lint warning. By default, this is false.
|
|
90
|
+
|
|
91
|
+
``--quantCheck``: Specifies whether quantifier validation type checking should be enabled.
|
|
92
|
+
Disabling this is useful for workflows which Cromwell can run but don't fully comply with the WDL spec.
|
|
93
|
+
By default, this is true.
|
|
94
|
+
|
|
95
|
+
``--runImportsOnWorkers``: Run file imports on workers. This is useful if the leader is not network optimized
|
|
96
|
+
and lots of downloads are necessary. By default, this is false.
|
|
97
|
+
|
|
98
|
+
``--importWorkersBatchSize``: Requires ``--runImportsOnWorkers`` to be true. Specify the target batch size in bytes for batched imports.
|
|
99
|
+
As many files as can fit will go into each batch import job. This also accepts abbreviations, such as ``G`` or ``Gi``.
|
|
100
|
+
|
|
101
|
+
``--importWorkersDisk``: Requires ``--runImportsOnWorkers`` to be true. Specify the disk size each import worker will get.
|
|
102
|
+
This usually will not need to be set as Toil will attempt to use file streaming when downloading files.
|
|
103
|
+
If not possible, for example, when downloading from AWS to a GCE job store,
|
|
104
|
+
this should be set to the largest file size of all files to import. By default, this is 1 MiB.
|
|
105
|
+
|
|
87
106
|
Any number of other Toil options may also be specified. For defined Toil options,
|
|
88
107
|
see :ref:`commandRef`.
|
|
89
108
|
|
|
@@ -121,6 +140,21 @@ The final number is a sequential counter: if a step has to be retried, or if
|
|
|
121
140
|
you run the workflow multiple times without clearing out the logs directory, it
|
|
122
141
|
will increment.
|
|
123
142
|
|
|
143
|
+
Enabling WDL Call Cache
|
|
144
|
+
-----------------------
|
|
145
|
+
|
|
146
|
+
Toil can cache the task and workflow outputs to use outputs of already ran tasks and workflows.
|
|
147
|
+
This can save time when debugging long running workflows where a later task fails. However, this is only guaranteed for
|
|
148
|
+
running locally and can use up a considerable amount of disk space.
|
|
149
|
+
|
|
150
|
+
To use, set the following environment variables before running the workflow::
|
|
151
|
+
|
|
152
|
+
export MINIWDL__CALL_CACHE__PUT=True
|
|
153
|
+
export MINIWDL__CALL_CACHE__GET=True
|
|
154
|
+
export MINIWDL__CALL_CACHE__DIR=/absolute_path/to/cache
|
|
124
155
|
|
|
156
|
+
The path to the cache directory must be an absolute path.
|
|
125
157
|
|
|
158
|
+
For setting up call cache permanently, see the `MiniWDL call cache`_ documentation.
|
|
126
159
|
|
|
160
|
+
.. _MiniWDL call cache: https://miniwdl.readthedocs.io/en/latest/runner_reference.html#call-cache
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
pytest>=6.2.1,<9
|
|
2
2
|
pytest-cov>=2.12.1,<7
|
|
3
3
|
pytest-timeout>=1.4.2,<3
|
|
4
|
+
pytest_httpserver>=1.1.3,<2
|
|
4
5
|
pytest-subtests
|
|
5
6
|
stubserver>=1.1,<2
|
|
6
7
|
setuptools>=65.5.1,<81
|
|
@@ -10,7 +11,7 @@ astroid>=3,<4
|
|
|
10
11
|
sphinx-autodoc-typehints>=1.24.0,<4
|
|
11
12
|
sphinxcontrib-autoprogram==0.1.9
|
|
12
13
|
cwltest>=2.6.20250314152537
|
|
13
|
-
mypy==1.
|
|
14
|
+
mypy==1.16.1
|
|
14
15
|
types-aws-xray-sdk
|
|
15
16
|
types-boto<2.49.18.20241020
|
|
16
17
|
types-Flask-Cors
|