mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-20 21:14:14 +08:00
Update HUD wiki
@ -2,63 +2,54 @@ TLDR: Visit [hud.pytorch.org](https://hud.pytorch.org) for a quick glance into P
|
||||
|
||||
Please report any HUD bugs you find in our [issue tracker](https://github.com/pytorch/test-infra/issues)!
|
||||
|
||||
## Jobs
|
||||
|
||||
- [Introduction](#introduction)
|
||||
- [HUD Home Page](#hud-home-page)
|
||||
- [Pull Requests and Commits](#pull-requests-and-commits)
|
||||
|
||||
PyTorch's CI currently runs on 3 platforms, GitHub Actions, Jenkins, and CircleCI. It can be hard to tell at a glance how the various jobs across these services are doing on recent commits to PyTorch to determine if a failure on your pull request is a real failure vs. something that is broken on `master`. [hud.pytorch.org](https://hud.pytorch.org/) aims to fill this gap by providing a quick view over all the jobs on these commits.
|
||||
## Introduction
|
||||
|
||||
<img width="1490" alt="Screen Shot 2022-03-09 at 2 37 12 PM" src="https://user-images.githubusercontent.com/34172846/157532857-e92dd794-ee57-452b-974c-65a77627714a.png">
|
||||
1. Quickly switch between different branches. Also has a link to MiniHUD, a more granular, commit based view.
|
||||
2. Click on these to change the branch or repo. Only works on repos within Pytorch
|
||||
3. Search for jobs in here and press "Go" to get the permalink
|
||||
4. Group the workflows by logical organization
|
||||
5. Click on these commits to take you to the HUD view of the jobs that ran
|
||||
6. Click on these to take you to the PR on Github
|
||||
7. Click on this to expand the group
|
||||
HUD is the PyTorch team's way of viewing results from CI runs. While Github provides built in CI job and workflow viewers, there are some limitations and extra features we wanted to add. Some examples of this include:
|
||||
* All jobs on all workflows on a particular commit can be found on one page
|
||||
* HUD log viewer loads the entire log withough truncating
|
||||
* Log classifier can highlight what we think is the probable cause of failure for the job
|
||||
* HUD main page shows all jobs on the master commit, making it easy to see consistent failures
|
||||
|
||||
## Individual Pull Requests and Commits
|
||||
While there are still limitations for HUD, we have more control over what and how things are displayed, so please feel free to submit feature requests [here](https://github.com/pytorch/test-infra/issues) for how we can make your PyTorch development easier.
|
||||
|
||||
GitHub provides a view for GitHub Action job logs for commits and PRs, but we received many reports that this was lacking in functionality and usability, so we created our own view which is also hosted on hud.pytorch.org. The page displays statuses for a commit, so if you are viewing a PR you will see statuses for the *latest* commit to that PR.
|
||||
## HUD Home Page
|
||||
|
||||
### Finding the Page
|
||||
PyTorch's CI currently runs on GitHub Actions. It can be hard to tell at a glance how the various jobs across these services are doing on recent commits to PyTorch to determine if a failure on your pull request is a real failure vs. something that is broken on `main`. [hud.pytorch.org](https://hud.pytorch.org/) aims to fill this gap by providing a quick view over all the jobs on these commits.
|
||||
|
||||
For PRs, you can navigate to the page directly by going to `hud.pytorch.org/pr/<pr number>`, or by finding the link in the automated Dr. CI facebook-github-bot comment on your PR.
|
||||

|
||||
|
||||

|
||||
1. Branches/Helpful Links: Quickly switch between different branches. Also has a link to MiniHUD, a more granular, commit based view.
|
||||
2. Repo/Branch Switcher: Click on these to change the branch or repo. Only works on repos within Pytorch
|
||||
3. Job Filter: Search for jobs in here and press "Go" to get the permalink
|
||||
4. Grouped View Checkbox: Group the workflows by logical organization
|
||||
5. HUD Commit View Link: Click on these commits to take you to the HUD commit viewing, which shows the jobs that ran
|
||||
6. Github PR Link: Click on these to take you to the PR on Github
|
||||
|
||||
For commits, you can go to `hud.pytorch.org/commit/<long commit hash>` or by clicking the link from the main HUD page (see "Jobs" above).
|
||||
## Pull Requests and Commits
|
||||
|
||||
### Usage
|
||||
The page displays statuses for a commit, so if you are viewing a PR you will see statuses for the *latest* commit to that PR.
|
||||
|
||||
You will need to sign in with GitHub on your first visit to the page. This is necessary so the HUD can make calls to the GitHub API.
|
||||
To find the HUD page for a PR, you can navigate to the page directly by going to `hud.pytorch.org/pr/<pr number>`, or by finding the link in the automated Dr. CI comment on your PR.
|
||||
|
||||

|
||||

|
||||
|
||||
Once done, you should be able to see the GitHub Actions jobs for that commit or PR. For PRs, the jobs shown are for the latest commit pushed to that PR. The jobs are sorted so failing jobs are at the top. Some jobs that are not very helpful are grouped together at the bottom (such as the "Triage" jobs).
|
||||
For commits, you can go to `hud.pytorch.org/commit/<long commit hash>` or by clicking the link from the HUD main page.
|
||||
|
||||

|
||||
You should be able to see the GitHub Actions jobs for that commit or PR. For PRs, the jobs shown are for the latest commit pushed to that PR. Failing and pending jobs are shown at the top of the page.
|
||||
|
||||
1. If the doc builds for this commit or PR have finished, the link to the C++ / Python previews will be shown at the top.
|
||||
2. You can view logs for this job by clicking the rightward arrow.
|
||||
3. Some jobs report test results. The HUD can download and render these, similar to the test view on CircleCI. Click the button to expand and see failed tests. You can also see details of which tests ran in the "Summary" section.
|
||||
4. Each job reports a status, one of:
|
||||
1. Success
|
||||
2. Failed
|
||||
3. Cancelled
|
||||
4. Skipped
|
||||

|
||||
|
||||
#### Artifacts
|
||||
**Logs**
|
||||
|
||||
Some jobs upload artifacts. Test report artifacts are hidden from view since their data is exposed via the test report renderer you see when you click the blue "Tests" button next to a test job. Other artifacts, some of which are stored in GitHub's artifact store and some in AWS S3, are shown below the job if there are any.
|
||||
For failing jobs, the line shown by the log viewer is our best guess at what is causing the job to fail. This can be clicked to expand the log viewer and see the rest of the log, which is also searchable.
|
||||
|
||||

|
||||
For all jobs, raw logs can be found for every job by clicking the `Raw Logs` link. The Github log viewer can be accessed by clicking the job name.
|
||||
|
||||
#### Logs
|
||||
|
||||
Logs are shown using VScode, so you can look through them with the same tools you would if you had downloaded them locally. The text is editable if you wish to operate on the logs, but these edits are not saved anywhere. You can also bring up the VSCode command palatte with F1 and run most commands from there. The "Log Level" selector enables or disables line filtering of [known-noisy lines](https://github.com/pytorch/pytorch-ci-hud/blob/e233c7d4de2701811d657c9d8b2cd612c018d123/src/PrDisplay.js#L374). Usually you will not have to move it off of "Minimal".
|
||||
|
||||
|
||||

|
||||
|
||||
GitHub's log viewer supports sigils to mark the start and end of groups of lines, `##[group]` and `##[endgroup]` respectively. The log viewer here detects and automatically folds these. You can expand them by clicking the arrow on the left or F1 -> "Unfold All".
|
||||
**Artifacts**
|
||||
|
||||
Some jobs upload artifacts that can be found under `Expand to see Artifacts` at in at the bottom of each workflow box. Artifacts generally include xml test reports and other build artifacts. These can typically be found as soon as the job finishes, but some may take until the entire workflow finishes to show up due to limitations with Github Actions.
|
||||
|
Reference in New Issue
Block a user