Take ownership of treeherder-node (nodejs client) and move into the Treeherder repo

RESOLVED WONTFIX

Status

Tree Management
Treeherder: Client Libraries
P4
normal
RESOLVED WONTFIX
3 years ago
10 months ago

People

(Reporter: emorley, Unassigned)

Tracking

Details

(Reporter)

Description

3 years ago
We now have the ability to version the Treeherder API, which is great - but it's still useful if we can help expedite switching to the new APIs, by maintaining clients used to access the Treeherder API. In addition, we can make sure clients Do The Right Thing with respects to chunking/retry aggressiveness/back-off etc.

We currently maintain the Python client, which is in the Treeherder repo, and whose tests run as part of the Travis run - and in fact is used by Treeherder's ETL layer itself.

However the nodejs client is currently in another repo, doesn't have tests that run with ours, and is seemingly not maintained at present:
https://github.com/mozilla/treeherder-node

We should:
1) Adopt ownership of this nodejs client
2) Consider moving it into the Treeherder repo (and get people to use it via npm, like people use the python client from PyPI)
3) Make the its tests run as part of our Travis run
4) Add some end to end tests, so we can test its interaction with the Treeherder API on Travis.

This would help avoid things like bug 1187395.

Note: I can't remember exactly what parts of taskcluster (if any) at the moment use this nodejs client. There are at least some that do not. IMO everything should be using a client we manage, otherwise it makes it much harder for us to deprecate APIs etc.
(Reporter)

Updated

3 years ago
Blocks: 1188398

Comment 1

3 years ago
the main project using the node client I believe is mozilla-taskcluster.  It uses the mozilla-treeherder npm package, which is treeherder-node.

https://www.npmjs.com/package/mozilla-treeherder
(Reporter)

Updated

3 years ago
Priority: -- → P4
(Reporter)

Updated

2 years ago
Component: Treeherder → Treeherder: Client Libraries
Do we still want to do this? I wonder if we should just deprecate the node client, now that we have pulse ingestion going.
Flags: needinfo?(emorley)
(Reporter)

Comment 3

2 years ago
Yeah I think that's the better option :-)
Flags: needinfo?(emorley)

Comment 4

2 years ago
Fantastic! I think the only thing using the client right now is gaia-taskcluster (which is used to create result sets on prod).  We turned off the creation of result sets for github repos on TH staging.
Ok, let's just mark this one as wontfix then.

Feel free to file new bugs to update documentation, etc. :)
Status: NEW → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → WONTFIX
(Reporter)

Comment 6

10 months ago
I've renamed the treeherder-node GitHub repo and updated the description, to make it clearer that it is deprecated:
https://github.com/mozilla/treeherder-node-deprecated
You need to log in before you can comment on or make changes to this bug.