add ruff and pyright flake checks

This commit is contained in:
Abel Luck 2026-03-05 16:08:31 +01:00
parent 42cf3f75dc
commit 7c9b42fe56
8 changed files with 125 additions and 19 deletions

View file

@ -172,10 +172,53 @@
let
system = pkgs.stdenv.hostPlatform.system;
exportedPackage = self.packages.${system}.default;
testVenv = exportedPackage.testVenv;
src = ./.;
ruffCheck = pkgs.stdenv.mkDerivation {
name = "matrix-ops-bot-ruff";
inherit src;
dontConfigure = true;
dontBuild = true;
nativeBuildInputs = [ testVenv ];
checkPhase = ''
runHook preCheck
ruff check ops_bot/ tests/
ruff format --check ops_bot/ tests/
runHook postCheck
'';
doCheck = true;
installPhase = ''
mkdir -p "$out"
touch "$out/passed"
'';
};
pyrightCheck = pkgs.stdenv.mkDerivation {
name = "matrix-ops-bot-pyright";
inherit src;
dontConfigure = true;
dontBuild = true;
nativeBuildInputs = [
testVenv
pkgs.nodejs
];
checkPhase = ''
runHook preCheck
export HOME="$(mktemp -d)"
pyright ops_bot/
runHook postCheck
'';
doCheck = true;
installPhase = ''
mkdir -p "$out"
touch "$out/passed"
'';
};
in
{
package-default = exportedPackage;
tests = exportedPackage.tests;
ruff = ruffCheck;
pyright = pyrightCheck;
}
);
@ -184,6 +227,8 @@
packages = [
pkgs.python311
pkgs.uv
pkgs.ruff
pkgs.pyright
];
env.LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath [
pkgs.stdenv.cc.cc