Todo
- BUILD-2932: notary service dll support
Description
Rollback electron-winstaller
to 2.5.1
for now. Don't upgrade until BUILD-2932 is done.
- Fixes COMPASS-4127
- Answers BUILD-10250
Notes
Evergreen windows builds started failing with the electron 6 update:
[2020/01/31 12:47:29.021] × Error: Error: Failed with exit code: 4294967295
--
[2020/01/31 12:47:29.021] Output:
[2020/01/31 12:47:29.021] System.AggregateException: One or more errors occurred. ---> System.Exception: Failed to sign, command invoked was: '.\signtool.exe sign yes C:\Users\mci-exec\AppData\Local\SquirrelTemp\tempa\lib\net45\ffmpeg.dll'
[2020/01/31 12:47:29.021] at Squirrel.Update.Program.<signPEFile>d__17.MoveNext()
Normally, Failed with exit code: 4294967295
means the signtool.exe notary service client is getting a 500 service error due to an outage.
However, all other OS were signing with no issues see BUILD-10250.
cd /cygdrive/z/data/mci/src/dist/MongoDBCompassDev-win32-x64;
$ ../../signtool.exe sign yes ffmpeg.dll
2020/02/03 16:34:55 Signing service didn't return a permalink
$ ../../signtool.exe sign yes libEGL.dll
2020/02/03 16:35:14 Signing service didn't return a permalink
$ ../../signtool.exe sign yes MongoDBCompassDev.exe
Worked
$ ../../signtool.exe sign yes Squirrel.exe
Worked
So, it can't be a service issue and must be something related to the changes to hadron-build
for COMPASS-3933 electron 6 support.
Only a handful of commits and e3ff85c9303bc43e56976226d10d6b9897324b66
electron-winstaller
was upgraded from 2.5.1
to 4.0.0
. This changed the effective version of the Squirrel.Windows framework electron uses for win32 auto-update:
electron-winstaller@2.5.1.
➡️ squirrel.windows@1.5.1electron-winstaller@>=3.0.0
➡️ squirrel.windows@1.9.1
In electron-winstaller@2.5.2
➡️ squirrel.windows@1.5.2:
Releasify now disallows non-Semver versions
While using non-Semver versions in your NuGet package was always incorrect and resulted in undefined behavior, due to #868, these are now a full non-starter. We now require packages to have Semver-compatible versions names. Note that this doesn't affect your EXE versions, which can still use all four Win32 version numbers.
Bug Fixes
- Allow uppercase characters in SemVer versions (#924, thanks)
- Sign DLL and .node files during Releasify
- Ensure that Stub Executables pass along their parameters to the target
And now the facepalm moment; BUILD-2932 (created in 2017) as the notary service doesn't support dll signing the way we need it to.