mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-07-06 17:13:24 -05:00
92 lines
1.4 KiB
Nix
92 lines
1.4 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
|
|
buildPythonApplication,
|
|
colorama,
|
|
coreutils,
|
|
imagemagick_light,
|
|
ipython,
|
|
junit-xml,
|
|
ptpython,
|
|
pydantic,
|
|
python,
|
|
ovmfvartool,
|
|
remote-pdb,
|
|
ruff,
|
|
ty,
|
|
|
|
netpbm,
|
|
vhost-device-vsock,
|
|
nixosTests,
|
|
setuptools,
|
|
socat,
|
|
systemd,
|
|
tesseract4,
|
|
util-linux,
|
|
vde2,
|
|
|
|
enableNspawn ? false,
|
|
enableOCR ? false,
|
|
extraPythonPackages ? (_: [ ]),
|
|
}:
|
|
|
|
buildPythonApplication {
|
|
pname = "nixos-test-driver";
|
|
version = "1.1";
|
|
pyproject = true;
|
|
|
|
src = ./src;
|
|
|
|
build-system = [
|
|
setuptools
|
|
];
|
|
|
|
dependencies = [
|
|
colorama
|
|
ipython
|
|
junit-xml
|
|
ptpython
|
|
pydantic
|
|
ovmfvartool
|
|
remote-pdb
|
|
]
|
|
++ extraPythonPackages python.pkgs;
|
|
|
|
propagatedBuildInputs = [
|
|
coreutils
|
|
netpbm
|
|
socat
|
|
util-linux
|
|
vde2
|
|
]
|
|
++ lib.optionals stdenv.isLinux [
|
|
vhost-device-vsock
|
|
]
|
|
++ lib.optionals enableNspawn [
|
|
systemd
|
|
]
|
|
++ lib.optionals enableOCR [
|
|
imagemagick_light
|
|
tesseract4
|
|
];
|
|
|
|
# containers test requires extra nix features that are not available in ofborg.
|
|
passthru.tests = removeAttrs nixosTests.nixos-test-driver [ "containers" ];
|
|
|
|
doCheck = true;
|
|
|
|
nativeCheckInputs = [
|
|
ruff
|
|
ty
|
|
];
|
|
|
|
checkPhase = ''
|
|
echo -e "\x1b[32m## run ty\x1b[0m"
|
|
ty check --error-on-warning test_driver extract-docstrings.py
|
|
echo -e "\x1b[32m## run ruff check\x1b[0m"
|
|
ruff check .
|
|
echo -e "\x1b[32m## run ruff format\x1b[0m"
|
|
ruff format --check --diff .
|
|
'';
|
|
}
|