Open Bug 1831552 Opened 1 years ago Updated 5 months ago

The Windows OS version of the NSS CI is outdated (2012)

Categories

(NSS :: Libraries, defect, P2)

Tracking

(Not tracked)

REOPENED

People

(Reporter: anna.weine, Unassigned)

References

(Depends on 3 open bugs, Blocks 1 open bug)

Details

(Whiteboard: [nss-ci])

Attachments

(1 file)

The NSS CI currently runs on Windows 2012 (https://treeherder.mozilla.org/jobs?repo=nss-try). As we are currently reaching the End of Support for this OS (https://learn.microsoft.com/en-us/lifecycle/announcements/windows-server-2012-r2-end-of-support), we would like to update the Continuous Integration to a more recent version of the Windows OS.

Severity: -- → S3
Priority: -- → P2

I started looking at this, switching to the win2022 pool that relops has set up for nss.

Currently hitting an issue where nspr's "make install" doesn't seem to deal well with windows path oddities:

nsinstall -t -m 644 ../../../../pr/include/md/_winnt.cfg /d/task_169832164303801/dist/Release/include/nspr
mv -f /d/task_169832164303801/dist/Release/include/nspr/_winnt.cfg /d/task_169832164303801/dist/Release/include/nspr/prcpucfg.h
mv: cannot stat '/d/task_169832164303801/dist/Release/include/nspr/_winnt.cfg': No such file or directory

It looks like mv expects D:\task_...\dist\Release\include\... type paths instead of /d/task_.../dist/... (unlike nsinstall).

Try push: https://treeherder.mozilla.org/jobs?repo=nss-try&revision=1c2381ee291fc474127e97217fe3dd02979e2d99

Assignee: nobody → jcristau

Julien, are you running the gyp build script from NSS to build NSPR?
build.sh does build NSPR on linux/mac automatically, if there is WSL on windows, maybe using it to run build.sh will work ?

FYI to Kai about the NSPR part...

Flags: needinfo?(kaie)

(In reply to Benjamin Beurdouche [:beurdouche] from comment #2)

Julien, are you running the gyp build script from NSS to build NSPR?

I'm runing what your automation is set up to run (automation/taskcluster/windows/build_gyp.sh).

It looks like mv expects D:\task_...\dist\Release\include... type paths instead of /d/task_.../dist/...
I have the same problem, though, it seems nsinstall is installing under /c/c/, the correct dist folder has nothing for me.

Thanks lmulling. It's possible the same is happening for me and I just mis-read the log.

Assignee: jcristau → nobody
See Also: → 1833428

I'm not a good person to help with the build system issues.

Flags: needinfo?(kaie)

In my case, the error '.../_winnt.cfg': No such file or directory was due to mixing nsinstall from https://ftp.mozilla.org/pub/mozilla/libraries/win32/moztools-static.zip with the MSYS2 environment the Windows GitHub CI runner is otherwise using. Installing nsinstall via the MSYS2 pacman tool resolved this.

I'm still puzzled why the moztools version of nsinstall would fail to put the files in place without error...

Whiteboard: [nss-ci]

I'll also note that on other platforms (at least Linux and MacOS), nsinstall is built as part of NSPR so no separate install is required. But it's not built on Windows. Building nsinstall as part of NSPR on Windows would bypass the issue, too.

Presumably we could replace nsinstall.exe in https://hg.mozilla.org/mozilla-build/ with a version that works with msys2. Alex, is this something you can help with?

Flags: needinfo?(ahochheiden)

Is there any process/docs for updating moztools-static.zip? At first I thought it was part of https://ftp.mozilla.org/pub/mozilla/libraries/win32/src/, but it's just sitting at the top level, and I don't think I've ever interacted with it. Looking in my current mozilla-build-stage, it doesn't appear to be generated when creating a MozillaBuild installer either.

Either way, I should be able to do that once I get my access to gcloud sorted. It appears I have general access, but not to the specific mozilla-build directory.

What version of nsinstall.exe do you want there?

Flags: needinfo?(ahochheiden) → needinfo?(jcristau)

I don't know anything about moztools-static.zip, I was asking about MozillaBuild.

As an alternative :glandium pointed me at https://searchfox.org/mozilla-central/source/config/nsinstall.py, we could use something like that for nss instead of the MozillaBuild version.

Flags: needinfo?(jcristau)

That's doable. I'll update the nsinstall.exe that's bundled with MozillaBuild to the linked version and it'll be included in the next release.

I did have release in the works, but I can start over and include that and some other stuff now that I have access to write files to the MozillaBuild FTP again.

I can probably have the release ready to go within a week, but I'm hesitant to push it out the door then since I'll be on Holiday for a week afterwards. I'd say 2-3 weeks from now is when the new MozillaBuild (that has the updated nsinstaller.exe that you need) will be released.

Attachment #9368555 - Attachment description: Bug 1831552 - Update `nsinstaller.exe` to version `4.35-1` r?#build → Bug 1831552 - Update `nsinstall.exe` to version `4.35-1` r?#build

Pushed by ahochheiden@mozilla.com:
https://hg.mozilla.org/mozilla-build/rev/c97f43ffa08d
Update nsinstall.exe to version 4.35-1 r=firefox-build-system-reviewers,glandium

Status: NEW → RESOLVED
Closed: 10 months ago
Resolution: --- → FIXED
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
No longer blocks: 1869957
Depends on: 1869957

Can this be resolved now that MozillaBuild 4.1 has been released?

Flags: needinfo?(jcristau)
Assignee: nobody → ahochheiden

This bug is about updating the NSS windows workers in CI. A new MozillaBuild was probably a prerequisite, but there's more to this.

Flags: needinfo?(jcristau)

The worker pool nss-1/b-win2022-alpha is ready to test.

Flags: needinfo?(jcristau)
Depends on: 1880254
Depends on: 1880255
Depends on: 1880256

Thanks Jonathan, this is looking promising. I've filed a couple of bugs to track issues found so far.

Flags: needinfo?(jcristau)
Assignee: ahochheiden → nobody
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: