nixpkgs/pkgs/applications/science/misc/toil/default.nix

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

93 lines
1.8 KiB
Nix
Raw Normal View History

2022-01-13 20:37:08 +00:00
{ lib
, fetchFromGitHub
, python3
2022-11-08 11:17:40 +00:00
, rsync
2022-01-13 20:37:08 +00:00
}:
2021-07-21 02:18:08 +00:00
2022-01-13 20:37:08 +00:00
python3.pkgs.buildPythonApplication rec {
2021-07-21 02:18:08 +00:00
pname = "toil";
2022-11-08 11:17:40 +00:00
version = "5.7.1";
2022-01-13 20:37:08 +00:00
format = "setuptools";
2021-07-21 02:18:08 +00:00
2022-11-08 11:17:40 +00:00
src = fetchFromGitHub {
owner = "DataBiosphere";
repo = pname;
rev = "refs/tags/releases/${version}";
hash = "sha256-m+XvNyzd0ly2YqKhgxezgGaCXLs3CmupJMnp5RIZqNI=";
2021-07-21 02:18:08 +00:00
};
2022-11-08 11:17:40 +00:00
postPatch = ''
substituteInPlace requirements.txt \
--replace "docker>=3.7.2, <6" "docker"
'';
2022-01-13 20:37:08 +00:00
propagatedBuildInputs = with python3.pkgs; [
2021-07-21 02:18:08 +00:00
addict
2022-11-08 11:17:40 +00:00
dill
2021-07-21 02:18:08 +00:00
docker
enlighten
psutil
2022-01-13 20:37:08 +00:00
py-tes
2022-11-08 11:17:40 +00:00
pypubsub
2021-07-21 02:18:08 +00:00
python-dateutil
2022-11-08 11:17:40 +00:00
pytz
pyyaml
requests
typing-extensions
2021-07-21 02:18:08 +00:00
];
nativeCheckInputs = [
2022-11-08 11:17:40 +00:00
rsync
] ++ (with python3.pkgs; [
boto
botocore
flask
mypy-boto3-s3
2022-01-13 20:37:08 +00:00
pytestCheckHook
2022-11-08 11:17:40 +00:00
stubserver
]);
2022-01-13 20:37:08 +00:00
pytestFlagsArray = [
"src/toil/test"
];
pythonImportsCheck = [
"toil"
];
2021-07-21 02:18:08 +00:00
2022-11-08 11:17:40 +00:00
disabledTestPaths = [
# Tests are reaching their timeout
"src/toil/test/docs/scriptsTest.py"
"src/toil/test/jobStores/jobStoreTest.py"
"src/toil/test/provisioners/aws/awsProvisionerTest.py"
"src/toil/test/src"
"src/toil/test/wdl"
"src/toil/test/utils/utilsTest.py"
];
disabledTests = [
# Tests fail starting with 5.7.1
"testServices"
"testConcurrencyWithDisk"
"testJobConcurrency"
"testNestedResourcesDoNotBlock"
"test_omp_threads"
"testFileSingle"
"testFileSingle10000"
"testFileSingleCheckpoints"
"testFileSingleNonCaching"
"testFetchJobStoreFiles"
"testFetchJobStoreFilesWSymlinks"
"testJobStoreContents"
"test_cwl_on_arm"
"test_cwl_toil_kill"
];
2021-07-21 02:18:08 +00:00
meta = with lib; {
2022-01-13 20:37:08 +00:00
description = "Workflow engine written in pure Python";
2021-07-21 11:28:37 +00:00
homepage = "https://toil.ucsc-cgl.org/";
2021-07-21 02:18:08 +00:00
license = with licenses; [ asl20 ];
maintainers = with maintainers; [ veprbl ];
};
}