toil 9.1.1__tar.gz → 9.2.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-9.1.1 → toil-9.2.0}/.git-blame-ignore-revs +2 -0
- {toil-9.1.1 → toil-9.2.0}/.github/workflows/codeql-analysis.yml +4 -4
- {toil-9.1.1 → toil-9.2.0}/.gitlab-ci.yml +46 -55
- {toil-9.1.1 → toil-9.2.0}/.readthedocs.yaml +1 -1
- {toil-9.1.1 → toil-9.2.0}/Makefile +1 -1
- {toil-9.1.1 → toil-9.2.0}/PKG-INFO +11 -14
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/topictreetraverser.pyi +5 -2
- toil-9.2.0/contrib/slurm-test/docker-compose.yml +100 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/slurm-test/slurm.conf +11 -8
- toil-9.2.0/contrib/slurm-test/slurm_test.sh +44 -0
- {toil-9.1.1/src/toil/test/sort → toil-9.2.0/contrib/slurm-test}/sort.py +3 -8
- {toil-9.1.1 → toil-9.2.0}/contrib/toil-ci-prebake/Dockerfile +6 -7
- {toil-9.1.1 → toil-9.2.0}/docker/Dockerfile.py +6 -5
- {toil-9.1.1 → toil-9.2.0}/docs/appendices/deploy.rst +1 -1
- {toil-9.1.1 → toil-9.2.0}/docs/running/hpcEnvironments.rst +1 -1
- {toil-9.1.1 → toil-9.2.0}/requirements-cwl.txt +2 -2
- {toil-9.1.1 → toil-9.2.0}/requirements-dev.txt +4 -5
- {toil-9.1.1 → toil-9.2.0}/requirements-server.txt +1 -1
- toil-9.2.0/requirements-wdl.txt +2 -0
- {toil-9.1.1 → toil-9.2.0}/requirements.txt +0 -1
- {toil-9.1.1 → toil-9.2.0}/setup.py +2 -2
- toil-9.2.0/setup_gitlab_docker.py +56 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/__init__.py +5 -9
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/abstractBatchSystem.py +23 -22
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/abstractGridEngineBatchSystem.py +17 -12
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/awsBatch.py +8 -8
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/cleanup_support.py +4 -4
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/contained_executor.py +3 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/gridengine.py +3 -4
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/htcondor.py +5 -5
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/kubernetes.py +65 -63
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/local_support.py +2 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/lsf.py +6 -7
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/mesos/batchSystem.py +11 -7
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/mesos/test/__init__.py +1 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/options.py +9 -10
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/registry.py +3 -7
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/singleMachine.py +8 -11
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/slurm.py +49 -38
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/torque.py +3 -4
- {toil-9.1.1 → toil-9.2.0}/src/toil/bus.py +36 -34
- {toil-9.1.1 → toil-9.2.0}/src/toil/common.py +129 -89
- {toil-9.1.1 → toil-9.2.0}/src/toil/cwl/cwltoil.py +857 -729
- {toil-9.1.1 → toil-9.2.0}/src/toil/cwl/utils.py +44 -35
- {toil-9.1.1 → toil-9.2.0}/src/toil/fileStores/__init__.py +3 -1
- {toil-9.1.1 → toil-9.2.0}/src/toil/fileStores/abstractFileStore.py +28 -30
- {toil-9.1.1 → toil-9.2.0}/src/toil/fileStores/cachingFileStore.py +8 -8
- {toil-9.1.1 → toil-9.2.0}/src/toil/fileStores/nonCachingFileStore.py +10 -21
- {toil-9.1.1 → toil-9.2.0}/src/toil/job.py +159 -158
- {toil-9.1.1 → toil-9.2.0}/src/toil/jobStores/abstractJobStore.py +68 -69
- {toil-9.1.1 → toil-9.2.0}/src/toil/jobStores/aws/jobStore.py +249 -213
- {toil-9.1.1 → toil-9.2.0}/src/toil/jobStores/aws/utils.py +13 -24
- {toil-9.1.1 → toil-9.2.0}/src/toil/jobStores/fileJobStore.py +28 -22
- {toil-9.1.1 → toil-9.2.0}/src/toil/jobStores/googleJobStore.py +21 -17
- {toil-9.1.1 → toil-9.2.0}/src/toil/jobStores/utils.py +3 -7
- {toil-9.1.1 → toil-9.2.0}/src/toil/leader.py +17 -22
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/accelerators.py +6 -4
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/aws/__init__.py +9 -10
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/aws/ami.py +33 -19
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/aws/iam.py +6 -6
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/aws/s3.py +259 -157
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/aws/session.py +76 -76
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/aws/utils.py +51 -43
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/checksum.py +19 -15
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/compatibility.py +3 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/conversions.py +45 -18
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/directory.py +29 -26
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/docker.py +93 -99
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/dockstore.py +77 -50
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/ec2.py +39 -38
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/ec2nodes.py +11 -4
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/exceptions.py +8 -5
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/ftp_utils.py +9 -14
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/generatedEC2Lists.py +161 -20
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/history.py +141 -97
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/history_submission.py +163 -72
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/io.py +27 -17
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/memoize.py +2 -1
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/misc.py +15 -11
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/pipes.py +40 -25
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/plugins.py +12 -8
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/resources.py +1 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/retry.py +32 -38
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/threading.py +12 -12
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/throttle.py +1 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/trs.py +113 -51
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/url.py +14 -23
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/web.py +7 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/options/common.py +18 -15
- {toil-9.1.1 → toil-9.2.0}/src/toil/options/cwl.py +2 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/options/runner.py +9 -5
- {toil-9.1.1 → toil-9.2.0}/src/toil/options/wdl.py +1 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/provisioners/__init__.py +9 -9
- {toil-9.1.1 → toil-9.2.0}/src/toil/provisioners/abstractProvisioner.py +22 -20
- {toil-9.1.1 → toil-9.2.0}/src/toil/provisioners/aws/__init__.py +20 -14
- {toil-9.1.1 → toil-9.2.0}/src/toil/provisioners/aws/awsProvisioner.py +10 -8
- {toil-9.1.1 → toil-9.2.0}/src/toil/provisioners/clusterScaler.py +19 -18
- {toil-9.1.1 → toil-9.2.0}/src/toil/provisioners/gceProvisioner.py +2 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/provisioners/node.py +11 -13
- {toil-9.1.1 → toil-9.2.0}/src/toil/realtimeLogger.py +4 -4
- {toil-9.1.1 → toil-9.2.0}/src/toil/resource.py +5 -5
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/app.py +2 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/cli/wes_cwl_runner.py +11 -11
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/utils.py +18 -21
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/wes/abstract_backend.py +9 -8
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/wes/amazon_wes_utils.py +3 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/wes/tasks.py +3 -5
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/wes/toil_backend.py +17 -21
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/wsgi_app.py +3 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/serviceManager.py +3 -4
- {toil-9.1.1 → toil-9.2.0}/src/toil/statsAndLogging.py +12 -13
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/__init__.py +33 -24
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/batchSystems/batchSystemTest.py +12 -11
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/batchSystems/batch_system_plugin_test.py +3 -5
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/batchSystems/test_slurm.py +38 -24
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/conftest.py +5 -6
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/cwlTest.py +194 -78
- toil-9.2.0/src/toil/test/cwl/download_file_uri.json +6 -0
- toil-9.2.0/src/toil/test/cwl/download_file_uri_no_hostname.json +6 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_staging.py +1 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/jobStores/jobStoreTest.py +9 -7
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/aws/test_iam.py +1 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/aws/test_s3.py +1 -1
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/dockerTest.py +9 -9
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/test_ec2.py +12 -11
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/test_trs.py +16 -14
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/test_url.py +7 -6
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/url_plugin_test.py +12 -18
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/provisioners/aws/awsProvisionerTest.py +10 -8
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/provisioners/clusterScalerTest.py +2 -5
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/provisioners/clusterTest.py +1 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/server/serverTest.py +13 -4
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/sort/restart_sort.py +2 -6
- {toil-9.1.1/contrib/slurm-test → toil-9.2.0/src/toil/test/sort}/sort.py +3 -8
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/deferredFunctionTest.py +7 -7
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/environmentTest.py +1 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/fileStoreTest.py +5 -5
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/importExportFileTest.py +5 -6
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/jobServiceTest.py +22 -14
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/jobTest.py +121 -25
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/miscTests.py +5 -7
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/promisedRequirementTest.py +8 -7
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/regularLogTest.py +2 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/resourceTest.py +5 -8
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/restartDAGTest.py +5 -6
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/systemTest.py +3 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/workerTest.py +1 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/utils/toilDebugTest.py +6 -4
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/utils/utilsTest.py +15 -14
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/wdltoil_test.py +247 -124
- {toil-9.1.1 → toil-9.2.0}/src/toil/toilState.py +2 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilDebugFile.py +3 -8
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilDebugJob.py +1 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilLaunchCluster.py +1 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilSshCluster.py +2 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilStats.py +19 -24
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilStatus.py +11 -14
- toil-9.2.0/src/toil/version.py +14 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/wdl/wdltoil.py +313 -209
- {toil-9.1.1 → toil-9.2.0}/src/toil/worker.py +18 -12
- {toil-9.1.1 → toil-9.2.0}/src/toil.egg-info/PKG-INFO +11 -14
- {toil-9.1.1 → toil-9.2.0}/src/toil.egg-info/SOURCES.txt +2 -5
- {toil-9.1.1 → toil-9.2.0}/src/toil.egg-info/requires.txt +8 -17
- {toil-9.1.1 → toil-9.2.0}/version_template.py +3 -2
- toil-9.1.1/contrib/slurm-test/docker-compose.yml +0 -71
- toil-9.1.1/contrib/slurm-test/slurm_test.sh +0 -26
- toil-9.1.1/requirements-wdl.txt +0 -3
- toil-9.1.1/setup_gitlab_docker.py +0 -38
- toil-9.1.1/src/toil/test/cwl/staging_cat.cwl +0 -27
- toil-9.1.1/src/toil/test/cwl/staging_make_file.cwl +0 -25
- toil-9.1.1/src/toil/test/cwl/staging_workflow.cwl +0 -43
- toil-9.1.1/src/toil/test/cwl/zero_default.cwl +0 -61
- toil-9.1.1/src/toil/test/utils/ABCWorkflowDebug/ABC.txt +0 -1
- toil-9.1.1/src/toil/version.py +0 -14
- {toil-9.1.1 → toil-9.2.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {toil-9.1.1 → toil-9.2.0}/.github/dependabot.yml +0 -0
- {toil-9.1.1 → toil-9.2.0}/.gitignore +0 -0
- {toil-9.1.1 → toil-9.2.0}/CODE_OF_CONDUCT.md +0 -0
- {toil-9.1.1 → toil-9.2.0}/CONTRIBUTING.md +0 -0
- {toil-9.1.1 → toil-9.2.0}/LICENSE +0 -0
- {toil-9.1.1 → toil-9.2.0}/MANIFEST.in +0 -0
- {toil-9.1.1 → toil-9.2.0}/README.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/ROADMAP.md +0 -0
- {toil-9.1.1 → toil-9.2.0}/attic/README.md +0 -0
- {toil-9.1.1 → toil-9.2.0}/attic/absolute_imports.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/attic/jobTreeSlides.pdf +0 -0
- {toil-9.1.1 → toil-9.2.0}/attic/toil-sort-example.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/common.mk +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/admin/buildkit-deployment.yml +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/admin/cleanup_aws_resources.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/admin/mypy-with-ignore.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/admin/remove_trailing_whitespace.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/admin/test-pr +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/admin/wheel-of-issues +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/assets/toil-slug-logo-wordmark-2022.svg +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/hooks/lib.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/hooks/mypy-after-commit.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/hooks/mypy-before-push.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/configargparse/__init__.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/configargparse/configargparse.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/dill/__init__.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/dill/_dill.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/__init__.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/__init__.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/annotations.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/callables.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/listener.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/notificationmgr.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/publisher.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/topicargspec.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/topicdefnprovider.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/topicexc.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/topicmgr.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/topicobj.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/topicutils.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/core/weakmethod.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/pub.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/utils/__init__.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/utils/exchandling.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/utils/misc.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/utils/notification.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/utils/topictreeprinter.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/pubsub/utils/xmltopicdefnprovider.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/tes/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/tes/client.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/mypy-stubs/tes/models.pyi +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/pod-murder-bot/murder.yaml +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/pod-murder-bot/podKiller.sh +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/slurm-test/check_out.sh +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/slurm-test/expected_out_basic.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/slurm-test/expected_out_sort.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/slurm-test/fileToSort.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/slurm-test/toil_workflow.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/toil-cwl-runner/README.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/toil-cwl-runner/pyproject.toml +0 -0
- {toil-9.1.1 → toil-9.2.0}/contrib/toil-cwl-runner/setup.cfg +0 -0
- {toil-9.1.1 → toil-9.2.0}/dashboard/grafana/Dockerfile +0 -0
- {toil-9.1.1 → toil-9.2.0}/dashboard/grafana/toil_dashboard.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/dashboard/mtail/Dockerfile +0 -0
- {toil-9.1.1 → toil-9.2.0}/dashboard/mtail/toil.mtail +0 -0
- {toil-9.1.1 → toil-9.2.0}/dashboard/prometheus/Dockerfile +0 -0
- {toil-9.1.1 → toil-9.2.0}/dashboard/prometheus/prometheus.yml +0 -0
- {toil-9.1.1 → toil-9.2.0}/dashboard/prometheus/run.sh +0 -0
- {toil-9.1.1 → toil-9.2.0}/docker/customDockerInit.sh +0 -0
- {toil-9.1.1 → toil-9.2.0}/docker/extra-debs.tsv +0 -0
- {toil-9.1.1 → toil-9.2.0}/docker/singularity-wrapper.sh +0 -0
- {toil-9.1.1 → toil-9.2.0}/docker/waitForKey.sh +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/Makefile +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/_static/favicon.ico +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/_static/logo.jpeg +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/_static/shortcut.png +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/appendices/architecture.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/appendices/aws_min_permissions.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/appendices/caching_benefits.png +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/appendices/environment_vars.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/appendices/toil_architecture.png +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/conf.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/contributing/checklists.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/contributing/contributing.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/cwl/conformance.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/cwl/introduction.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/cwl/running.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/gettingStarted/googleScreenShot.png +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/gettingStarted/googleScreenShot2.png +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/gettingStarted/install.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/gettingStarted/quickStart.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/index.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/python/developing.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/python/toilAPI.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/python/toilAPIBatchsystem.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/python/toilAPIExceptions.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/python/toilAPIFilestore.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/python/toilAPIJobFunctions.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/python/toilAPIJobstore.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/python/toilAPIMethods.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/python/toilAPIRunner.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/python/toilAPIService.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/cliOptions.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/cloud/amazon.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/cloud/amazonaddkeypair.png +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/cloud/cloud.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/cloud/clusterUtils.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/cloud/dashboard_screenshot.png +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/cloud/gce.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/cloud/googleScreenShot.png +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/cloud/googleScreenShot2.png +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/cloud/kubernetes.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/debugging.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/introduction.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/server/docker-compose.yml +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/server/wes.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/running/utils.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/vendor/sphinxcontrib/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/vendor/sphinxcontrib/fulltoc.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/wdl/conformance.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/wdl/developing.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/wdl/introduction.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/wdl/running.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/docs/wdl/tutorial.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/pyproject.toml +0 -0
- {toil-9.1.1 → toil-9.2.0}/requirements-aws.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/requirements-encryption.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/requirements-google.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/requirements-htcondor.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/requirements-kubernetes.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/requirements-mesos.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/setup.cfg +0 -0
- {toil-9.1.1 → toil-9.2.0}/setup_gitlab_ssh.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/lsfHelper.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/mesos/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/mesos/conftest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/batchSystems/mesos/executor.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/cwl/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/cwl/conftest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/deferred.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/exceptions.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/jobStores/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/jobStores/aws/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/jobStores/conftest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/aws/config.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/aws/utils.py.orig +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/bioio.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/encryption/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/encryption/_dummy.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/encryption/_nacl.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/encryption/conftest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/expando.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/humanize.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/lib/objects.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/options/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/api_spec/LICENSE +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/api_spec/README.rst +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/api_spec/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/api_spec/workflow_execution_service.swagger.yaml +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/celery_app.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/cli/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/server/wes/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/batchSystems/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/batchSystems/test_gridengine.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/batchSystems/test_lsf_helper.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cactus/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cactus/pestis.tar.gz +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cactus/test_cactus_integration.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/conftest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/2.fasta +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/2.fastq +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/alwaysfails.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/colon_test_output.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/colon_test_output_job.yaml +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/conditional_wf.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/conditional_wf.yaml +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/directory/directory/file.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/directory_from_directory.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/download.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/download_directory.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/download_directory_file.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/download_directory_s3.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/download_file.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/download_http.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/download_https.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/download_s3.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/download_subdirectory.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/download_subdirectory_file.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/download_subdirectory_s3.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/echo-stderr.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/echo-stdout-log-dir.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/echo.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/echo_string.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/echo_string_scatter_capture_stdout.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/empty.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/file_from_directory.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/glob_dir.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/load_contents.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/measure_default_memory.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/mock_mpi/fake_mpi.yml +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/mock_mpi/fake_mpi_run.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/mpi_simple.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/not_run_required_input.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/nvidia_smi.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/optional-file-exists.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/optional-file-missing.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/optional-file.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/preemptible.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/preemptible_expression.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/preemptible_expression.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/revsort-job-missing.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/revsort-job.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/revsort.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/revsort2.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/revtool.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/revtool2.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/s3_secondary_file.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/s3_secondary_file.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/scatter_duplicate_outputs.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/seqtk_seq.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/seqtk_seq_job.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/sorttool.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/stream.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/stream.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_detection.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_detection_at_root.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.dat +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f0 +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f1 +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f1i +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f2 +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f2_TSM0 +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f3 +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f3_TSM0 +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f4 +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f4_TSM0 +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.f5 +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.info +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/test_filename_conflict_resolution.ms/table.lock +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/cwl/whale.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/example_alwaysfail.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/example_alwaysfail_with_files.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/example_cachingbenchmark.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/stagingExampleFiles/out.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_arguments.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_debugging.patch +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_debugging_hangs.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_debugging_works.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_docker.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_dynamic.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_encapsulation.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_encapsulation2.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_helloworld.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_invokeworkflow.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_invokeworkflow2.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_jobfunctions.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_managing.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_managing2.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_multiplejobs.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_multiplejobs2.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_multiplejobs3.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_promises.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_promises2.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_quickstart.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_requirements.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_services.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scripts/tutorial_stats.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/docs/scriptsTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/jobStores/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/aws/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/aws/test_utils.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/test_conversions.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/test_history.py +4 -4
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/lib/test_misc.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/mesos/MesosDataStructuresTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/mesos/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/mesos/helloWorld.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/mesos/stress.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/options/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/options/options.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/provisioners/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/provisioners/aws/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/provisioners/gceProvisionerTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/provisioners/provisionerTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/provisioners/restartScript.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/server/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/sort/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/sort/sortTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/autoDeploymentTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/busTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/checkpointTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/dockerCheckTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/helloWorldTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/jobDescriptionTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/jobEncapsulationTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/jobFileStoreTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/promisesTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/realtimeLoggerTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/resumabilityTest.py +2 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/retainTempDirTest.py +3 -3
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/threadingTest.py +1 -1
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/toilContextManagerTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/src/userDefinedJobArgTypeTest.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/utils/ABCWorkflowDebug/B_file.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/utils/ABCWorkflowDebug/debugWorkflow.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/utils/ABCWorkflowDebug/mkFile.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/utils/ABCWorkflowDebug/sleep.cwl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/utils/ABCWorkflowDebug/sleep.yaml +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/utils/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/utils/toilKillTest.py +1 -1
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/lint_error.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/md5sum/empty_file.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/md5sum/md5sum-gs.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/md5sum/md5sum.1.0.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/md5sum/md5sum.input +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/md5sum/md5sum.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/md5sum/md5sum.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/miniwdl_self_test/inputs-namespaced.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/miniwdl_self_test/inputs.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/miniwdl_self_test/self_test.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/as_map.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/as_map_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/as_pairs.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/as_pairs_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/ceil.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/ceil_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/ceil_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/collect_by_key.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/collect_by_key_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/cross.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/cross_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/flatten.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/flatten_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/floor.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/floor_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/floor_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/keys.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/keys_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/length.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/length_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/length_as_input_with_map.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/length_as_input_with_map.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/length_invalid.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/range.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/range_0.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/range_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/range_invalid.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_boolean.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_boolean_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_float.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_float_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_int.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_int_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_json.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_json_as_output.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_lines.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_lines_as_output.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_map.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_map_as_output.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_string.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_string_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_tsv.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/read_tsv_as_output.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/round.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/round_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/round_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/size.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/size_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/size_as_output.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/stderr.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/stderr_as_output.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/stdout.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/stdout_as_output.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/sub.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/sub_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/sub_as_input_with_file.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/transpose.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/transpose_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/write_json.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/write_json_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/write_lines.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/write_lines_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/write_map.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/write_map_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/write_tsv.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/write_tsv_as_command.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/zip.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/standard_library/zip_as_input.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/test.csv +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/test.tsv +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/croo.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/drop_files.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/drop_files_subworkflow.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/empty.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/gather.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/not_enough_outputs.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/random.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/read_file.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/string_file_coercion.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/string_file_coercion.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/test.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/test_boolean.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/test_float.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/test_int.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/test_lines.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/test_map.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/test_string.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/url_to_file.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/url_to_optional_file.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/vocab.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/vocab.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/testfiles/wait.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/wdl_specification/type_pair.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/wdl_specification/type_pair_basic.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/wdl_specification/type_pair_with_files.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/wdl_specification/v1_spec.json +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/wdl_specification/v1_spec_declaration.wdl +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/test/wdl/wdltoil_test_kubernetes.py +2 -2
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilClean.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilConfig.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilDestroyCluster.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilKill.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilMain.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilRsyncCluster.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilServer.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/utils/toilUpdateEC2Instances.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/wdl/__init__.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil/wdl/utils.py +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil.egg-info/dependency_links.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil.egg-info/entry_points.txt +0 -0
- {toil-9.1.1 → toil-9.2.0}/src/toil.egg-info/top_level.txt +0 -0
|
@@ -39,11 +39,11 @@ jobs:
|
|
|
39
39
|
|
|
40
40
|
steps:
|
|
41
41
|
- name: Checkout repository
|
|
42
|
-
uses: actions/checkout@
|
|
42
|
+
uses: actions/checkout@v6
|
|
43
43
|
|
|
44
44
|
# Initializes the CodeQL tools for scanning.
|
|
45
45
|
- name: Initialize CodeQL
|
|
46
|
-
uses: github/codeql-action/init@
|
|
46
|
+
uses: github/codeql-action/init@v4
|
|
47
47
|
with:
|
|
48
48
|
languages: ${{ matrix.language }}
|
|
49
49
|
# If you wish to specify custom queries, you can do so here or in a config file.
|
|
@@ -54,7 +54,7 @@ jobs:
|
|
|
54
54
|
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
|
55
55
|
# If this step fails, then you should remove it and run the build manually (see below)
|
|
56
56
|
- name: Autobuild
|
|
57
|
-
uses: github/codeql-action/autobuild@
|
|
57
|
+
uses: github/codeql-action/autobuild@v4
|
|
58
58
|
|
|
59
59
|
# ℹ️ Command-line programs to run using the OS shell.
|
|
60
60
|
# 📚 https://git.io/JvXDl
|
|
@@ -68,4 +68,4 @@ jobs:
|
|
|
68
68
|
# make release
|
|
69
69
|
|
|
70
70
|
- name: Perform CodeQL Analysis
|
|
71
|
-
uses: github/codeql-action/analyze@
|
|
71
|
+
uses: github/codeql-action/analyze@v4
|
|
@@ -88,21 +88,21 @@ lint:
|
|
|
88
88
|
# make diff_pydocstyle_report
|
|
89
89
|
|
|
90
90
|
# We make sure to also lint with our oldest supported Python version on every PR.
|
|
91
|
-
|
|
91
|
+
py310_lint:
|
|
92
92
|
rules:
|
|
93
93
|
- if: $CI_PIPELINE_SOURCE != "schedule"
|
|
94
94
|
stage: linting_and_dependencies
|
|
95
95
|
cache:
|
|
96
|
-
key: cache-python3.
|
|
96
|
+
key: cache-python3.10
|
|
97
97
|
paths:
|
|
98
98
|
- .cache/pip
|
|
99
99
|
- .mypy_cache
|
|
100
100
|
script: |
|
|
101
101
|
pwd
|
|
102
102
|
echo -e "\e[0Ksection_start:`date +%s`:prepare\r\e[0KDownload and install all dependencies (except htcondor)"
|
|
103
|
-
python3.
|
|
104
|
-
python3.
|
|
105
|
-
python3.
|
|
103
|
+
python3.10 -m virtualenv venv && . venv/bin/activate && make prepare && make develop extras=[all]
|
|
104
|
+
python3.10 -m pip freeze
|
|
105
|
+
python3.10 --version
|
|
106
106
|
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
107
107
|
echo -e "\e[0Ksection_start:`date +%s`:mypy\r\e[0KCheck the Python types with mypy"
|
|
108
108
|
make mypy
|
|
@@ -118,7 +118,7 @@ cwl_dependency_is_stand_alone:
|
|
|
118
118
|
- if: $CI_PIPELINE_SOURCE != "schedule"
|
|
119
119
|
stage: linting_and_dependencies
|
|
120
120
|
cache:
|
|
121
|
-
key: cache-$MAIN_PYTHON_PKG
|
|
121
|
+
key: cache-$MAIN_PYTHON_PKG-cwl
|
|
122
122
|
paths:
|
|
123
123
|
- .cache/pip
|
|
124
124
|
script: |
|
|
@@ -135,7 +135,7 @@ wdl_dependency_is_stand_alone:
|
|
|
135
135
|
- if: $CI_PIPELINE_SOURCE != "schedule"
|
|
136
136
|
stage: linting_and_dependencies
|
|
137
137
|
cache:
|
|
138
|
-
key: cache-$MAIN_PYTHON_PKG
|
|
138
|
+
key: cache-$MAIN_PYTHON_PKG-wdl
|
|
139
139
|
paths:
|
|
140
140
|
- .cache/pip
|
|
141
141
|
script: |
|
|
@@ -168,52 +168,6 @@ quick_test_offline:
|
|
|
168
168
|
TOIL_TEST_QUICK=True make test_offline tests=src/toil/test threads="${TEST_THREADS}"
|
|
169
169
|
echo -e "\e[0Ksection_end:`date +%s`:test\r\e[0K"
|
|
170
170
|
|
|
171
|
-
py39_appliance_build:
|
|
172
|
-
rules:
|
|
173
|
-
- if: $CI_PIPELINE_SOURCE == "schedule"
|
|
174
|
-
- if: $CI_COMMIT_TAG
|
|
175
|
-
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
176
|
-
- if: $CI_COMMIT_BRANCH =~ /.*-fix-ci/
|
|
177
|
-
- if: $CI_COMMIT_BRANCH =~ /.*3\.9.*/
|
|
178
|
-
stage: basic_tests
|
|
179
|
-
cache:
|
|
180
|
-
key: cache-python3.9
|
|
181
|
-
paths:
|
|
182
|
-
- .cache/pip
|
|
183
|
-
script: |
|
|
184
|
-
pwd
|
|
185
|
-
echo -e "\e[0Ksection_start:`date +%s`:prepare\r\e[0KDownload and install all the dependencies, including htcondor"
|
|
186
|
-
python3.9 -m virtualenv venv && . venv/bin/activate && pip install -U pip wheel && pip install -U build && make prepare && pip install pycparser && make develop extras=[all,htcondor]
|
|
187
|
-
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
188
|
-
# This reads GITLAB_SECRET_FILE_QUAY_CREDENTIALS
|
|
189
|
-
echo -e "\e[0Ksection_start:`date +%s`:docker\r\e[0KBuild a source distribution and then build the docker containers"
|
|
190
|
-
python setup_gitlab_docker.py
|
|
191
|
-
make push_docker
|
|
192
|
-
echo -e "\e[0Ksection_end:`date +%s`:docker\r\e[0K"
|
|
193
|
-
|
|
194
|
-
py39_main:
|
|
195
|
-
rules:
|
|
196
|
-
- if: $CI_PIPELINE_SOURCE == "schedule"
|
|
197
|
-
- if: $CI_COMMIT_TAG
|
|
198
|
-
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
199
|
-
- if: $CI_COMMIT_BRANCH =~ /.*-fix-ci/
|
|
200
|
-
- if: $CI_COMMIT_BRANCH =~ /.*3\.9.*/
|
|
201
|
-
stage: basic_tests
|
|
202
|
-
cache:
|
|
203
|
-
key: cache-python3.9
|
|
204
|
-
paths:
|
|
205
|
-
- .cache/pip
|
|
206
|
-
script: |
|
|
207
|
-
pwd
|
|
208
|
-
echo -e "\e[0Ksection_start:`date +%s`:prepare\r\e[0KDownload and install all the dependencies, including htcondor"
|
|
209
|
-
python3.9 -m virtualenv venv && . venv/bin/activate && pip install -U pip wheel && make prepare && make develop extras=[all,htcondor]
|
|
210
|
-
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
211
|
-
echo -e "\e[0Ksection_start:`date +%s`:test\r\e[0KRun the tests"
|
|
212
|
-
make doctest threads="${TEST_THREADS}"
|
|
213
|
-
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils src/toil/test/server"
|
|
214
|
-
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests="src/toil/test/lib"
|
|
215
|
-
echo -e "\e[0Ksection_end:`date +%s`:test\r\e[0K"
|
|
216
|
-
|
|
217
171
|
py310_appliance_build:
|
|
218
172
|
rules:
|
|
219
173
|
- if: $CI_PIPELINE_SOURCE == "schedule"
|
|
@@ -389,6 +343,43 @@ py313_main:
|
|
|
389
343
|
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests="src/toil/test/lib"
|
|
390
344
|
echo -e "\e[0Ksection_end:`date +%s`:test\r\e[0K"
|
|
391
345
|
|
|
346
|
+
py314_appliance_build:
|
|
347
|
+
stage: basic_tests
|
|
348
|
+
cache:
|
|
349
|
+
key: cache-python3.14
|
|
350
|
+
paths:
|
|
351
|
+
- .cache/pip
|
|
352
|
+
script: |
|
|
353
|
+
pwd
|
|
354
|
+
echo -e "\e[0Ksection_start:`date +%s`:prepare\r\e[0KDownload and install all the dependencies, including htcondor"
|
|
355
|
+
python3.14 -m virtualenv venv && . venv/bin/activate && curl -sS https://bootstrap.pypa.io/get-pip.py | python3.14 && pip install -U pip wheel && pip install -U build && make prepare && pip install pycparser && make develop extras=[all]
|
|
356
|
+
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
357
|
+
# This reads GITLAB_SECRET_FILE_QUAY_CREDENTIALS
|
|
358
|
+
echo -e "\e[0Ksection_start:`date +%s`:docker\r\e[0KBuild a source distribution and then build the docker containers"
|
|
359
|
+
python setup_gitlab_docker.py
|
|
360
|
+
make push_docker
|
|
361
|
+
echo -e "\e[0Ksection_end:`date +%s`:docker\r\e[0K"
|
|
362
|
+
|
|
363
|
+
py314_main:
|
|
364
|
+
rules:
|
|
365
|
+
- if: $CI_PIPELINE_SOURCE != "schedule"
|
|
366
|
+
stage: basic_tests
|
|
367
|
+
cache:
|
|
368
|
+
key: cache-python3.14
|
|
369
|
+
paths:
|
|
370
|
+
- .cache/pip
|
|
371
|
+
script: |
|
|
372
|
+
pwd
|
|
373
|
+
# todo: htcondor is not out for python 3.14 yet, we don't actively test htcondor batchsystems but should still test an htcondor install
|
|
374
|
+
echo -e "\e[0Ksection_start:`date +%s`:prepare\r\e[0KDownload and install all the dependencies, except htcondor"
|
|
375
|
+
python3.14 -m virtualenv venv && . venv/bin/activate && curl -sS https://bootstrap.pypa.io/get-pip.py | python3.14 && pip install -U pip wheel && make prepare && make develop extras=[all]
|
|
376
|
+
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
377
|
+
echo -e "\e[0Ksection_start:`date +%s`:test\r\e[0KRun the tests"
|
|
378
|
+
make doctest threads="${TEST_THREADS}"
|
|
379
|
+
make test threads="${TEST_THREADS}" tests="src/toil/test/src src/toil/test/utils src/toil/test/server"
|
|
380
|
+
TOIL_SKIP_DOCKER=true make test threads="${TEST_THREADS}" tests="src/toil/test/lib"
|
|
381
|
+
echo -e "\e[0Ksection_end:`date +%s`:test\r\e[0K"
|
|
382
|
+
|
|
392
383
|
slurm_test:
|
|
393
384
|
rules:
|
|
394
385
|
- if: $CI_PIPELINE_SOURCE == "schedule"
|
|
@@ -584,7 +575,7 @@ wdl:
|
|
|
584
575
|
- .cache/pip
|
|
585
576
|
script: |
|
|
586
577
|
pwd
|
|
587
|
-
echo -e "\e[0Ksection_start:`date +%s`:prepare\r\e[0KDownload and install default-
|
|
578
|
+
echo -e "\e[0Ksection_start:`date +%s`:prepare\r\e[0KDownload and install default-jre, and all the Python dependencies except htcondor"
|
|
588
579
|
apt update && apt install -y default-jre
|
|
589
580
|
${MAIN_PYTHON_PKG} -m virtualenv venv && . venv/bin/activate && pip install -U pip wheel && make prepare && make develop extras=[all]
|
|
590
581
|
echo -e "\e[0Ksection_end:`date +%s`:prepare\r\e[0K"
|
|
@@ -782,7 +773,7 @@ cactus_integration:
|
|
|
782
773
|
paths:
|
|
783
774
|
- .cache/pip
|
|
784
775
|
script:
|
|
785
|
-
- export CACTUS_COMMIT_SHA=
|
|
776
|
+
- export CACTUS_COMMIT_SHA=b51ff106fa8510d33b09551d338ace48b5c5fa5a
|
|
786
777
|
- set -e
|
|
787
778
|
- ${MAIN_PYTHON_PKG} -m virtualenv venv && . venv/bin/activate && make prepare && make develop extras=[aws]
|
|
788
779
|
- python setup_gitlab_docker.py # login to increase the docker.io rate limit
|
|
@@ -376,7 +376,7 @@ diff_mypy:
|
|
|
376
376
|
diff-cover --fail-under=100 --compare-branch origin/master cobertura.xml
|
|
377
377
|
|
|
378
378
|
pyupgrade: $(PYSOURCES)
|
|
379
|
-
pyupgrade --exit-zero-even-if-changed --
|
|
379
|
+
pyupgrade --exit-zero-even-if-changed --py310-plus $^
|
|
380
380
|
|
|
381
381
|
flake8: $(PYSOURCES)
|
|
382
382
|
flake8 --ignore=E501,W293,W291,E265,E302,E722,E126,E303,E261,E201,E202,W503,W504,W391,E128,E301,E127,E502,E129,E262,E111,E117,E306,E203,E231,E226,E741,E122,E251,E305,E701,E222,E225,E241,E305,E123,E121,E703,E704,E125,E402 $^
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: toil
|
|
3
|
-
Version: 9.
|
|
3
|
+
Version: 9.2.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
|
|
@@ -16,11 +16,11 @@ Classifier: Natural Language :: English
|
|
|
16
16
|
Classifier: Operating System :: MacOS :: MacOS X
|
|
17
17
|
Classifier: Operating System :: POSIX
|
|
18
18
|
Classifier: Operating System :: POSIX :: Linux
|
|
19
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
20
19
|
Classifier: Programming Language :: Python :: 3.10
|
|
21
20
|
Classifier: Programming Language :: Python :: 3.11
|
|
22
21
|
Classifier: Programming Language :: Python :: 3.12
|
|
23
22
|
Classifier: Programming Language :: Python :: 3.13
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
24
24
|
Classifier: Topic :: Scientific/Engineering
|
|
25
25
|
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
|
|
26
26
|
Classifier: Topic :: Scientific/Engineering :: Astronomy
|
|
@@ -29,7 +29,7 @@ Classifier: Topic :: Scientific/Engineering :: Information Analysis
|
|
|
29
29
|
Classifier: Topic :: Scientific/Engineering :: Medical Science Apps.
|
|
30
30
|
Classifier: Topic :: System :: Distributed Computing
|
|
31
31
|
Classifier: Topic :: Utilities
|
|
32
|
-
Requires-Python: >=3.
|
|
32
|
+
Requires-Python: >=3.10
|
|
33
33
|
Description-Content-Type: text/x-rst
|
|
34
34
|
License-File: LICENSE
|
|
35
35
|
Requires-Dist: dill<0.4,>=0.3.2
|
|
@@ -40,7 +40,6 @@ Requires-Dist: python-dateutil
|
|
|
40
40
|
Requires-Dist: psutil<8,>=6.1.0
|
|
41
41
|
Requires-Dist: PyPubSub<5,>=4.0.3
|
|
42
42
|
Requires-Dist: addict<2.5,>=2.2.1
|
|
43
|
-
Requires-Dist: backports.zoneinfo[tzdata]; python_version < "3.9"
|
|
44
43
|
Requires-Dist: enlighten<2,>=1.5.2
|
|
45
44
|
Requires-Dist: configargparse<2,>=1.7
|
|
46
45
|
Requires-Dist: ruamel.yaml>=0.15
|
|
@@ -55,11 +54,11 @@ Requires-Dist: mypy-boto3-s3<2,>=1.28.3.post2; extra == "aws"
|
|
|
55
54
|
Requires-Dist: moto<6,>=5.0.3; extra == "aws"
|
|
56
55
|
Requires-Dist: ec2_metadata<3,>=2.14.0; extra == "aws"
|
|
57
56
|
Provides-Extra: cwl
|
|
58
|
-
Requires-Dist: cwltool==3.1.
|
|
57
|
+
Requires-Dist: cwltool==3.1.20260108082145; extra == "cwl"
|
|
59
58
|
Requires-Dist: schema-salad<9,>=8.4.20230128170514; extra == "cwl"
|
|
60
59
|
Requires-Dist: galaxy-tool-util<26; extra == "cwl"
|
|
61
60
|
Requires-Dist: galaxy-util<26; extra == "cwl"
|
|
62
|
-
Requires-Dist: ruamel.yaml<=0.19,>=0.15; extra == "cwl"
|
|
61
|
+
Requires-Dist: ruamel.yaml<=0.19.1,>=0.15; extra == "cwl"
|
|
63
62
|
Requires-Dist: ruamel.yaml.clib>=0.2.6; extra == "cwl"
|
|
64
63
|
Requires-Dist: networkx!=2.8.1,<4; extra == "cwl"
|
|
65
64
|
Requires-Dist: CacheControl[filecache]; extra == "cwl"
|
|
@@ -77,15 +76,14 @@ Requires-Dist: types-urllib3; extra == "kubernetes"
|
|
|
77
76
|
Requires-Dist: types-PyYAML; extra == "kubernetes"
|
|
78
77
|
Requires-Dist: idna>=2; extra == "kubernetes"
|
|
79
78
|
Provides-Extra: wdl
|
|
80
|
-
Requires-Dist: miniwdl==1.13.
|
|
79
|
+
Requires-Dist: miniwdl==1.13.1; extra == "wdl"
|
|
81
80
|
Requires-Dist: wdlparse==0.1.0; extra == "wdl"
|
|
82
|
-
Requires-Dist: graphlib-backport==1.0; python_version < "3.9" and extra == "wdl"
|
|
83
81
|
Provides-Extra: server
|
|
84
82
|
Requires-Dist: connexion[swagger-ui]<4,>=3; extra == "server"
|
|
85
83
|
Requires-Dist: flask<4,>=3; extra == "server"
|
|
86
84
|
Requires-Dist: werkzeug<4,>=3; extra == "server"
|
|
87
85
|
Requires-Dist: flask-cors<7,>=5.0.1; extra == "server"
|
|
88
|
-
Requires-Dist: gunicorn<
|
|
86
|
+
Requires-Dist: gunicorn<26,>=23.0.0; extra == "server"
|
|
89
87
|
Requires-Dist: celery<6,>=5.4.0; extra == "server"
|
|
90
88
|
Requires-Dist: wes-service<6,>=5.0.0; extra == "server"
|
|
91
89
|
Requires-Dist: ruamel.yaml<1,>=0.18.7; extra == "server"
|
|
@@ -99,11 +97,11 @@ Requires-Dist: mypy-boto3-iam<2,>=1.28.3.post2; extra == "all"
|
|
|
99
97
|
Requires-Dist: mypy-boto3-s3<2,>=1.28.3.post2; extra == "all"
|
|
100
98
|
Requires-Dist: moto<6,>=5.0.3; extra == "all"
|
|
101
99
|
Requires-Dist: ec2_metadata<3,>=2.14.0; extra == "all"
|
|
102
|
-
Requires-Dist: cwltool==3.1.
|
|
100
|
+
Requires-Dist: cwltool==3.1.20260108082145; extra == "all"
|
|
103
101
|
Requires-Dist: schema-salad<9,>=8.4.20230128170514; extra == "all"
|
|
104
102
|
Requires-Dist: galaxy-tool-util<26; extra == "all"
|
|
105
103
|
Requires-Dist: galaxy-util<26; extra == "all"
|
|
106
|
-
Requires-Dist: ruamel.yaml<=0.19,>=0.15; extra == "all"
|
|
104
|
+
Requires-Dist: ruamel.yaml<=0.19.1,>=0.15; extra == "all"
|
|
107
105
|
Requires-Dist: ruamel.yaml.clib>=0.2.6; extra == "all"
|
|
108
106
|
Requires-Dist: networkx!=2.8.1,<4; extra == "all"
|
|
109
107
|
Requires-Dist: CacheControl[filecache]; extra == "all"
|
|
@@ -117,14 +115,13 @@ Requires-Dist: kubernetes-stubs==v22.6.0post1; extra == "all"
|
|
|
117
115
|
Requires-Dist: types-urllib3; extra == "all"
|
|
118
116
|
Requires-Dist: types-PyYAML; extra == "all"
|
|
119
117
|
Requires-Dist: idna>=2; extra == "all"
|
|
120
|
-
Requires-Dist: miniwdl==1.13.
|
|
118
|
+
Requires-Dist: miniwdl==1.13.1; extra == "all"
|
|
121
119
|
Requires-Dist: wdlparse==0.1.0; extra == "all"
|
|
122
|
-
Requires-Dist: graphlib-backport==1.0; python_version < "3.9" and extra == "all"
|
|
123
120
|
Requires-Dist: connexion[swagger-ui]<4,>=3; extra == "all"
|
|
124
121
|
Requires-Dist: flask<4,>=3; extra == "all"
|
|
125
122
|
Requires-Dist: werkzeug<4,>=3; extra == "all"
|
|
126
123
|
Requires-Dist: flask-cors<7,>=5.0.1; extra == "all"
|
|
127
|
-
Requires-Dist: gunicorn<
|
|
124
|
+
Requires-Dist: gunicorn<26,>=23.0.0; extra == "all"
|
|
128
125
|
Requires-Dist: celery<6,>=5.4.0; extra == "all"
|
|
129
126
|
Requires-Dist: wes-service<6,>=5.0.0; extra == "all"
|
|
130
127
|
Requires-Dist: ruamel.yaml<1,>=0.18.7; extra == "all"
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
from .topicobj import Topic as Topic
|
|
2
1
|
from enum import IntEnum
|
|
3
2
|
from typing import Optional
|
|
4
3
|
|
|
4
|
+
from .topicobj import Topic as Topic
|
|
5
|
+
|
|
5
6
|
class ITopicTreeVisitor: ...
|
|
6
7
|
|
|
7
8
|
class TreeTraversal(IntEnum):
|
|
@@ -12,4 +13,6 @@ class TreeTraversal(IntEnum):
|
|
|
12
13
|
class TopicTreeTraverser:
|
|
13
14
|
def __init__(self, visitor: Optional[ITopicTreeVisitor] = None) -> None: ...
|
|
14
15
|
def setVisitor(self, visitor: ITopicTreeVisitor) -> None: ...
|
|
15
|
-
def traverse(
|
|
16
|
+
def traverse(
|
|
17
|
+
self, topicObj: Topic, how: TreeTraversal = ..., onlyFiltered: bool = True
|
|
18
|
+
) -> None: ...
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# This is a v3 compose file
|
|
2
|
+
services:
|
|
3
|
+
slurmmaster:
|
|
4
|
+
# This should be https://github.com/jlundos/slurm-cluster/tree/devel
|
|
5
|
+
# Commit ad53b77bc74de768b627185a012e0bcb1b44ba1c
|
|
6
|
+
image: quay.io/adamnovak/slurm-master:latest
|
|
7
|
+
hostname: slurmmaster
|
|
8
|
+
user: admin
|
|
9
|
+
volumes:
|
|
10
|
+
- shared-vol:/home/admin
|
|
11
|
+
- ${PWD}/slurm.conf:/etc/slurm/slurm.conf
|
|
12
|
+
|
|
13
|
+
environment:
|
|
14
|
+
- PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/admin/.local/bin
|
|
15
|
+
ports:
|
|
16
|
+
- 6817:6817
|
|
17
|
+
- 6818:6818
|
|
18
|
+
- 6819:6819
|
|
19
|
+
deploy:
|
|
20
|
+
resources:
|
|
21
|
+
limits:
|
|
22
|
+
memory: 2G
|
|
23
|
+
healthcheck:
|
|
24
|
+
# When we start up, we write a key to a volume that the workers need to authenticate us.
|
|
25
|
+
# So don't be healthy until that key exists with the right content.
|
|
26
|
+
# The leading space maybe keeps this out of shell history? It's just
|
|
27
|
+
# stolen from
|
|
28
|
+
# <https://www.baeldung.com/linux/docker-compose-container-interdependence>
|
|
29
|
+
test: ["CMD-SHELL", " sudo diff /etc/munge/munge.key /home/admin/shared/mungesetup/munge.key"]
|
|
30
|
+
interval: 2s
|
|
31
|
+
timeout: 10s
|
|
32
|
+
retries: 3
|
|
33
|
+
start_period: 2s
|
|
34
|
+
|
|
35
|
+
slurmnode1:
|
|
36
|
+
image: quay.io/adamnovak/slurm-node:latest
|
|
37
|
+
# TODO: The worker container must be privileged or running a job that uses --export, like:
|
|
38
|
+
# sbatch --export=OMP_NUM_THREADS=1 --wrap="ls"
|
|
39
|
+
# will cause the executing slurmd to crash with a message in the log like:
|
|
40
|
+
# fatal: clone: Operation not permitted
|
|
41
|
+
privileged: true
|
|
42
|
+
hostname: slurmnode1
|
|
43
|
+
user: admin
|
|
44
|
+
volumes:
|
|
45
|
+
- shared-vol:/home/admin
|
|
46
|
+
- ${PWD}/slurm.conf:/etc/slurm/slurm.conf
|
|
47
|
+
environment:
|
|
48
|
+
- SLURM_NODENAME=slurmnode1
|
|
49
|
+
links:
|
|
50
|
+
- slurmmaster
|
|
51
|
+
deploy:
|
|
52
|
+
resources:
|
|
53
|
+
limits:
|
|
54
|
+
memory: 2G
|
|
55
|
+
depends_on:
|
|
56
|
+
slurmmaster:
|
|
57
|
+
condition: service_healthy
|
|
58
|
+
|
|
59
|
+
slurmnode2:
|
|
60
|
+
image: quay.io/adamnovak/slurm-node:latest
|
|
61
|
+
privileged: true
|
|
62
|
+
hostname: slurmnode2
|
|
63
|
+
user: admin
|
|
64
|
+
volumes:
|
|
65
|
+
- shared-vol:/home/admin
|
|
66
|
+
- ${PWD}/slurm.conf:/etc/slurm/slurm.conf
|
|
67
|
+
environment:
|
|
68
|
+
- SLURM_NODENAME=slurmnode2
|
|
69
|
+
links:
|
|
70
|
+
- slurmmaster
|
|
71
|
+
deploy:
|
|
72
|
+
resources:
|
|
73
|
+
limits:
|
|
74
|
+
memory: 2G
|
|
75
|
+
depends_on:
|
|
76
|
+
slurmmaster:
|
|
77
|
+
condition: service_healthy
|
|
78
|
+
|
|
79
|
+
slurmnode3:
|
|
80
|
+
image: quay.io/adamnovak/slurm-node:latest
|
|
81
|
+
privileged: true
|
|
82
|
+
hostname: slurmnode3
|
|
83
|
+
user: admin
|
|
84
|
+
volumes:
|
|
85
|
+
- shared-vol:/home/admin
|
|
86
|
+
- ${PWD}/slurm.conf:/etc/slurm/slurm.conf
|
|
87
|
+
environment:
|
|
88
|
+
- SLURM_NODENAME=slurmnode3
|
|
89
|
+
links:
|
|
90
|
+
- slurmmaster
|
|
91
|
+
deploy:
|
|
92
|
+
resources:
|
|
93
|
+
limits:
|
|
94
|
+
memory: 2G
|
|
95
|
+
depends_on:
|
|
96
|
+
slurmmaster:
|
|
97
|
+
condition: service_healthy
|
|
98
|
+
|
|
99
|
+
volumes:
|
|
100
|
+
shared-vol:
|
|
@@ -48,11 +48,13 @@ SlurmUser=root
|
|
|
48
48
|
#SlurmdUser=root
|
|
49
49
|
#SrunEpilog=
|
|
50
50
|
#SrunProlog=
|
|
51
|
-
StateSaveLocation=/var/spool
|
|
51
|
+
StateSaveLocation=/var/spool/slurmctld
|
|
52
52
|
SwitchType=switch/none
|
|
53
53
|
#TaskEpilog=
|
|
54
|
-
TaskPlugin=task/affinity
|
|
55
|
-
|
|
54
|
+
#TaskPlugin=task/cgroup,task/affinity
|
|
55
|
+
TaskPlugin=task/none
|
|
56
|
+
#TaskPlugin=task/affinity
|
|
57
|
+
#TaskPluginParam=Sched # This doesn't work with current slurm!
|
|
56
58
|
#TaskProlog=
|
|
57
59
|
#TopologyPlugin=topology/tree
|
|
58
60
|
#TmpFS=/tmp
|
|
@@ -87,7 +89,7 @@ Waittime=0
|
|
|
87
89
|
#MaxMemPerCPU=0
|
|
88
90
|
#SchedulerTimeSlice=30
|
|
89
91
|
SchedulerType=sched/backfill
|
|
90
|
-
SelectType=select/
|
|
92
|
+
SelectType=select/cons_tres
|
|
91
93
|
SelectTypeParameters=CR_Core
|
|
92
94
|
#
|
|
93
95
|
#
|
|
@@ -114,7 +116,7 @@ SelectTypeParameters=CR_Core
|
|
|
114
116
|
#AccountingStoragePort=
|
|
115
117
|
AccountingStorageType=accounting_storage/none
|
|
116
118
|
#AccountingStorageUser=
|
|
117
|
-
|
|
119
|
+
AccountingStoreFlags=job_comment
|
|
118
120
|
ClusterName=cluster
|
|
119
121
|
#DebugFlags=
|
|
120
122
|
#JobCompHost=
|
|
@@ -127,9 +129,9 @@ JobCompType=jobcomp/none
|
|
|
127
129
|
JobAcctGatherFrequency=30
|
|
128
130
|
JobAcctGatherType=jobacct_gather/none
|
|
129
131
|
SlurmctldDebug=error
|
|
130
|
-
SlurmctldLogFile=/var/log/slurm
|
|
132
|
+
SlurmctldLogFile=/var/log/slurm/slurmctld.log
|
|
131
133
|
SlurmdDebug=error
|
|
132
|
-
SlurmdLogFile=/var/log/slurm
|
|
134
|
+
SlurmdLogFile=/var/log/slurm/slurmd.log
|
|
133
135
|
#SlurmSchedLogFile=
|
|
134
136
|
#SlurmSchedLogLevel=
|
|
135
137
|
#
|
|
@@ -147,5 +149,6 @@ SlurmdLogFile=/var/log/slurm-llnl/slurmd.log
|
|
|
147
149
|
#
|
|
148
150
|
#
|
|
149
151
|
# COMPUTE NODES
|
|
152
|
+
#
|
|
150
153
|
NodeName=slurmnode[1-10] CPUs=1 RealMemory=2000 State=UNKNOWN
|
|
151
|
-
PartitionName=slurmpar Nodes=slurmnode[1-10] Default=YES MaxTime=00:
|
|
154
|
+
PartitionName=slurmpar Nodes=slurmnode[1-10] Default=YES MaxTime=00:05:00 State=UP
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
set -ex
|
|
3
|
+
# With the docker compose plugin, containers are named like slurm-test-slurmmaster-1
|
|
4
|
+
# If your containers are named like ${LEADER} you have the old docker-compose Python version instead.
|
|
5
|
+
# Try running with NAME_SEP=_
|
|
6
|
+
NAME_SEP=${CONTAINER_NAME_SEP:--}
|
|
7
|
+
LEADER="slurm-test${NAME_SEP}slurmmaster${NAME_SEP}1"
|
|
8
|
+
docker compose up -d
|
|
9
|
+
docker compose ps
|
|
10
|
+
docker cp toil_workflow.py ${LEADER}:/home/admin
|
|
11
|
+
docker cp -L sort.py ${LEADER}:/home/admin
|
|
12
|
+
docker cp fileToSort.txt ${LEADER}:/home/admin
|
|
13
|
+
docker cp toil_workflow.py ${LEADER}:/home/admin
|
|
14
|
+
GIT_COMMIT=$(git rev-parse HEAD)
|
|
15
|
+
# The base cluster image doesn't ship a working venv, or git
|
|
16
|
+
docker exec -e DEBIAN_FRONTEND=noninteractive ${LEADER} sudo apt-get update
|
|
17
|
+
docker exec -e DEBIAN_FRONTEND=noninteractive ${LEADER} sudo apt-get -qq -y install python3-venv git >/dev/null
|
|
18
|
+
docker exec ${LEADER} python3.12 -m venv /home/admin/venv
|
|
19
|
+
docker exec ${LEADER} /home/admin/venv/bin/python -m pip install "git+https://github.com/DataBiosphere/toil.git@${GIT_COMMIT}"
|
|
20
|
+
# This can sometimes report:
|
|
21
|
+
# slurm_load_partitions: Unexpected message received
|
|
22
|
+
# In that case we need to wait and try again.
|
|
23
|
+
DELAY=1
|
|
24
|
+
docker exec ${LEADER} sinfo -N -l && STATUS=0 || STATUS="${?}"
|
|
25
|
+
while [[ "${STATUS}" != "0" && "${LOOP_COUNT}" != "10" ]] ; do
|
|
26
|
+
echo "Waiting for Slurm to be up"
|
|
27
|
+
sleep "${DELAY}"
|
|
28
|
+
docker exec ${LEADER} sinfo -N -l && STATUS=0 || STATUS="${?}"
|
|
29
|
+
((LOOP_COUNT+=1))
|
|
30
|
+
((DELAY+=DELAY))
|
|
31
|
+
done
|
|
32
|
+
if [[ "${STATUS}" != "0" ]] ; then
|
|
33
|
+
echo >&2 "Could not get Slurm info; did Slurm start successfully?"
|
|
34
|
+
exit 1
|
|
35
|
+
fi
|
|
36
|
+
# Test 1: A really basic workflow to check Slurm is working correctly
|
|
37
|
+
docker exec -e TOIL_CHECK_ENV=True ${LEADER} /home/admin/venv/bin/python /home/admin/toil_workflow.py file:my-job-store --batchSystem slurm --slurmTime 2:00 --disableCaching --retryCount 0 --batchLogsDir ./nonexistent/paths
|
|
38
|
+
docker cp ${LEADER}:/home/admin/output.txt output_Docker.txt
|
|
39
|
+
# Test 2: Make sure that "sort" workflow runs under slurm
|
|
40
|
+
docker exec -e TOIL_CHECK_ENV=True ${LEADER} /home/admin/venv/bin/python /home/admin/sort.py file:my-job-store --batchSystem slurm --slurmTime 2:00 --disableCaching --retryCount 0
|
|
41
|
+
docker cp ${LEADER}:/home/admin/sortedFile.txt sortedFile.txt
|
|
42
|
+
docker compose down -v
|
|
43
|
+
./check_out.sh
|
|
44
|
+
echo "Sucessfully ran workflow on slurm cluster"
|
|
@@ -12,8 +12,7 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
-
"""A demonstration of toil. Sorts the lines of a file into ascending order by doing a parallel merge sort.
|
|
16
|
-
"""
|
|
15
|
+
"""A demonstration of toil. Sorts the lines of a file into ascending order by doing a parallel merge sort."""
|
|
17
16
|
import codecs
|
|
18
17
|
import os
|
|
19
18
|
import random
|
|
@@ -64,9 +63,7 @@ def down(job, inputFileStoreID, N, path, downCheckpoints, options, memory=sortMe
|
|
|
64
63
|
length = os.path.getsize(inputFile)
|
|
65
64
|
if length > N:
|
|
66
65
|
# We will subdivide the file
|
|
67
|
-
RealtimeLogger.critical(
|
|
68
|
-
"Splitting file: %s of size: %s" % (inputFileStoreID, length)
|
|
69
|
-
)
|
|
66
|
+
RealtimeLogger.critical(f"Splitting file: {inputFileStoreID} of size: {length}")
|
|
70
67
|
# Split the file into two copies
|
|
71
68
|
midPoint = getMidPoint(inputFile, 0, length)
|
|
72
69
|
t1 = job.fileStore.getLocalTempFile()
|
|
@@ -108,9 +105,7 @@ def down(job, inputFileStoreID, N, path, downCheckpoints, options, memory=sortMe
|
|
|
108
105
|
).rv()
|
|
109
106
|
else:
|
|
110
107
|
# We can sort this bit of the file
|
|
111
|
-
RealtimeLogger.critical(
|
|
112
|
-
"Sorting file: %s of size: %s" % (inputFileStoreID, length)
|
|
113
|
-
)
|
|
108
|
+
RealtimeLogger.critical(f"Sorting file: {inputFileStoreID} of size: {length}")
|
|
114
109
|
# Sort the copy and write back to the fileStore
|
|
115
110
|
shutil.copyfile(inputFile, inputFile + ".sort")
|
|
116
111
|
sort(inputFile + ".sort")
|
|
@@ -26,23 +26,22 @@ RUN apt-get -q -y update && \
|
|
|
26
26
|
apt-get -q -y install \
|
|
27
27
|
make git software-properties-common build-essential virtualenv libssl-dev libffi-dev \
|
|
28
28
|
libncurses5-dev curl zip unzip cmake wget docker.io python3-pip python3-virtualenv \
|
|
29
|
-
|
|
29
|
+
python3-dev npm nodejs tzdata jq awscli graphviz && \
|
|
30
30
|
apt-get clean
|
|
31
31
|
|
|
32
32
|
RUN sudo add-apt-repository -y ppa:deadsnakes/ppa && \
|
|
33
33
|
sudo apt-get update && \
|
|
34
34
|
sudo apt-get install -y \
|
|
35
|
-
python3.8 python3.8-dev python3.8-venv python3.8-distutils \
|
|
36
35
|
python3.9 python3.9-dev python3.9-venv python3.9-distutils \
|
|
37
36
|
python3.10 python3.10-dev python3.10-venv python3.10-distutils \
|
|
38
37
|
python3.11 python3.11-dev python3.11-venv python3.11-distutils \
|
|
39
|
-
python3.12 python3.12-dev python3.12-venv
|
|
40
|
-
python3.13 python3.13-dev python3.13-venv
|
|
38
|
+
python3.12 python3.12-dev python3.12-venv \
|
|
39
|
+
python3.13 python3.13-dev python3.13-venv \
|
|
40
|
+
python3.14 python3.14-dev python3.14-venv
|
|
41
41
|
|
|
42
42
|
RUN rm -f /usr/bin/python
|
|
43
43
|
RUN ln -s /usr/bin/python3.11 /usr/bin/python
|
|
44
|
-
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && python3.
|
|
45
|
-
RUN python3.
|
|
46
|
-
|
|
44
|
+
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && python3.9 get-pip.py && python3.10 get-pip.py && python3.11 get-pip.py && python3.12 get-pip.py && python3.13 get-pip.py && python3.14 get-pip.py # for python 3.12, get-pip seems to remove other pip versions, python 3.13 needs get-pip.py or ensure-pip as older versions of pip relies on distutils which is removed in 3.13
|
|
45
|
+
RUN python3.14 -m pip install virtualenv && python3.14 -m pip install virtualenv -U && python3.13 -m pip install virtualenv -U && python3.12 -m pip install virtualenv -U && python3.9 -m pip install virtualenv && python3.10 -m pip install virtualenv && python3.11 -m pip install virtualenv # python3.12 needs latest version of virtualenv
|
|
47
46
|
|
|
48
47
|
LABEL maintainers="anovak@soe.ucsc.edu lblauvel@ucsc.edu"
|
|
@@ -25,11 +25,12 @@ python = f'python{sys.version_info[0]}.{sys.version_info[1]}'
|
|
|
25
25
|
pip = f'{python} -m pip'
|
|
26
26
|
|
|
27
27
|
# Debian and Ubuntu don't package ensurepip by default so the python-venv package must be installed
|
|
28
|
-
python_packages = {'python3.
|
|
29
|
-
'python3.10': ['python3.10-distutils', 'python3.10-venv'],
|
|
28
|
+
python_packages = {'python3.10': ['python3.10-distutils', 'python3.10-venv'],
|
|
30
29
|
'python3.11': ['python3.11-distutils', 'python3.11-venv'],
|
|
31
30
|
'python3.12': ['python3.12-venv'],
|
|
32
|
-
'python3.13': ['python3.13-venv']
|
|
31
|
+
'python3.13': ['python3.13-venv'],
|
|
32
|
+
'python3.14': ['python3.14-venv'],
|
|
33
|
+
} # python3.13 removed distutils
|
|
33
34
|
|
|
34
35
|
dependencies = ' '.join(python_packages[python] +
|
|
35
36
|
['libffi-dev', # For client side encryption for extras with PyNACL
|
|
@@ -78,11 +79,11 @@ dependencies = ' '.join(python_packages[python] +
|
|
|
78
79
|
# available in PyPI. So we need to manually inject a working http-parser, and
|
|
79
80
|
# pymesos, into the Docker images.
|
|
80
81
|
extra_mesos_python_modules = {
|
|
81
|
-
'python3.9': [],
|
|
82
82
|
'python3.10': [],
|
|
83
83
|
'python3.11': ['http-parser@git+https://github.com/adamnovak/http-parser.git@5a63516597bb4c93a7ba178b1e4bab939da5afb3', 'pymesos==0.3.15'],
|
|
84
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']
|
|
85
|
+
'python3.13': ['http-parser@git+https://github.com/adamnovak/http-parser.git@5a63516597bb4c93a7ba178b1e4bab939da5afb3', 'pymesos==0.3.15'],
|
|
86
|
+
'python3.14': ['http-parser@git+https://github.com/adamnovak/http-parser.git@5a63516597bb4c93a7ba178b1e4bab939da5afb3', 'pymesos==0.3.15']
|
|
86
87
|
}
|
|
87
88
|
|
|
88
89
|
extra_python_modules = " ".join(extra_mesos_python_modules[python])
|
|
@@ -41,7 +41,7 @@ From here, you can install a project and its dependencies::
|
|
|
41
41
|
|
|
42
42
|
3 directories, 5 files
|
|
43
43
|
$ pip install matplotlib
|
|
44
|
-
$ cp -R workflow util venv/lib/python3.
|
|
44
|
+
$ cp -R workflow util venv/lib/python3.14/site-packages
|
|
45
45
|
|
|
46
46
|
Ideally, your project would have a ``setup.py`` file (see `setuptools`_) which streamlines the installation process::
|
|
47
47
|
|
|
@@ -28,7 +28,7 @@ For example, to run the sort example :ref:`sort example <sortExample>` on Slurm,
|
|
|
28
28
|
|
|
29
29
|
By default, this does not include any time limit or particular Slurm partition. If your Slurm cluster requires time limits, add the ``--slurmTime`` option to set the time limit to use for jobs.
|
|
30
30
|
|
|
31
|
-
If you do specify a time limit, a partition will be automatically selected that can
|
|
31
|
+
If you do specify a time limit, a partition will be automatically selected that can accommodate jobs of that duration, and a partition will be automatically selected for jobs that need GPUs. To use a particular partition, use the ``--slurmPartition`` argument. If you are running GPU jobs and they need to go to a different partition, use the ``--slurmGPUPartition`` argument. For example, to :ref:`run a WDL workflow from Dockstore <runWdl>` using GPUs on Slurm, with a time limit of 4 hours per job and partitions manually specified, you would run::
|
|
32
32
|
|
|
33
33
|
$ toil-wdl-runner '#workflow/github.com/vgteam/vg_wdl/GiraffeDeepVariantFromGAF:gbz' \
|
|
34
34
|
https://raw.githubusercontent.com/vgteam/vg_wdl/refs/heads/gbz/params/giraffe_and_deepvariant_gaf.json \
|