Closed
Bug 1025055
Opened 10 years ago
Closed 10 years ago
Steeplechase should take app packages as arguments, unpack them on clients
Categories
(Testing :: General, defect)
Testing
General
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: ted, Assigned: sydpolk)
References
Details
Attachments
(3 files, 1 obsolete file)
3.81 KB,
patch
|
Details | Diff | Splinter Review | |
660 bytes,
patch
|
Details | Diff | Splinter Review | |
46 bytes,
text/x-github-pull-request
|
Details | Review |
Right now Steeplechase requires you to pass --binary with the path to the application binary. It then pushes all the files in that directory to the client and executes them. This makes running tests against a Mac client with a non-Mac controller running Steeplechase because unpacking DMG files is hard. We should make Steeplechase alternately take arguments like --app-package=/path/to/firefox.dmg --binary=Firefox.app/Contents/MacOS/firefox where it would then push firefox.dmg to the client, unpack it there, and then execute 'Firefox.app/Contents/MacOS/firefox' from the directory where it unpacks it. The only downside is that this does require knowing the permutations of the application bundle name. Alternately we could make our Firefox builds put that information somewhere so Steeplechase can read it.
This will require slightly more complicated logic in Steeplechase to know how to unpack packages per-platform (tar.gz for Linux, .zip for Windows, .dmg for Mac).
Assignee | ||
Comment 1•10 years ago
|
||
You really need to client to unpack the archive, right? Negatus needs to know how to mount the .dmg and extract the binary. Steeplechase just sends the file down.
Reporter | ||
Comment 2•10 years ago
|
||
I discussed this on #ateam with a few teammates and the consensus was that we don't want to bake that sort of functionality into Negatus. We'd simply push the dmg to the client, then Steeplechase would execute the commands (via Negatus) to mount it and extract the binary.
Assignee | ||
Comment 3•10 years ago
|
||
Ah, I see.
Comment 5•10 years ago
|
||
This is only the pushing the app package part to the device.
What still needs to be done is:
- Push/dynamically make a python script (see bug 1032335, comment 2) that unpacks and runs the browser
Comment 6•10 years ago
|
||
This is real dirty, but it uploads the tar.gz file to the negatus client and unpacks it there using a python script named 'negatusscript.py' that is also uploaded and then run on the negatus client.
After that, the runsteeplechase.py script takes over again and continues as usual (running the app and running the tests).
Attachment #8473749 -
Attachment is obsolete: true
Comment 7•10 years ago
|
||
Updated•10 years ago
|
Assignee: nobody → martijn.martijn
Assignee | ||
Comment 8•10 years ago
|
||
Added the ability to pass packages instead of binaries. Binaries still supported.
Attachment #8502660 -
Flags: review?(ted)
Reporter | ||
Comment 9•10 years ago
|
||
I ran out of time to review this this week unfortunately, I'm out all next week but will review it as soon as I get back.
If you really need this landed I've added you as a collaborator to the automation github group, so you should be able to push whatever you want to the steeplechase repo, I can always post-facto review things when I get back.
Thanks for doing the work here!
Assignee | ||
Comment 10•10 years ago
|
||
I'll wait until you get back and use my own fork for now. Thanks!
Reporter | ||
Comment 12•10 years ago
|
||
Sorry, never quite got to reviews last week after working through my backlog of bugmail and other stuff, and I was PTO yesterday. Will review today.
Flags: needinfo?(ted)
Reporter | ||
Comment 13•10 years ago
|
||
Comment on attachment 8502660 [details] [review]
Pull request to allow package downloads as an alternative to binaries.
I left some comments on the PR. It's in good shape, just a few things I'd like cleaned up before landing it. Thanks for the patch!
Attachment #8502660 -
Flags: review?(ted)
Reporter | ||
Updated•10 years ago
|
Assignee: martijn.martijn → spolk
Reporter | ||
Comment 14•10 years ago
|
||
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Updated•7 years ago
|
Component: New Frameworks → General
You need to log in
before you can comment on or make changes to this bug.
Description
•