A system for managing CI data for Mozilla projects
Перейти к файлу
Armen Zambrano 24194441aa
Bug 1509181 - Github ingestion: Ingest pushes in the right order (#6070)
Git based projects can list pushes in the UI incorrectly. This can be caused by commits having been ammended on a PR or merges of old commits.

Using the committer's date (the date when the PR gets merged) instead of the author's date to determine push time fixes the sorting problem.

This change also includes:
* Support for manual ingestion of Git pushes
* Support for ingesting the latest commits for a repo
* Script to compare pushes between Treeherder instances

## Script to compare pushes between Treeherder instances

`compare_pushes.py` compares the last 50 pushes of various projects for different Treeherder instances. The output generates links to each instance and revision to visually compare.

```console
% ./misc/compare_pushes.py --projects android-components,fenix,reference-browser,servo-master,servo-auto,servo-try
Comparing android-components against production.
Comparing fenix against production.
Comparing reference-browser against production.
{"values_changed": {"root['push_timestamp']": {"new_value": 1582580346, "old_value": 1582581477}}}
https://treeherder.allizom.org/#/jobs?repo=reference-browser&revision=547a18b97534b237fa87bd22650f342836014c4e
https://treeherder.mozilla.org/#/jobs?repo=reference-browser&revision=547a18b97534b237fa87bd22650f342836014c4e
Comparing servo-master against production.
Comparing servo-auto against production.
Comparing servo-try against production.
```
2020-03-10 14:29:07 -04:00
.dependabot Bug 1337717 - Update to newer Celery, Kombu, py-amqp and billiard (#4722) 2019-02-28 19:52:22 +00:00
bin Travis: Add Heroku's Python build execution path (#6057) 2020-03-10 08:20:24 -04:00
deployment/aws Update aws rds-combined-ca-bundle to include latest CA certificates (#5571) 2019-10-29 17:01:26 -07:00
docker Bug 1611502 - Do not run initialize_data in Docker container if DATABASE_URL is being used (#5940) 2020-02-06 19:21:28 -05:00
docs Bug 1509181 - Github ingestion: Ingest pushes in the right order (#6070) 2020-03-10 14:29:07 -04:00
lints Bug 1337717 - Update to newer Celery, Kombu, py-amqp and billiard (#4722) 2019-02-28 19:52:22 +00:00
misc New misc script to compare pushes between Treeherder instances (#6089) 2020-03-05 13:41:18 -05:00
requirements Bump google-auth from 1.11.1 to 1.11.2 in /requirements (#6054) 2020-03-10 09:53:54 -07:00
schemas Bug 1618816 - Define json schema for log_details column 2020-03-06 10:49:19 +02:00
tests Bug 1509181 - Github ingestion: Ingest pushes in the right order (#6070) 2020-03-10 14:29:07 -04:00
treeherder Bug 1509181 - Github ingestion: Ingest pushes in the right order (#6070) 2020-03-10 14:29:07 -04:00
ui job-view: Support compressed manifest-tasks artifact (#6094) 2020-03-10 11:31:36 -04:00
.codecov.yml Codecov tweaks 2019-09-10 13:51:09 -07:00
.dockerignore Bug 1169263 - Switch from Vagrant to docker-compose (#4901) 2019-05-16 14:56:02 -07:00
.eslintrc.js Reenable camelCase eslint rule and fix all violations 2019-11-12 10:36:55 -05:00
.gitattributes Bug 1419168 - Add a .gitattributes file to force Linux line endings (#2997) 2017-11-28 21:51:59 +00:00
.gitignore Bug 1617674 - BigQuery Extraction - include commits in push (#6093) 2020-03-03 17:30:18 -05:00
.neutrinorc.js Bug 1611334 - Remove Test-View (#6116) 2020-03-09 16:31:14 -07:00
.pre-commit-config.yaml Add prettier pre commit hook (#6108) 2020-03-06 09:43:59 -05:00
.prettierignore Support test environment outside of Docker container (#5716) 2020-02-05 14:55:03 -05:00
.prettierrc.js Bug 1507172 - Use Prettier for formatting JS/JSX (#4276) 2018-11-16 08:28:34 +00:00
.readthedocs.yml Bug 1466084 - Docs: Switch to MkDocs and Material theme (#4565) 2019-02-06 19:34:08 +00:00
.renovaterc Reconfigure Renovate (#5778) 2019-12-20 16:36:06 -05:00
.slugignore Bug 1169263 - Switch from Vagrant to docker-compose (#4901) 2019-05-16 14:56:02 -07:00
.travis.yml Travis: Add Heroku's Python build execution path (#6057) 2020-03-10 08:20:24 -04:00
.yarnrc Don't run preinstall/install/postinstall hooks during yarn install (#4432) 2019-01-08 18:15:01 +00:00
CODE_OF_CONDUCT.md This is from PR #4840. I'm just rebasing since Travis would not pass. 2019-11-12 16:25:42 -05:00
LICENSE.txt Bug 1192801 - List the full MPL v2 license in LICENSE.txt 2015-08-18 23:29:32 +01:00
Procfile Bug 1574651 - ingest from multiple rabbitmq servers (#5399) 2019-10-10 16:53:18 -07:00
README.md Bug 1525923 - Switch from pyup to Dependabot for Python package updates (#4575) 2019-02-07 15:41:31 +00:00
app.json Fix Heroku Review App (#6069) 2020-02-28 08:26:40 -05:00
docker-compose.yml Bug 1509181 - Github ingestion: Ingest pushes in the right order (#6070) 2020-03-10 14:29:07 -04:00
initialize_data.sh SETA related changes (#5851) 2020-01-22 14:28:18 -05:00
jest.config.js Bug 1364045 - Don't load '@neutrinojs/jest' in production (#4381) 2018-12-17 12:23:53 +00:00
manage.py Bug 1529243 - Update Python from 3.6 to 3.7 (#4723) 2019-02-28 20:24:02 +00:00
mkdocs.yml Documentation Update - Accessibility page (#5920) 2020-02-07 12:44:51 -08:00
newrelic.ini Add synthesize_backfill_report for new relic coverage (#5691) 2019-11-28 10:05:22 -05:00
package.json job-view: Support compressed manifest-tasks artifact (#6094) 2020-03-10 11:31:36 -04:00
pylintrc Bug 1452420 - Update pylintrc to reduce noise 2018-04-10 19:22:28 +01:00
requirements.txt Bug 1165259 - Add infrastructure documentation (#4766) 2019-03-11 21:39:34 +00:00
runtests.sh Add missing pytest flag to enable Python code coverage (#5923) 2020-02-04 08:09:23 -05:00
runtime.txt Bug 1529243 - Update Python from 3.6 to 3.7 (#4723) 2019-02-28 20:24:02 +00:00
setup.cfg isort to ignore all directories that start with dot (#5992) 2020-02-12 14:45:46 -05:00
webpack.config.js Bug 1364894 - Upgrade from Neutrino 4 to 9 (#4216) 2018-11-02 18:48:28 +00:00
yarn.lock job-view: Support compressed manifest-tasks artifact (#6094) 2020-03-10 11:31:36 -04:00

README.md

treeherder

What's Deployed Build Status Node dependencies Status Node devDependencies Status Documentation Status

Description

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.

Instances

Treeherder exists on two instances, stage for pre-deployment validation, and production for actual use.

Installation

The steps to run Treeherder are provided here.

The steps to run only the UI are provided here.

Visit our project tracking Wiki at: https://wiki.mozilla.org/EngineeringProductivity/Projects/Treeherder

Visit our readthedocs page for other setup and configuration at: https://treeherder.readthedocs.io

File any bugs you may encounter here.