Last Comment Bug 774137 - Integrate trychooser with mach
: Integrate trychooser with mach
Status: NEW
[mach]
: trychooser
Product: Core
Classification: Components
Component: mach (show other bugs)
: Trunk
: All All
: -- normal (vote)
: ---
Assigned To: Nobody; OK to take it and work on it
:
Mentors:
Depends on:
Blocks: machfeatures
  Show dependency treegraph
 
Reported: 2012-07-15 17:58 PDT by Gregory Szorc [:gps]
Modified: 2015-04-16 07:43 PDT (History)
10 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments

Description Gregory Szorc [:gps] 2012-07-15 17:58:53 PDT
Trychooser (https://github.com/pbiggar/trychooser) is a pretty handy Mercurial extension. I'd love to be able to effortlessly submit Try builds from mach.

Thinking small, we could just go with:

 $ ./mach try

Then go into the existing trychooser prompting flow.

Thinking bigger, I think it would be cool if:

 $ ./mach try submit

  <existing trychooser flow)

 $ ./mach try submit --no-talos

  <all - talos submitted without any prompting>

 $ ./mach try profile foo

  <prompt for and save Try settings to a named "profile"

 $ ./mach try foo

  <use "foo" profile to submit Try build>

 $ ./mach try status

  <mach remembers previously submitted try builds or looks up try builds pushed by you and displays a summary of their progress>

This may be the first part of mach/mozbuild that interacts with Mercurial. I would prefer all interaction use the Mercurial Python API directly. I'm not sure how stable their API is. Consideration should also be given to how this will work with Git.

Interaction with TBPL (e.g. ./mach try status) could be a follow-up bug. But, if someone wants to tackle it, that would be awesome.
Comment 1 :Ms2ger 2012-08-01 13:13:03 PDT
(In reply to Gregory Szorc [:gps] from comment #0)
> This may be the first part of mach/mozbuild that interacts with Mercurial. I
> would prefer all interaction use the Mercurial Python API directly. I'm not
> sure how stable their API is. Consideration should also be given to how this
> will work with Git.

Also, licensing; I believe there are two HG APIs, and at least one is GPLed.
Comment 2 Ted Mielczarek [:ted.mielczarek] 2012-08-02 05:46:40 PDT
Also the Mercurial shipped with Mozillabuild doesn't have the API exposed in the system Python (because it's shipped as a standalone exe with its own embedded Python).
Comment 3 Gregory Szorc [:gps] 2012-08-02 14:49:00 PDT
We should just kill MozillaBuild. Bug 774115 can be the beginning of that work.
Comment 4 Jeff Hammel 2012-09-26 14:18:04 PDT
What I would *actually* like, longer term, to see is a base python API for try message building which the hg extension could use (and could be bundled with) that would utilize the actual possible list of tests which would need to be stored in something parseable without massive dependencies (I'm looking at you, buildbot-configs), like a JSON file.  Then anyone could make client libraries for this.  That said, I am fine with incremental steps forward and integration with mach sounds in any form like a win for the time being
Comment 5 Jeff Hammel 2012-10-10 09:53:55 PDT
I would also like the ability to try patches not in the tree; e.g. from a bugzilla attachment

Note You need to log in before you can comment on or make changes to this bug.