Treeherder is a reporting dashboard for Mozilla checkins. It allows users to see the results of automatic builds and their respective tests. The Treeherder service manages the etl layer for data ingestion, web services, and the data model behind Treeherder.
Treeherder exists on two instances: staging for pre-deployment validation, and production for actual use.
The steps to run Treeherder are provided here.
The steps to run only the UI are provided here.
Visit our project tracking Wiki here.
For other setup and configuration, visit our readthedocs page here.
File any bugs you may encounter here.
Everyone is welcome to contribute!
If a bug is not assigned to someone, you can request the bug be assigned to you. You should ask the component owner with your request ("Request information" in Bugzilla and mention in Github).
If you do not receive a response within 2-3 days, you can follow up in the #treeherder matrix channel.
After addressing the issue, make sure every test passes before sending a pull request.
We also recommend setting an upstream
remote that points to the Mozilla's Github repo, in addition to origin
that points to your fork. You should then frequently use git rebase upstream
rather than merging from your fork to keep your branch current. There are less conflicts this way and the git history is cleaner.
We receive contributions from both Bugzilla and Github. We have some specifications to keep track of them:
-
If your bug comes from Bugzilla
After addressing the issue, please send a pull request to this repository, with the Bugzilla's number ID in the title, so that our bot attaches your patch to the corresponding Bugzilla bug.
"Bug xxxxxx - [title of the bug or brief explanation]"
For example: "Bug 123456 - Fix scrolling behavior in Perfherder"
-
If your bug comes from Github
In the description of the pull request, please mention the issue number. That can be done by typing #[issue's number].
For example: "This pull request fixes #5135".
Github automatically links both issue and pull request to one another.