nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 72 lines 1.4 kB view raw
1{ 2 lib, 3 buildNpmPackage, 4 buildPythonPackage, 5 fetchPypi, 6 hatch-vcs, 7 hatchling, 8 jinja2, 9 pytest, 10 pytest-metadata, 11}: 12let 13 pname = "pytest-html"; 14 version = "4.2.0"; 15 16 src = fetchPypi { 17 pname = "pytest_html"; 18 inherit version; 19 hash = "sha256-tqiMulB1ANhwmVkgHi51fTlB6Fn9F8/U7Yexb8DGeRI="; 20 }; 21 22 web-assets = buildNpmPackage { 23 pname = "${pname}-web-assets"; 24 inherit version src; 25 26 npmDepsHash = "sha256-WJ0Ff0Y1u4EiIauEDGeOqLwY5Wk9wgjIvOGUmDog8rQ="; 27 28 installPhase = '' 29 runHook preInstall 30 31 install -Dm644 src/pytest_html/resources/{app.js,style.css} -t $out/lib 32 33 runHook postInstall 34 ''; 35 }; 36in 37 38buildPythonPackage { 39 inherit pname version src; 40 pyproject = true; 41 42 nativeBuildInputs = [ 43 hatch-vcs 44 hatchling 45 ]; 46 buildInputs = [ 47 pytest 48 web-assets 49 ]; 50 propagatedBuildInputs = [ 51 jinja2 52 pytest-metadata 53 ]; 54 55 env.HATCH_BUILD_NO_HOOKS = true; 56 57 preBuild = '' 58 install -Dm644 ${web-assets}/lib/{app.js,style.css} -t src/pytest_html/resources 59 ''; 60 61 # tests require network access 62 doCheck = false; 63 64 pythonImportsCheck = [ "pytest_html" ]; 65 66 meta = { 67 description = "Plugin for generating HTML reports"; 68 homepage = "https://github.com/pytest-dev/pytest-html"; 69 license = lib.licenses.mpl20; 70 maintainers = with lib.maintainers; [ mpoquet ]; 71 }; 72}