refactor(zseri/store-ref-scanner): get rid of proc_unroll dependency
Change-Id: I0d4a8b2af814fd2870c3eb4218ee4fbaba1216f5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/4605 Tested-by: BuildkiteCI Reviewed-by: zseri <zseri.devel@ytrizja.de>
This commit is contained in:
parent
f4dddea4c3
commit
1cc8aa56a4
8 changed files with 96 additions and 1123 deletions
|
|
@ -1,5 +1,49 @@
|
|||
{ depot, pkgs, ... }:
|
||||
{ depot, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
sourceFilter = name: type:
|
||||
let
|
||||
baseName = builtins.baseNameOf (builtins.toString name);
|
||||
in
|
||||
(baseName == "Cargo.toml")
|
||||
|| (type == "directory" && baseName == "src")
|
||||
|| (lib.hasSuffix ".rs" baseName)
|
||||
;
|
||||
in
|
||||
|
||||
pkgs.buildRustCrate rec {
|
||||
pname = "store-ref-scanner";
|
||||
crateName = "store-ref-scanner";
|
||||
version = "0.1.0";
|
||||
edition = "2021";
|
||||
src = lib.cleanSourceWith { filter = sourceFilter; src = ./.; };
|
||||
|
||||
passthru.tests = pkgs.buildRustCrate {
|
||||
pname = "store-ref-scanner-tests";
|
||||
inherit crateName src version edition;
|
||||
buildTests = true;
|
||||
postInstall = ''
|
||||
set -ex
|
||||
export RUST_BACKTRACE=1
|
||||
# recreate a file hierarchy as when running tests with cargo
|
||||
# the source for test data
|
||||
# build outputs
|
||||
testRoot=target/debug
|
||||
mkdir -p $testRoot
|
||||
chmod +w -R .
|
||||
# test harness executables are suffixed with a hash,
|
||||
# like cargo does this allows to prevent name collision
|
||||
# with the main executables of the crate
|
||||
hash=$(basename $out)
|
||||
ls -lasR $out
|
||||
for file in $out/tests/*; do
|
||||
f=$testRoot/$(basename $file)-$hash
|
||||
cp $file $f
|
||||
$f 2>&1 | tee -a $out/tests.log
|
||||
done
|
||||
rm -rf $out/tests
|
||||
set +ex
|
||||
'';
|
||||
};
|
||||
|
||||
(import ./Cargo.nix { inherit pkgs; }).rootCrate.build.override {
|
||||
runTests = true;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue