bazelbuild / bazelbuild/bazel

Execution log file doesn't expand params files

Open
#8,718 3 comments 0 reactions 0 assignees View on GitHub
not stale P3 team-Remote-Exec type: bug
Dominant language
Java
Stars
25.8k
Forks
4.6k
Avg merge
2d 20h
Merged PRs (30d)
72

Description

### Feature requests: what underlying problem are you trying to solve with this feature?

Currently the file produced with `experimental_execution_log_file` doesn't expand the params file arguments being passed to commands. This makes it difficult to debug actions when you're using workers where params files are required.

### What's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.

In [rules_swift](https://github.com/bazelbuild/rules_swift/) run:

```
bazel build examples/apple/objc_interop --experimental_execution_log_file=foo.log --features=swift.use_response_files
```

And then run:

```
path/to/bazel/bazel-bin/src/tools/execlog/parser --log_path=foo.log --output_path=foo.txt
```

In foo.txt you'll see things like this:

```
command_args: "bazel-out/host/bin/external/build_bazel_rules_swift/tools/worker/worker"
command_args: "swiftc"
command_args: "@bazel-out/apl-darwin_x86_64-fastbuild/bin/examples/apple/objc_interop/examples_apple_objc_interop_Printer.swiftmodule-0.params"
```

### What operating system are you running Bazel on?

macOS

### What's the output of `bazel info release`?

release 0.27.0

### Have you found anything relevant by searching the web?

aquery supports `--include_param_files` which is similar to the behavior we'd want here.

Contributor guide

Open the contributing guide

Research direction

Reproduce the issue with the rules_swift build command using --experimental_execution_log_file and --features=swift.use_response_files, then run src/tools/execlog/parser with the shown log and output paths. Inspect how execution-log command arguments are recorded and parsed, using aquiry's --include_param_files behavior as a reference. Done means foo.txt expands the referenced params file instead of retaining the @path argument.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, swift
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.