Skip to content

Show jobs where a given test was executed in test-dashboard - #159994

Merged
rust-bors[bot] merged 1 commit into
rust-lang:mainfrom
Kobzol:test-dashboard-jobs
Jul 29, 2026
Merged

Show jobs where a given test was executed in test-dashboard#159994
rust-bors[bot] merged 1 commit into
rust-lang:mainfrom
Kobzol:test-dashboard-jobs

Conversation

@Kobzol

@Kobzol Kobzol commented Jul 27, 2026

Copy link
Copy Markdown
Member

This lets us see the specific set of jobs where a given test was executed on CI. This should be quite useful e.g. for debugging where we run debuginfo tests.

To test:

$ cargo run --release --manifest-path src/ci/citool/Cargo.toml -- test-dashboard 008fa22ce3f8d3c8dfaca2e6486043c2b21851eb --output-dir test-dashboard

r? @jieyouxu

@rustbot rustbot added A-CI Area: Our Github Actions CI A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. labels Jul 27, 2026

@jieyouxu jieyouxu left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jieyouxu jieyouxu Jul 29, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remark: tried to test the invocation locally, but I got

Downloading metrics of job aarch64-gnu
Downloading metrics of job aarch64-gnu-debug
Downloading metrics of job arm-android
Downloading metrics of job armhf-gnu
Downloading metrics of job dist-aarch64-linux
Downloading metrics of job dist-android
Downloading metrics of job dist-arm-linux-gnueabi
Downloading metrics of job dist-arm-linux-musl
Downloading metrics of job dist-armhf-linux
Downloading metrics of job dist-armv7-linux
Downloading metrics of job dist-i586-gnu-i586-i686-musl
Downloading metrics of job dist-i686-linux
Downloading metrics of job dist-loongarch64-linux
Downloading metrics of job dist-loongarch64-musl
Downloading metrics of job dist-ohos-aarch64
Downloading metrics of job dist-ohos-armv7
Downloading metrics of job dist-ohos-x86_64
Downloading metrics of job dist-powerpc-linux
Downloading metrics of job dist-powerpc64-linux-gnu
Downloading metrics of job dist-powerpc64-linux-musl
Downloading metrics of job dist-powerpc64le-linux-gnu
Downloading metrics of job dist-powerpc64le-linux-musl
Downloading metrics of job dist-riscv64-linux-gnu
Downloading metrics of job dist-riscv64-linux-musl
Downloading metrics of job dist-s390x-linux
Downloading metrics of job dist-various-1
Downloading metrics of job dist-various-2
Downloading metrics of job dist-x86_64-freebsd
Downloading metrics of job dist-aarch64-freebsd
Downloading metrics of job dist-x86_64-illumos
Downloading metrics of job dist-x86_64-linux
Downloading metrics of job dist-x86_64-linux-alt
Downloading metrics of job dist-x86_64-musl
Downloading metrics of job dist-x86_64-netbsd
Downloading metrics of job dist-x86_64-solaris
Downloading metrics of job dist-sparcv9-solaris
Downloading metrics of job i686-gnu-1
Downloading metrics of job i686-gnu-2
Downloading metrics of job i686-gnu-nopt-1
Downloading metrics of job i686-gnu-nopt-2
Downloading metrics of job pr-check-1
Downloading metrics of job pr-check-2
Downloading metrics of job tidy
Downloading metrics of job test-various
Downloading metrics of job x86_64-rust-for-linux
Downloading metrics of job x86_64-gnu
Downloading metrics of job x86_64-gnu-parallel-frontend
Error: http status: 404

I think sometimes metrics might be unavailable for a given job for one reason or another, maybe need to just... ignore or add a warning that one of the job is missing? Unsure.

Anyway, I picked a recent rollup and no metrics was missing there, so that's fine.

@Kobzol Kobzol Jul 29, 2026

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right, the job got renamed, but we take the list of job names from main, because it's hard to guess it just from the commit SHA (we'd have to run citool or parse jobs.yml from that commit to find out, or somehow scan S3).

I was thinking that we should ignore errors, but errors here are actually useful on CI (for detecting failed optional jobs 😂 ). Maybe fail on CI, but ignore locally, is the sweet spot.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably we should store in S3 a file with one line per CI job that is executed, to make this easier, also for other tooling.

@jieyouxu jieyouxu Jul 29, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah... I'm not super sure what to do about errors like this. Ignoring locally but error in CI feels okay, because locally it's Well Too Bad No Metrics indeed.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remark: played around with this locally, job sets are a big improvement over "no idea which jobs run this test", but I feel like the UX is a bit tricky. Right now we end up with some J2xx 200 job sets, which feels... quite a lot?

Ideally we'd be able to filter (with a checkbox or sth) by job, or maybe just have a given test expand out which jobs run the test. However, that probably involves some JS which, you know, having a dumb HTML page is actually quite nice...

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't expand the jobs because the HTML file is already huge, and even including a <title> or manifesting the jobs would make ot much larger, I think.

