Closed
Bug 471021
Opened 16 years ago
Closed 16 years ago
Try server Windows build machine and unit test slaves should have Unicode NSIS and have it in the PATH
Categories
(Release Engineering :: General, defect, P3)
Release Engineering
General
Tracking
(Not tracked)
VERIFIED
FIXED
People
(Reporter: ehsan.akhgari, Assigned: mozilla)
References
Details
(Keywords: verified1.9.1)
Attachments
(2 files, 1 obsolete file)
(deleted),
patch
|
mozilla
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
bhearsum
:
review+
bhearsum
:
checked-in+
|
Details | Diff | Splinter Review |
A while back I submitted my patch to bug 305039 to the try server (accidentally) and the build failed. I don't have the link to the error log on hand, but the culprit was a missing makensisu.exe (Unicode NSIS executable).
Once bug 305039 lands, all Windows try server builds will fail. We need to have Unicode NSIS on the try server. Since Unicode NSIS is included in MozillaBuild, upgrading the machine(s) to the latest MozillaBuild release should do the trick.
Comment 1•16 years ago
|
||
Ouch... if there are any build machines not running the latest release of MozillaBuild then they need to be upgraded as soon as possible.
cc'ing a bunch of people to give them a heads up
Thanks for catching this Ehsan
Severity: normal → major
Comment 2•16 years ago
|
||
(In reply to comment #1)
"any build machines" should be "any *windows* build machines"
Comment 3•16 years ago
|
||
urgh. We just recently setup additional try slaves, and afaik they were identical to the existing try slaves and production slaves.
Please specify what version of MozillaBuild / NSIS you need. Do you know if the version of NSIS on current production machines is ok?
Reporter | ||
Comment 4•16 years ago
|
||
MozillaBuild 1.2 and 1.3 both include Unicode NSIS, but I have been testing with MozillaBuild 1.3, which ships Unicode NSIS 2.33 (and NSIS 2.22). We need to make sure that exact versions of Unicode NSIS is present on build slaves, because I've been testing the patch with that version (and I suspect the same is true for Robert).
I have not tested it on production machines yet (the patch has not yet landed) but if they include MozillaBuild 1.3, then all should be fine.
Comment 5•16 years ago
|
||
I believe all the other build machines have MozillaBuild 1.2 on them, which includes the same version of unicode NSIS as 1.3. Either 1.2 or 1.3 would be fine.
Comment 6•16 years ago
|
||
1) Ted: Glad to hear MozillaBuild1.2 (and the included NSIS v2.22) is sufficient. From our ref platform docs, https://wiki.mozilla.org/ReferencePlatforms/Win32#Install_MozillaBuild_1.2, NSIS v2.22 is already being used on our production win32 build slaves, and in our new replacement try slaves. So, hopefully we are already all good.
2) Ehsan: You mention you tried this "a while back". Would you mind submitting your patch to the try server again? I ask because we recently added more try slaves to improve overall try server throughput. Those new try slaves were identical to the production build slaves. While doing that we also replaced the old un-maintained try slaves with new slaves, making all the slaves identical to our existing production slaves. So, afaict, all those try slaves should already have NSIS v2.22 on them, and your patch should be ok.
(/me crosses his fingers!)
Comment 7•16 years ago
|
||
From a random windows build slave,
$ which makensisu
/d/mozilla-build//nsis-2.33u/makensisu.exe
and the path contains
...:/d/mozilla-build//nsis-2.22:/d/mozilla-build//nsis-2.33u:...
so I'd agree with John that it's worth resubmitting the build to the try server.
Also,
$ which makensis
/d/mozilla-build//nsis-2.22/makensis.exe
$ which makensisw.exe
/d/mozilla-build//nsis-2.22/makensisw.exe
I see makensisw is referenced in the v1.5 patch on bug 305039, is that executed in the build or on the client machine ? Please confirm that the copy from 2.22 is OK, or let us know if the path order needs switching.
Reporter | ||
Comment 8•16 years ago
|
||
(In reply to comment #7)
> From a random windows build slave,
> $ which makensisu
> /d/mozilla-build//nsis-2.33u/makensisu.exe
> and the path contains
> ...:/d/mozilla-build//nsis-2.22:/d/mozilla-build//nsis-2.33u:...
> so I'd agree with John that it's worth resubmitting the build to the try
> server.
OK, I have just submitted a patch to see how it goes, but it looks like that the problem should have been fixed.
> Also,
> $ which makensis
> /d/mozilla-build//nsis-2.22/makensis.exe
> $ which makensisw.exe
> /d/mozilla-build//nsis-2.22/makensisw.exe
> I see makensisw is referenced in the v1.5 patch on bug 305039, is that executed
> in the build or on the client machine ? Please confirm that the copy from 2.22
> is OK, or let us know if the path order needs switching.
makensisw is a GUI front-end to NSIS, which we're not using.
The non-Unicode NSIS version (or its existence for that matter) won't make a difference at all because it's not used once the Unicode installer patch lands.
Reporter | ||
Comment 9•16 years ago
|
||
The submitted build failed with exactly the same error as I was seeing before:
<http://tinderbox.mozilla.org/showlog.cgi?log=MozillaTry/1230375206.1230380592.27609.gz#err7>
Comment 10•16 years ago
|
||
Huh. I actually got as far as patching this, since as you can see in the log every time the tryserver buildbot spews the environment, the problem is that the PATH doesn't include nsis-2.33u, and then there's that stray 'd:\\sdks\\v6.0\\bin' in http://bonsai.mozilla.org/cvsblame.cgi?file=mozilla/tools/buildbotcustom/env.py&rev=1.10&mark=38,55-56#29 which winds up being output at the start of INCLUDE, but then I realized that that *doesn't* show up in the mozilla-central tinderbox logs, and that they actually have a different path which does include nsis-2.33u, and which looks like the default msys shell path that mozilla-build produces, so I guess the actual problem is that the tryserver *uses* env.py and as a result is very different from the tinderboxes, not that env.py is wrong.
Comment 11•16 years ago
|
||
But assuming we're happy with the tryserver building with a rather different environment than the actual build slaves, this ought to fix Ehsan's problem (and the problem he didn't know he was going to have, yet, where the unit tests would have failed trying to build the uninstaller).
Attachment #354566 -
Flags: review?(bhearsum)
Assignee | ||
Updated•16 years ago
|
Assignee: nobody → aki
Comment 12•16 years ago
|
||
(In reply to comment #11)
> Created an attachment (id=354566) [details]
> Fix env.py paths, v.1
>
> But assuming we're happy with the tryserver building with a rather different
> environment than the actual build slaves, this ought to fix Ehsan's problem
> (and the problem he didn't know he was going to have, yet, where the unit tests
> would have failed trying to build the uninstaller).
Strange. The try win32 slaves are identical to the production win32 slaves
afaik, and so NSIS should be good enough as is. From irc, next week Aki will
reconfirm what I claimed in comment#6.
Our leading suspicion right now is that the slaves are identical, but that the
try master has some slightly different config - in which case we'll have to
bring the masters back in sync with each other! After all, the whole idea of
the try setup is to "try" code out before landing in production, :-) so these
are supposed to be identical.
Priority: -- → P3
Comment 13•16 years ago
|
||
Comment on attachment 354566 [details] [diff] [review]
Fix env.py paths, v.1
Actually, I wouldn't have been saving Ehsan from the unit testers, because I can't figure out what they are using. It looks quite a bit like tools/buildbot-configs/testing/unittest/mozbuild.py, but the bogus
MOZILLABUILD=D:\mozilla-build
MOZILLABUILDDRIVE=C:
combo in the logs doesn't seem to come from anything in CVS.
Attachment #354566 -
Attachment is obsolete: true
Attachment #354566 -
Flags: review?(bhearsum)
Comment 14•16 years ago
|
||
While it would be lovely if everything had the identical config (of build, leaktest, nightly, unittest, and try, only build and leaktest actually build with the same paths), in the meantime Ehsan's stuck. Since there's no case where we want to have nsis-2.22 and not nsis-2.33u in the path (mozilla-build goes to great lengths to rename the 2.33u binary just so that they can both be in the path, and that's what build, leaktest, nightly, and every developer already uses), the shotgun approach ought to fix *this* bug.
Attachment #355602 -
Flags: review?(bhearsum)
Updated•16 years ago
|
Flags: blocking1.9.1?
Summary: Try server Windows build machine should have Unicode NSIS → Try server Windows build machine and unit test slaves should have Unicode NSIS and have it in the PATH
Assignee | ||
Comment 15•16 years ago
|
||
Comment on attachment 355602 [details] [diff] [review]
Shotgun
It appears this will only affect the unit tests, which may already be rolled into moz2, and the try server.
Attachment #355602 -
Flags: review?(bhearsum) → review+
Updated•16 years ago
|
Flags: blocking1.9.1? → blocking1.9.1+
Assignee | ||
Comment 16•16 years ago
|
||
I have tested this and the above "shotgun" patch against staging-try and staging-master. I've avoided changing the base env.py too much since I'm unaware of the full scope.
Attachment #356017 -
Flags: review?(bhearsum)
Updated•16 years ago
|
Attachment #356017 -
Flags: review?(bhearsum) → review+
Comment 17•16 years ago
|
||
Comment on attachment 356017 [details] [diff] [review]
Make the tryserver win32 env match the 1.9.1/m-c win32 env
Checking in env.py;
/cvsroot/mozilla/tools/buildbotcustom/tryserver/env.py,v <-- env.py
new revision: 1.2; previous revision: 1.1
done
Attachment #356017 -
Flags: checked‑in+ checked‑in+
Comment 18•16 years ago
|
||
Comment on attachment 355602 [details] [diff] [review]
Shotgun
Checking in mozbuild.py;
/cvsroot/mozilla/tools/buildbot-configs/testing/unittest-stage/mozbuild.py,v <-- mozbuild.py
new revision: 1.9; previous revision: 1.8
done
Checking in leaktest/mozbuild.py;
/cvsroot/mozilla/tools/buildbot-configs/testing/leaktest/mozbuild.py,v <-- mozbuild.py
new revision: 1.5; previous revision: 1.4
done
Checking in unittest/mozbuild.py;
/cvsroot/mozilla/tools/buildbot-configs/testing/unittest/mozbuild.py,v <-- mozbuild.py
new revision: 1.26; previous revision: 1.25
done
Checking in env.py;
/cvsroot/mozilla/tools/buildbotcustom/env.py,v <-- env.py
new revision: 1.11; previous revision: 1.10
done
I didn't check in the seamonkey part, that's up to KaiRo
Assignee | ||
Comment 19•16 years ago
|
||
tryserver-master config has been updated and reconfig'ed.
production-master will take downtime due to bug 472333.
Comment 20•16 years ago
|
||
(In reply to comment #18)
> I didn't check in the seamonkey part, that's up to KaiRo
I *did* mention it was a shotgun patch, didn't I? Once I looked beyond the context in the patch, the seamonkey part is dead code, pulling from CVS, from before the comm-central switch. All the SeaMonkey tinderboxes already have nsis-2.33u in their paths.
Reporter | ||
Comment 21•16 years ago
|
||
I pushed my patch again to the try server, and this time it built fine on Windows.
I'm not sure if we should mark this as FIXED yet or give it more time.
Comment 22•16 years ago
|
||
I saw that, a pretty happy green :)
But it's only fixed, and not FIXED, and you can't push to mozilla-central yet, until they take some downtime, close the tree, and update the buildbot production-master, because the unit test builds would still turn red on you right now (they don't build the installer, but they do build the uninstaller since everything does, and you're calling makensisu.exe there).
Assignee | ||
Comment 23•16 years ago
|
||
The production-master has picked up this change, and I'm seeing nsis-2.33u in the PATHs. Resolving.
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Comment 25•16 years ago
|
||
What's the best way to verify this patch for m-c and 1.9.1?
Reporter | ||
Comment 26•16 years ago
|
||
Since Unicode NSIS patch has been landed, any Windows builds which succeed now is a testimony that this is FIXED.
Comment 27•15 years ago
|
||
We had several tryserver builds in the within the last year on 1.9.2 and 1.9.1 which were all fine. Marking this bug as verified fixed.
Status: RESOLVED → VERIFIED
Keywords: fixed1.9.1 → verified1.9.1
Updated•11 years ago
|
Product: mozilla.org → Release Engineering
You need to log in
before you can comment on or make changes to this bug.
Description
•