nixpkgs/pkgs/development/tools/devpi-server/default.nix

88 lines
2.0 KiB
Nix
Raw Normal View History

{ lib, fetchFromGitHub, python3, nginx }:
2017-12-04 14:11:12 +00:00
let
py = python3.override {
packageOverrides = self: super: {
# pyramid 2.0 no longer has a 'pyramid.compat' module
pyramid = super.pyramid.overridePythonAttrs (oldAttrs: rec {
version = "1.10.8";
src = oldAttrs.src.override {
inherit version;
sha256 = "sha256-t81mWVvvkvgXZLl23d4rL6jk9fMl4C9l9ux/NwiynPY=";
};
});
};
};
in with py.pkgs;
buildPythonApplication rec {
2017-12-04 14:11:12 +00:00
pname = "devpi-server";
version = "6.2.0";
2017-12-04 14:11:12 +00:00
src = fetchFromGitHub {
owner = "devpi";
repo = "devpi";
rev = "68ee291ef29a93f6d921d4927aec8d13919b4a4c";
sha256 = "1ivd5dy9f2gq07w8n2gywa0n0d9wv8644l53ni9fz7i69jf8q2fm";
2017-12-04 14:11:12 +00:00
};
sourceRoot = "source/server";
2017-12-04 14:11:12 +00:00
postPatch = ''
substituteInPlace setup.py \
--replace "pluggy>=0.6.0,<1.0" "pluggy>=0.6.0,<2.0"
'';
propagatedBuildInputs = [
2019-09-03 03:00:00 +00:00
py
2019-06-18 00:50:48 +00:00
appdirs
devpi-common
defusedxml
2019-06-18 00:50:48 +00:00
execnet
itsdangerous
2019-09-03 03:00:00 +00:00
repoze_lru
2019-06-18 00:50:48 +00:00
passlib
pluggy
pyramid
strictyaml
waitress
];
checkInputs = [
2019-06-18 00:50:48 +00:00
beautifulsoup4
nginx
pytestCheckHook
2019-09-03 03:00:00 +00:00
pytest-flake8
2019-06-18 00:50:48 +00:00
webtest
] ++ lib.optionals isPy27 [ mock ];
2019-06-18 00:50:48 +00:00
2019-12-23 17:19:00 +00:00
# root_passwd_hash tries to write to store
2020-06-03 06:31:39 +00:00
# TestMirrorIndexThings tries to write to /var through ngnix
# nginx tests try to write to /var
preCheck = ''
export PATH=$PATH:$out/bin
export HOME=$TMPDIR
2017-12-04 14:11:12 +00:00
'';
pytestFlagsArray = [
"./test_devpi_server"
"--slow"
"-rfsxX"
"--ignore=test_devpi_server/test_nginx_replica.py"
"--ignore=test_devpi_server/test_streaming_nginx.py"
"--ignore=test_devpi_server/test_streaming_replica_nginx.py"
];
disabledTests = [
"root_passwd_hash_option"
"TestMirrorIndexThings"
];
2017-12-04 14:11:12 +00:00
__darwinAllowLocalNetworking = true;
meta = with lib;{
homepage = "http://doc.devpi.net";
2017-12-04 14:11:12 +00:00
description = "Github-style pypi index server and packaging meta tool";
license = licenses.mit;
maintainers = with maintainers; [ makefu ];
};
}