私は Electron アプリを構築しており、npm パッケージ electron-builder を使用して Windows 用のアプリとインストーラーを構築しています。CSC_LINK
ここで説明されているように、環境変数とCSC_KEY_PASSWORD
環境変数を使用してアプリに署名しようとしています: https://github.com/electron-userland/electron-builder#travis-appveyor-and-other-ci-servers
最初に試してみると、エラーとスタック トレースは次のようになります。
Unhandled rejection Error: unable to verify the first certificate
at Error (native)
at TLSSocket.<anonymous> (_tls_wrap.js:1065:38)
at emitNone (events.js:80:13)
at TLSSocket.emit (events.js:179:7)
at TLSSocket._init.ssl.onclienthello.ssl.oncertcb.TLSSocket._finishInit (_tls_wrap.js:593:8)
at TLSWrap.ssl.onclienthello.ssl.oncertcb.ssl.onnewsession.ssl.onhandshakedone (_tls_wrap.js:425:38)
From previous event:
at Object.downloadCertificate (C:\projects\presentation\Electron\node_modules\electron-builder\src\codeSign.ts:97:18)
...
次に、環境変数NODE_TLS_REJECT_UNAUTHORIZED=0
を設定しようとしましたが、別のエラーが発生しました。
Unhandled rejection Error: Request error, status 400: Bad Request
at ClientRequest.<anonymous> (C:\projects\presentation\Electron\node_modules\electron-builder\src\httpRequest.ts:36:16)
...
electron-builder で呼び出されている特定の行は、httpRequest.ts
Node の https モジュールを使用しているように見えます: https.request(...)
https://github.com/electron-userland/electron-builder/blob/master/src/httpRequest.ts#L28
これにより、Windows マシンまたは証明書に問題があると思われます。これを Windows 10、ノード 5.9.0 で実行しています。