Граф коммитов

591 Коммитов

Автор SHA1 Сообщение Дата
William Lachance 7ea3c53020 Make job details panel close button visible again (#4499)
It looks like bootstrap's default button class (now?) sets the
default button color to dark grey, which is really hard to see against
the background of the job details panel. Fix this by resetting
the color to the default of the containing class.
2019-01-25 11:07:14 -08:00
Cameron Dawson d2e83bdb90
Bug 1521157 - Create a prototype for the Push Health View (#4475) 2019-01-24 08:15:46 -08:00
Ed Morley dc5fc9e6ad Bug 1522101 - Use Prettier to format CSS 2019-01-23 20:19:04 +00:00
Sarah Clements a0482c50e7
Bug 1506671 - Convert perf compareChooser view to react (#4297)
Remove compareChooser angular partial and controller and create react components
2018-11-29 13:44:12 -08:00
Ed Morley 352ed07555
Bug 1495402 - Update the Infra menu links (#4290)
To remove the EOL buildbot entries and add Taskcluster equivalents.
The headings/separator have been removed since there aren't enough
entries of each type to warrant them.
2018-11-16 15:22:41 +00:00
Cameron Dawson 3ad320d958 Bug 1450045 - Convert Logviewer to ReactJS (#4223)
And switch to using react-lazylog instead of unified-logviewer.
2018-11-09 09:15:00 +00:00
Cameron Dawson b52813161f
Bug 1450042 - Treeherder converted to full React (#4167) 2018-10-23 10:34:03 -07:00
ionutgoldan bd95660e36 Bug 1497250 - Make perf alert state buttons sticky (#4147) 2018-10-18 17:00:41 +01:00
Cameron Dawson 63dcf774f8
Fix window scroll-height (#4150) 2018-10-16 10:33:57 -07:00
Cameron Dawson 68f6001822
Bug 1450040 - Replace ThResultSetStore with Pushes context (#4102)
* Switch from using job.result_set_id to job.push_id
* Switch to using template strings for aggregateIds
* Fix notification where selected job not in push range
* Fix push status notifications(watching) to use safe React lifecycle method
* Fix some lodash _ imports to specific file imports
* Remove last usage of globalFilterChanged event
* Rename usage internal to PushJobs from "platforms" to "filteredPlatforms"

This takes what ThResultSetStore used to do and moves it to a React Context
called "Pushes.jsx" and into the "Push.jsx" component to manage
its own jobs.
2018-10-09 11:50:43 -07:00
Guilherme Bayer 3a42016453 Bug 1450026 - Convert Userguide to ReactJS (#3902) 2018-10-08 16:15:18 -07:00
Cameron Dawson d8df48f9f9 Bug 1492270 - Convert list of pinned jobs to a Context 2018-09-20 09:24:17 -07:00
Cameron Dawson d98f2a3d27 Revert "Bug 1492270 - Convert list of pinned jobs to a Context"
This reverts commit 8aae70a82c.
2018-09-19 17:04:58 -07:00
Cameron Dawson 8aae70a82c Bug 1492270 - Convert list of pinned jobs to a Context 2018-09-19 16:02:24 -07:00
Hassan Ali c8998982cb
Bug 1470622 - Convert actions to use hook-based actions (#3980)
* Convert pinboard actions to use hook-based actions

* Convert action bar actions to use hook-based actions

* Make create interactive task use hook-based actions

* Convert a second cancel-all to use hook-based actions

* Use hook-based actions for creating interactive tasks

* Remove angular $timeout, $apply

* Abstract away retrigger & cancel functions

* Remove thBuildApi entirely

* Remove PushModel.cancelAll and use actions json instead

* Remove usage of actions.yml

ESR52 still uses actions.yml but it is being treated as EOL
(Treeherder's buildbot ingestion has just been switched off).
2018-09-13 16:52:42 -04:00
Sarah Clements 934bad9187
Bug 1486660 - IFV UI error-handling additions (#3963)
Add spinner to ease transitions, add error boundaries,
add query param validation prior to api requests
2018-08-28 17:10:28 -07:00
Cameron Dawson a1dc384a9b Bug 1482536 - Convert Repository Model to ReactJS 2018-08-21 10:53:45 -07:00
Cameron Dawson ed2e800d90
Bug 1465987 - Convert the BugFiler to ReactJS (#3878) 2018-08-06 10:54:00 -07:00
renovate[bot] e1794856f7 Update dependency react-select to v2 (#3823) 2018-07-30 13:11:56 -07:00
Cameron Dawson 28460c5b10
Bug 1450030 - Convert primary nav bar to ReactJS (#3832)
* Prevent flicker when switching from Perfherder to Treeherder
   The page would reload an extra time while the route gets changed. 
   This way, we set it to the default route directly.
* Cleanup displayed message when an invalid "repo" param is set
* Improve the logic in _checkFieldFilters
* Have Perfherder use React login
2018-07-27 10:39:22 -07:00
Cameron Dawson 7cda642b68
Fix text color on closed repos (#3831) 2018-07-25 15:38:20 -07:00
Cameron Dawson bc4e8a7b14
Bug 1450032 - Convert bottom (secondary) nav bar to ReactJS (#3779)
Also convert term resultState back to resultStatus

I had wanted to migrate to using "resultState" instead, as it
seemed more descriptive of what it is.  But the filter params
are using "resultStatus" and it would not be worth
the effort to migrate.  It doesn't really matter, but I want to be
consistent to remove confusion, so moving these terms back
to "resultStatus"-ish names.
2018-07-13 16:04:51 -07:00
Cameron Dawson 6319306eb3
Bug 1472796 - Fix action menu cut off at bottom of results pane (#3755) 2018-07-05 10:45:48 -07:00
Cameron Dawson efe5c2166d
Bug 1468623 - Fix resizing job details / pinboard panel (#3718) 2018-06-28 11:52:44 -07:00
Sarah Clements 706cd31edb Bug 1470557 - fix IFV scrolling (#3707) 2018-06-25 17:08:53 -07:00
Cameron Dawson 69417f44ae Fix scrolling on Perfherder pages 2018-06-19 12:01:16 -07:00
Cameron Dawson a81e7a85c7
Bug 1469047 - Create common React ancestor for PushList and DetailsPanel (#3673)
This will allow better interaction between the two components.  As we convert
more items (like navbars, etc) we will move them into this umbrella Treeherder
component.
2018-06-18 08:59:50 -07:00
Cameron Dawson 15721f009c
Bug 1450022 - Convert the rest of Details Panel to ReactJS (#3621) 2018-06-13 15:40:38 -07:00
Sarah Clements b1585c2ac1 Bug 1339937 - IFV show unexpected fails (#3620)
modify failuresByBug api to include test-unexpected-fail lines per job; modify bugdetails UI to include failure counts and tooltip with lines
2018-06-08 12:05:15 -07:00
Ed Morley 55654a1195
Bug 1363722 - Allow login to work in all development workflows (#3534)
Previously it was not possible to test features that required an
authenticated user when:
* using `yarn start` with Vagrant (bug 1363722), which meant slower
  watch builds
* pointing the UI at the prod/stage API (bug 1317752), which was
  extremely limiting

Now login works in all environments, since the frontend no longer uses a
URL prefix, but instead webpack-dev-server proxies non-webpack URLs to
the chosen `BACKEND_DOMAIN` - avoiding cross-domain issues. Cookies are
rewritten to remove any `secure` directive (which is set on production),
so that they can still be read from HTTP localhost. The `Referer` has to
also be changed to stop Django's CSRF checks from rejecting request.

The slower "build into `dist` and watch" mode is therefore no longer
necessary, so `yarn start:local` instead invokes webpack-dev-server just
like `yarn start` - and the `local-watch.js` workaround has been
removed.

Support for the "publish to GitHub with hardcoded `SERVICE_DOMAIN`"
workflow has been dropped, since it was already rarely used and there is
no way to make it support login.

The API domain environment variable was renamed to `BACKEND_DOMAIN` to
avoid potential confusion given it no longer behaves the same as
`SERVICE_DOMAIN` used to.

NB: For full stack Vagrant workflows users must now connect to port
*5000* on localhost, not 8000.
2018-05-10 17:58:04 +01:00
ionutgoldan 9a47ad307c Bug 1451661 - Highlight significant alerts from alert summary (#3469) 2018-05-09 15:42:01 +01:00
Cameron Dawson 5d23735359
Bug 1446427 - Convert Autoclassify panel to ReactJS (#3414) 2018-04-24 12:39:06 -07:00
Jonathan French e8c2ac2e63 Bug 1454075 - Clean up login button and remove dead class (#3445) 2018-04-13 15:15:48 -07:00
Ed Morley 163a94a2f6
Bug 1451428 - Remove unused settings panel (#3395)
Since it's hidden and has never been used.

The `thSettingsPanel.html` partial is a leftover from when this
feature was first added in 3e625f3 / 6b0c56e.
2018-04-04 20:34:26 +01:00
ionutgoldan aa40c6a7e4 Bug 1376829 - Add notes to alert summaries (#3345) 2018-04-03 09:15:27 -04:00
Philipp Kewisch 7cf1013f09 Bug 1123814 - Get desktop notifications when pushes or jobs complete (#3373) 2018-03-29 09:55:31 -07:00
William Lachance dfd259e0ed Simplify bug column in intermittents table a bit (#3352)
* Bug ID -> Bug
* Left align column
* Make the bug number itself a link to the bug, instead of an additional link
* Use CSS instead of javascript to show/hide details link
2018-03-19 09:05:46 -07:00
Cameron Dawson 50034a713b
Bug 1444207 - Consolidate failure_summary_panel to /details-panel (#3341)
* Rename the component to a *Tab and move to /details-panel folder
* cleanup indentation
* cleanup props and panel elements
* Use deconstruction for props object
* simplify onclick event calls with anonymous functions
* Move filerInAddress logic to FailureSummaryTab
* Move the data-fetching into the main controller like the other
  tabs so we can do away with the special controller for the
  failure summary tab.
* Move functions to helpers instead of filters and take less
  values as params
* Eliminate failure_summary/controller
* Moved logic to either the parent controller or into helpers and
  the FailureSummaryTab
* Use helper function for bugzilla url
2018-03-16 08:55:04 -07:00
Sarah Clements 30df0aae6c Bug 1367362 - Add an intermittent failures view (#3296)
Adds a new view to display intermittent test failure occurrences,
to replace the functionality currently provided by the legacy
OrangeFactor tool.

Includes the new API endpoints originally reviewed in #3271.
2018-03-13 13:52:17 +00:00
Cameron Dawson cc8d6ca184
Bug 1441644 - Consolidate annotations tab (#3276)
* Move annotations tab to details-panel folder
* Convert to 2 space indent
* Cleanup props with deconstruction
* Subsume old annotations controller into component
2018-02-28 08:55:11 -08:00
Cameron Dawson f984acf9a8
Bug 1434677 - Convert rendering list of pushes from angular to ReactJS (#3206)
This adds some new components and removes the AngularJS ng-repeat for
pushes.  In the course of this work, some of the AngularJS providers were
converted to helper functions.

In a couple cases, I had to add new code to the AngularJS areas so that it
would continue to interact well between Angular and React.

Also:
* Rename some functions and CSS classes from resultset to push
* Add unlistening for events during unmount of components
2018-02-20 10:31:11 -08:00
Ed Morley dc8db57b03
Bug 1438501 - Remove failureviewer.html (#3232)
Since it's not being used. This will save us having to convert it to
React for now, and also means one less thing slowing down our builds.
Should it be needed in the future, it can be resurrected using the
Git log.
2018-02-16 10:45:17 +00:00
Cameron Dawson f40f3faae7 Bug 1242905 - Replace rendering of pushes and jobs with ReactJS
This replaces the logic that was in clonejobs.js that formerly
handled rendering the pushes, platforms and jobs and converts it to
ReactJS.  The ReactJS code is hosted as a directive in AngularJS
using ngReact reactDirective.

This also removes the feature where you can hide revisions because
it was believed to not be used and added unnecessary complications
to the code.

Co-authored-by: Casey Williams cwillia5@gmail.com
2018-02-13 16:19:14 -08:00
Jonathan French a8e7a12954 Bug 1434456 - Remove scrollbar from shortcut table in userguide 2018-02-12 09:11:31 -08:00
Hassan Ali e1b0168127
Bug 1395356 - Use auth0 instead of login.taskcluster.net for SSO (#3144)
## Rough summary of the changes

### Front end
The auth callback is written in React and lives under the /login.html endpoint. It communicates with Treeherder using the localStorage.

### Credential expiration
The Django user session expiration is set to expire when the client access token or the id token expires (whichever one expires first). These values are controlled by the IAM team. Presently, the access token expires after 1 day and the id token expires after a week. That being said, the session will therefore expire after 1 day. If you want this value change, we simply need to send a request to the IAM team.

### Credential renewal
Renewals are set to happen every 15 minutes or so. The renewal is skewed slightly so that different open tabs don't renew at the same time. Once renewal happens, both tokens are renewed and the Django session is updated.

### Migration
If the userSession localStorage key is not set, then the user will be logged out including logging out from the Django session. In other words, all users will be automatically logged out when the merge to production happens.
2018-02-07 12:59:30 -05:00
Jonathan French 247e1b980c Bug 1053203 - Remove builds and tests tables from user guide (#3164) 2018-01-25 11:54:59 +00:00
Kartikaya Gupta 6a10bdf674 Bug 1430171 - Allow scrolling the shortcut table when viewing on smaller screens 2018-01-16 17:07:26 -08:00
Jonathan French 343c0295ae Bug 1422208 - Stop the watched repo dropdown clipping off screen 2017-12-19 11:27:22 -08:00
Cameron Dawson a7e4848aad
Bug 1366909 - Merge Test view app into Treeherder repository (#3001)
Modify the code to:
* share assets and global settings wherever possible
* update links going both directions
* other small UI tweaks for uniformity with Treeherder
* Fixed a few routing dead-ends on the react side
* Removed the dead TestDetail file we weren't using anyway
* fix production domain urls
2017-12-14 08:03:32 -08:00
Jonathan French 2c3b9b7370 Bug 1421107 - Stop perf tab wrapping at narrower widths 2017-12-07 11:32:18 -08:00