Skip to content

Allow Mozmill-CI to run testruns for Firefox Metro #407

Closed
cosmin-malutan opened this Issue Jan 24, 2014 · 11 comments

3 participants

@cosmin-malutan

In order to run a metro testrun on ci, we need Firefox to be set as the default browser. For that, I investigated and we are not completely blocked by bug 911257, as we need to manually do that once on the machines. After that, the rest of the jobs will pass.
We also have to set an option on the machines for when the testrun has finished, we return to Desktop not remain in Start Screen as it is now.
http://www.neowin.net/news/windows-81-rtm-has-option-to-return-to-desktop-after-closing-modern-apps

Other than that, we need to create a new tab under Jenkins, for example "Metro", which will hold all the testruns supported. At the moment I assume will be functional and remote. Those will be duplicated after the current ones.

@whimboo
whimboo commented Jan 27, 2014

So with the above proposal you will be able to run a single branch only. But what we want is coverage across all of them. So for the beginning we could start with mozilla-central, and once bug 911257 has been fixed we can expand to aurora, beta, and release.

@andreeamatei

Should we name metro_mozilla-central_functional for example?
We talked in the meeting about using the installer, but that can't be done because when we uninstall it and install it back the next time, the default option previously set will no longer be available.

@whimboo
whimboo commented Jan 28, 2014

That's interesting. If the installer can cause the removal of the default browser settings without a manual interaction, there might also be a way to set it after installation. I will have a look at it in the next days.

Regarding the name, I would not create new jobs. It should be possible to update the existing ones to support different kind of builds. The abstraction for build types takes already place in mozmill-automation.

@andreeamatei

So no new jobs and only when pulse gets a notification for a new default build, to run the job (remote/functional for now) twice, once with firefox and once with metrofirefox? And metrofirefox should be only on Win 8.1 machines.

@whimboo
whimboo commented Jan 29, 2014

Not sure what you mean with 'no new jobs' but the rest is fine, yes.

@cosmin-malutan

About setting the nightly as Default Application:
I followed the steps from:
http://technet.microsoft.com/en-us/library/hh824855.aspx
First I set the Nigthly as default then I exported the settings, using the file format I made one for setting the Nightly as default.
The thing is, after I imported the settings I had to reboot the machine in order for changes to take place.

@cosmin-malutan

I also tried to call the uninstall.exe with the '/SetAsDefaultAppUser' argument as I found here:
http://mxr.mozilla.org/mozilla-central/source/browser/installer/windows/nsis/stub.nsi#1818

  cmdArgs = ['%s\uninstall\helper.exe' % dest, '/SetAsDefaultAppUser']
  subprocess.call(cmdArgs)

This returns 2 as an exit code.

Also a thing good to mention is that on windows every time we remove the installed build we call the uninstall.exe which will clear the windows registry so the application won't be the default one anymore.
https://github.com/mozilla/mozbase/blob/master/mozinstall/mozinstall/mozinstall.py#L201

Two weeks ago I had ran metro testruns on our local jenkins by unzipping the binary prior of running the testrun. Giving the directory as a build parameter and not a zip or installer, we won't remove the binary, and the preferences manually set before will persist. So until we find a way to set the firefox as default I would suggest we go with this option.

@whimboo
whimboo commented Feb 5, 2014

This will not work for production given that all the other jobs are running the installer and uninstalling the build afterward. It might only work on your local system if you only run metro tests and nothing else.

@cosmin-malutan

That's absolutely correct, on the other hand is the only working way so far for running metro tests on CI, also Microsoft says that apps are no longer able to set themselves as default applications, and that the user always chose the association between apps and URI.
http://msdn.microsoft.com/en-us/library/windows/desktop/hh848047(v=vs.85).aspx

@whimboo
whimboo commented Feb 5, 2014

Can we please move this discussion about default applications over to bug 911257? Thanks

@whimboo
whimboo commented Mar 19, 2014

Metro is no longer actively supported. As long as there is no strong interest in getting this run, we will not implement this.

@whimboo whimboo closed this Mar 19, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.