But yeah, some JS would help.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Makes sense yeah, that did occurr to me.

@rust-bors

rust-bors Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 0ac1461 has been approved by jieyouxu

It is now in the queue for this repository.

@rust-bors rust-bors Bot added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 29, 2026
jhpratt added a commit to jhpratt/rust that referenced this pull request Jul 29, 2026
…ouxu

Show jobs where a given test was executed in `test-dashboard`

This lets us see the specific set of jobs where a given test was executed on CI. This should be quite useful e.g. for debugging where we run debuginfo tests.

To test:
```bash
$ cargo run --release --manifest-path src/ci/citool/Cargo.toml -- test-dashboard 008fa22 --output-dir test-dashboard
```

r? @jieyouxu
jhpratt added a commit to jhpratt/rust that referenced this pull request Jul 29, 2026
…ouxu

Show jobs where a given test was executed in `test-dashboard`

This lets us see the specific set of jobs where a given test was executed on CI. This should be quite useful e.g. for debugging where we run debuginfo tests.

To test:
```bash
$ cargo run --release --manifest-path src/ci/citool/Cargo.toml -- test-dashboard 008fa22 --output-dir test-dashboard
```

r? @jieyouxu
rust-bors Bot pushed a commit that referenced this pull request Jul 29, 2026
Rollup of 6 pull requests

Successful merges:

 - #158460 (Remove llvm_enzyme feature outside of bootstrap)
 - #159671 (Add semver check test command for checking API compatibility of stdlib)
 - #159717 (Add `-Zimplicit-sysroot-deps`)
 - #159994 (Show jobs where a given test was executed in `test-dashboard`)
 - #160085 (Remove various superfluous lint attributes)
 - #160123 (add additional license option for third-party dependencies)
JonathanBrouwer added a commit to JonathanBrouwer/rust that referenced this pull request Jul 29, 2026
…ouxu

Show jobs where a given test was executed in `test-dashboard`

This lets us see the specific set of jobs where a given test was executed on CI. This should be quite useful e.g. for debugging where we run debuginfo tests.

To test:
```bash
$ cargo run --release --manifest-path src/ci/citool/Cargo.toml -- test-dashboard 008fa22 --output-dir test-dashboard
```

r? @jieyouxu
rust-bors Bot pushed a commit that referenced this pull request Jul 29, 2026
…uwer

Rollup of 11 pull requests

Successful merges:

 - #158460 (Remove llvm_enzyme feature outside of bootstrap)
 - #159509 (Generate `valid_range`s for enums sign-agnostically)
 - #159632 (CFI: Add support for the adt_const_params feature)
 - #159671 (Add semver check test command for checking API compatibility of stdlib)
 - #157058 (Rustdoc label badge for notable traits)
 - #159717 (Add `-Zimplicit-sysroot-deps`)
 - #159850 (Add regression test for closure in array-length const generic)
 - #159994 (Show jobs where a given test was executed in `test-dashboard`)
 - #160110 (convert rustc_hir::Target inherent methods to From impls)
 - #160123 (add additional license option for third-party dependencies)
 - #160131 (bootstrap: remove temporary bors email lookup)
rust-bors Bot pushed a commit that referenced this pull request Jul 29, 2026
…uwer

Rollup of 11 pull requests

Successful merges:

 - #158460 (Remove llvm_enzyme feature outside of bootstrap)
 - #159509 (Generate `valid_range`s for enums sign-agnostically)
 - #159632 (CFI: Add support for the adt_const_params feature)
 - #159671 (Add semver check test command for checking API compatibility of stdlib)
 - #157058 (Rustdoc label badge for notable traits)
 - #159717 (Add `-Zimplicit-sysroot-deps`)
 - #159850 (Add regression test for closure in array-length const generic)
 - #159994 (Show jobs where a given test was executed in `test-dashboard`)
 - #160110 (convert rustc_hir::Target inherent methods to From impls)
 - #160123 (add additional license option for third-party dependencies)
 - #160131 (bootstrap: remove temporary bors email lookup)
@rust-bors
rust-bors Bot merged commit b6f0d80 into rust-lang:main Jul 29, 2026
13 checks passed
@rustbot rustbot added this to the 1.99.0 milestone Jul 29, 2026
rust-timer added a commit that referenced this pull request Jul 29, 2026
Rollup merge of #159994 - Kobzol:test-dashboard-jobs, r=jieyouxu

Show jobs where a given test was executed in `test-dashboard`

This lets us see the specific set of jobs where a given test was executed on CI. This should be quite useful e.g. for debugging where we run debuginfo tests.

To test:
```bash
$ cargo run --release --manifest-path src/ci/citool/Cargo.toml -- test-dashboard 008fa22 --output-dir test-dashboard
```

r? @jieyouxu
@Kobzol
Kobzol deleted the test-dashboard-jobs branch July 29, 2026 20:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-CI Area: Our Github Actions CI A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants