Closed Bug 844053 Opened 7 years ago Closed 7 years ago

Separate win8 updates from other windows updates

Categories

(Release Engineering :: Release Requests, defect)

defect
Not set
normal

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: catlee, Unassigned)

References

Details

Attachments

(1 file, 2 obsolete files)

We may be required to provide updates to 19.0.1 to *only* win8 users. Currently AUS doesn't support this kind of restriction, so some hacks are required.

Here's the best approach I can come up with. If we see a win8 user for Firefox (identified by 'Windows_NT 6.2' in the OS_VERSION string), then we change what AUS platform we consider them to be. We can then publish snippets that target only win8 users.

For 19.0.1, this could mean that we change the update_platform in automation so that snippets for windows builds get created with the right name. Or we could rename the snippet directory after they're generated.

Does this make any sense?

Can somebody please double check that 'Windows_NT 6.2' is the right string to be looking for?

If we can find a better approach, then great. However, the first thing to ask yourself if you think you have a better idea is: does it update a win7 18.0 user to 19.0 while at the same time updating a win8 18.0 user to 19.0.1?

This patch will have to be removed before 19.0.2 / 20.0. Perhaps it should be limiting its behaviour to just release/releasetest channels as well?
Attachment #717063 - Flags: feedback?(rhelmer)
Attachment #717063 - Flags: feedback?(rail)
Same as before, except limit to release, releasetest channels only
Attachment #717063 - Attachment is obsolete: true
Attachment #717063 - Flags: feedback?(rhelmer)
Attachment #717063 - Flags: feedback?(rail)
Attachment #717119 - Flags: feedback?(rhelmer)
Attachment #717119 - Flags: feedback?(rail)
Comment on attachment 717063 [details] [diff] [review]
Change aus platform for win8 users

Review of attachment 717063 [details] [diff] [review]:
-----------------------------------------------------------------

::: index.php
@@ +105,5 @@
> +// To accomplish this, we change the platform of win8 users, so we can look in 
> +// a distinct snippet directory for them.
> +if ($clean['product'] == 'Firefox' &&
> +    $clean['platform'] == 'WINNT_x86-msvc' &&
> +    strpos($clean['platformVersion'], 'Windows_NT 6.2')) {

strpos($clean['platformVersion'], 'Windows_NT 6.2')) === true
probably would be better here, otherwise lgtm.

I checked the update URL on a W8 machine and it was like ..."Windows_NT%206.2.0.0"...
Attachment #717063 - Attachment is obsolete: false
Attachment #717119 - Flags: feedback?(rail) → feedback+
Would this patch also help us to disable updates to FF19.0 for Win8 users only on the Release channel?
Attachment #717119 - Flags: feedback?(rhelmer) → feedback+
(In reply to Alex Keybl [:akeybl] from comment #3)
> Would this patch also help us to disable updates to FF19.0 for Win8 users
> only on the Release channel?

I believe so, yes. If I understand it correctly, it should give us the ability to serve unique snippets to all combinations of win8 + version.
(In reply to Rail Aliiev [:rail] from comment #2)
> Comment on attachment 717063 [details] [diff] [review]
> Change aus platform for win8 users
> 
> Review of attachment 717063 [details] [diff] [review]:
> -----------------------------------------------------------------
> 
> ::: index.php
> @@ +105,5 @@
> > +// To accomplish this, we change the platform of win8 users, so we can look in 
> > +// a distinct snippet directory for them.
> > +if ($clean['product'] == 'Firefox' &&
> > +    $clean['platform'] == 'WINNT_x86-msvc' &&
> > +    strpos($clean['platformVersion'], 'Windows_NT 6.2')) {
> 
> strpos($clean['platformVersion'], 'Windows_NT 6.2')) === true
> probably would be better here, otherwise lgtm.
> 
> I checked the update URL on a W8 machine and it was like
> ..."Windows_NT%206.2.0.0"...

Where's you check this? I'd like a full update URL example so we can do some more testing.
Initial testing showed the previous patch not to work. This version fixes the platformVersion condition to work. Still more testing to do, just wanted to upload this before I forgot.
Attachment #717063 - Attachment is obsolete: true
Attachment #717119 - Attachment is obsolete: true
Comment on attachment 718423 [details] [diff] [review]
fix platformVersion condition

OK. I think this is working fine. I setup some test snippets on the "bhearsumtest" channel that:
* Point 18.0.2 non-win8 @ 19.0 (same as what's currently on "release")
* Point 19.0 win8 @ a fake 20.0

Here's non-win8 18.0.2: http://10.8.74.30/update/3/Firefox/18.0.2/20130201065344/WINNT_x86-msvc/en-US/bhearsumtest/Windows_NT%206.1.0.0%20%28x64%29/default/default/update.xml?force=1
Here's non-win8 19.0: http://10.8.74.30/update/3/Firefox/19.0/20130226999999/WINNT_x86-msvc/en-US/bhearsumtest/Windows_NT%206.1.0.0%20%28x64%29/default/default/update.xml?force=1
Here's win8 19.0: http://10.8.74.30/update/3/Firefox/19.0/20130226999999/WINNT_x86-msvc/en-US/bhearsumtest/Windows_NT%206.2.0.0%20%28x64%29/default/default/update.xml?force=1

In the real release we can add snippets for 18.0.2 and earlier win8 too, I didn't bother with that for testing purposes though.

Since we're already in a state where Windows updates are throttled (instead of blocked via unsupportedPlatforms), nightly builds are already getting updates. Eg: https://aus3.mozilla.org/update/3/Firefox/13.0a1/20120222174716/WINNT_x86_64-msvc/en-US/nightly/Windows_NT%206.2.1.0%20%28x64%29/default/default/update.xml?force=1 - so I think that addresses Alex's concern from comment #3.
Attachment #718423 - Flags: review?(catlee)
Attachment #718423 - Flags: feedback?(akeybl)
Attachment #718423 - Flags: review?(catlee) → review+
Blocks: 845447
Keywords: verifyme
Comment on attachment 718423 [details] [diff] [review]
fix platformVersion condition

From the explanation given, this is what we want. For the actual push, I filed bug 845447 (utilizing this patch).
Attachment #718423 - Flags: feedback?(akeybl) → feedback+
(In reply to Ben Hearsum [:bhearsum] from comment #9)
> OK. I think this is working fine. I setup some test snippets on the
> "bhearsumtest" channel that:
> * Point 18.0.2 non-win8 @ 19.0 (same as what's currently on "release")
> * Point 19.0 win8 @ a fake 20.0

Anthony - could you help confirm Win8 vs non-Win8 findings on bhearsumtest? Using needinfo instead of qacontact due to conflict.
Flags: needinfo?(anthony.s.hughes)
Keywords: qawanted
(In reply to Alex Keybl [:akeybl] from comment #11)
> (In reply to Ben Hearsum [:bhearsum] from comment #9)
> > OK. I think this is working fine. I setup some test snippets on the
> > "bhearsumtest" channel that:
> > * Point 18.0.2 non-win8 @ 19.0 (same as what's currently on "release")
> > * Point 19.0 win8 @ a fake 20.0
> 
> Anthony - could you help confirm Win8 vs non-Win8 findings on bhearsumtest?
> Using needinfo instead of qacontact due to conflict.

Argh...I just deleted these snippets. I can recreate them if necessary.
(In reply to Ben Hearsum [:bhearsum] from comment #12)
> (In reply to Alex Keybl [:akeybl] from comment #11)
> > (In reply to Ben Hearsum [:bhearsum] from comment #9)
> > > OK. I think this is working fine. I setup some test snippets on the
> > > "bhearsumtest" channel that:
> > > * Point 18.0.2 non-win8 @ 19.0 (same as what's currently on "release")
> > > * Point 19.0 win8 @ a fake 20.0
> > 
> > Anthony - could you help confirm Win8 vs non-Win8 findings on bhearsumtest?
> > Using needinfo instead of qacontact due to conflict.
> 
> Argh...I just deleted these snippets. I can recreate them if necessary.

Though, I don't know if QA has access to aus3-staging.mozilla.org to test.
We can always go with bug 845447 once staged, just wanted to get early feedback.
Comment on attachment 718423 [details] [diff] [review]
fix platformVersion condition

Checking in index.php;
/cvsroot/mozilla/webtools/aus/xml/index.php,v  <--  index.php
new revision: 1.38; previous revision: 1.37
done
Attachment #718423 - Flags: checked-in+
Depends on: 845533
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Summary: Update only win8 users to 19.0.1 → Separate win8 updates from other windows updates
Flags: needinfo?(anthony.s.hughes)
Depends on: 845947
This appears to be working as expected. Windows 8 users (and only Windows 8 users) are receiving updates to 19.0.1 on release channel. All other users are receiving Firefox 19.0.
Status: RESOLVED → VERIFIED
Keywords: qawanted, verifyme
Depends on: 848663
Bug 846289 will remove this again.
Depends on: 846289
Note: if we do this again we should include 'betatest' in the channel list.
Product: mozilla.org → Release Engineering
You need to log in before you can comment on or make changes to this bug.