Closed Bug 1188396 Opened 9 years ago Closed 8 years ago

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

Categories

(Tree Management Graveyard :: Treeherder: Client Libraries, defect, P4)

defect

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: emorley, Unassigned)

References

Details

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.
Blocks: 1188398
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
Priority: -- → P4
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)
Yeah I think that's the better option :-)
Flags: needinfo?(emorley)
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
Closed: 8 years ago
Resolution: --- → WONTFIX
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
Product: Tree Management → Tree Management Graveyard
You need to log in before you can comment on or make changes to this bug.