biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / tools / security / tracee / integration-tests.nix
blobfd3feb69f5648c616bc167eb8fe63837f4279a19
1 { lib, tracee, makeWrapper }:
2 tracee.overrideAttrs (oa: {
3   pname = oa.pname + "-integration";
4   postPatch = oa.postPatch or "" + ''
5     # fix the test to look at nixos paths for running programs
6       # --replace-fail '"integration.tes"' '"tracee-integrat"' \
7     substituteInPlace tests/integration/event_filters_test.go \
8       --replace-fail "exec=/usr/bin/dockerd" "comm=dockerd" \
9       --replace-fail "exec=/usr/bin" "exec=/tmp/testdir" \
10       --replace-fail "/usr/bin/tee" "tee" \
11       --replace-fail "/usr/bin" "/run/current-system/sw/bin" \
12       --replace-fail 'syscallerAbsPath := filepath.Join("..", "..", "dist", "syscaller")' "syscallerAbsPath := filepath.Join(\"$out/bin/syscaller\")"
13     substituteInPlace tests/integration/exec_test.go \
14       --replace-fail "/usr/bin" "/run/current-system/sw/bin"
15   '';
16   nativeBuildInputs = oa.nativeBuildInputs or [ ] ++ [ makeWrapper ];
17   buildPhase = ''
18     runHook preBuild
19     # copy existing built object to dist
20     mkdir -p dist/btfhub
21     touch dist/btfhub/.placeholder
22     cp ${lib.getOutput "lib" tracee}/lib/tracee/tracee.bpf.o ./dist/
24     # then compile the tests to be ran later
25     mkdir -p $GOPATH/tracee-integration
26     CGO_LDFLAGS="$(pkg-config --libs libbpf)" go build -o $GOPATH/tracee-integration/syscaller ./tests/integration/syscaller/cmd
27     CGO_LDFLAGS="$(pkg-config --libs libbpf)" go test -tags core,ebpf,integration -c -o $GOPATH/tracee-integration/ ./tests/integration/...
28     runHook postBuild
29   '';
30   doCheck = false;
31   installPhase = ''
32     mkdir -p $out/bin
33     mv $GOPATH/tracee-integration/{integration.test,syscaller} $out/bin/
34     # cp -r ${tracee}/bin/signatures $out/bin/
35   '';
36   doInstallCheck = false;
38   outputs = [ "out" ];
39   meta = oa.meta // {
40     outputsToInstall = [ "out" ];
41   };