bazel: add execlog parser

This is a tool to help troubleshoot debug issues:
https://docs.bazel.build/versions/master/remote-execution-caching-debug.html
This commit is contained in:
Matthieu Coudron 2021-02-05 00:53:50 +01:00
parent 916ee862e8
commit 0b9f90ef5f

View file

@ -62,6 +62,7 @@ let
srcs.rules_cc
srcs.rules_java
srcs.rules_proto
srcs.com_google_protobuf
]);
distDir = runCommand "bazel-deps" {} ''
@ -527,6 +528,13 @@ stdenv.mkDerivation rec {
--output=./bazel_src/output/bazel-complete.bash \
--prepend=./bazel_src/scripts/bazel-complete-header.bash \
--prepend=./bazel_src/scripts/bazel-complete-template.bash
# need to change directory for bazel to find the workspace
cd ./bazel_src
# build execlog tooling
export HOME=$(mktemp -d)
./output/bazel build src/tools/execlog:parser_deploy.jar
cd -
'';
installPhase = ''
@ -537,7 +545,15 @@ stdenv.mkDerivation rec {
# The binary _must_ exist with this naming if your project contains a .bazelversion
# file.
cp ./bazel_src/scripts/packages/bazel.sh $out/bin/bazel
mkdir $out/share
cp ./bazel_src/bazel-bin/src/tools/execlog/parser_deploy.jar $out/share/parser_deploy.jar
mv ./bazel_src/output/bazel $out/bin/bazel-${version}-${system}-${arch}
cat <<EOF > $out/bin/bazel-execlog
#!${runtimeShell} -e
${runJdk}/bin/java -jar $out/share/parser_deploy.jar \$@
EOF
chmod +x $out/bin/bazel-execlog
# shell completion files
installShellCompletion --bash \