Skip to content

Support input for --instrumentation_filter in the form of a file #26353

Open
@freetheinterns

Description

@freetheinterns

Description of the feature request:

Please support an alternative way to input very large values for --instrumentation_filter when running bazel coverage commands. Perhaps something like --instrumentation_filter_file.

The context here is that I work in a large monorepo. In our CI testing we invoke Bazel once to calculate test and coverage status for all necessary targets. A part of this means determining which projects need to have coverage calculated and enabling instrumentation for these projects via the --instrumentation_filter. An issue we have seen is when most or all of our projects need to calculate coverage, we hit issues passing the very large instrumentation filter over the command line.

It seems like a similar problem to what --target_pattern_file was designed to solve for.

Which category does this issue belong to?

Configurability

What underlying problem are you trying to solve with this feature?

Trying to set --instrumentation_filter to a value larger than 130KB causes Bazel to fail. Usually due to hitting some ARGMAX limit (seen as Argument list too long). The issue isn't really Bazel's fault, and I'm pretty sure it depends on the OS & machine running this. But it seems reasonable to have a more consistent solution to this that circumvents the issue all together.

Which operating system are you running Bazel on?

linux

What is the output of bazel info release?

7.6.1

If bazel info release returns development version or (@non-git), tell us how you built Bazel.

No response

What's the output of git remote get-url origin; git rev-parse HEAD ?


Have you found anything relevant by searching the web?

No response

Any other information, logs, or outputs that you want to share?

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2We'll consider working on this in future. (Assignee optional)coverageteam-Local-ExecIssues and PRs for the Execution (Local) teamtype: feature request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions