Task does not behave correctly when behind a proxy configuration, would love if this could be resolved per MS guidelines. Big thanks for all your hard work:
https://github.com/microsoft/azure-pipelines-task-lib/blob/master/node/docs/proxy.md
2023-01-12T16:22:56.0545966Z ##[section]Starting: Install Coverlet Global Tool
2023-01-12T16:22:56.0802891Z ==============================================================================
2023-01-12T16:22:56.0803332Z Task : .NET Core Global Tool Installer
2023-01-12T16:22:56.0803691Z Description : Installs a .NET Core Global Tool. Uses dotnet cli internally.
2023-01-12T16:22:56.0803986Z Version : 0.2.1
2023-01-12T16:22:56.0804226Z Author : Arne Petersen
2023-01-12T16:22:56.0804427Z Help :
2023-01-12T16:22:56.0804752Z ==============================================================================
2023-01-12T16:22:57.6123959Z { RequestError: Error: unable to verify the first certificate
2023-01-12T16:22:57.6125588Z at new RequestError (D:\devOpsAgent2\_work\_tasks\DotnetGlobalToolInstaller_58967a6f-2cc7-4a67-ba48-6595739428c2\0.2.1\node_modules\request-promise-core\lib\errors.js:14:15)
2023-01-12T16:22:57.6127979Z at Request.plumbing.callback (D:\devOpsAgent2\_work\_tasks\DotnetGlobalToolInstaller_58967a6f-2cc7-4a67-ba48-6595739428c2\0.2.1\node_modules\request-promise-core\lib\plumbing.js:87:29)
2023-01-12T16:22:57.6164174Z ##[error]Error: unable to verify the first certificate
2023-01-12T16:22:57.6176937Z at Request.RP$callback [as _callback] (D:\devOpsAgent2\_work\_tasks\DotnetGlobalToolInstaller_58967a6f-2cc7-4a67-ba48-6595739428c2\0.2.1\node_modules\request-promise-core\lib\plumbing.js:46:31)
2023-01-12T16:22:57.6180812Z at self.callback (D:\devOpsAgent2\_work\_tasks\DotnetGlobalToolInstaller_58967a6f-2cc7-4a67-ba48-6595739428c2\0.2.1\node_modules\request\request.js:185:22)
2023-01-12T16:22:57.6181979Z at Request.emit (events.js:198:13)
2023-01-12T16:22:57.6182946Z at Request.onRequestError (D:\devOpsAgent2\_work\_tasks\DotnetGlobalToolInstaller_58967a6f-2cc7-4a67-ba48-6595739428c2\0.2.1\node_modules\request\request.js:881:8)
2023-01-12T16:22:57.6183895Z at ClientRequest.emit (events.js:198:13)
2023-01-12T16:22:57.6184571Z at TLSSocket.socketErrorListener (_http_client.js:401:9)
2023-01-12T16:22:57.6185259Z at TLSSocket.emit (events.js:198:13)
2023-01-12T16:22:57.6185880Z at emitErrorNT (internal/streams/destroy.js:91:8)
2023-01-12T16:22:57.6191307Z at emitErrorAndCloseNT (internal/streams/destroy.js:59:3)
2023-01-12T16:22:57.6192081Z at process._tickCallback (internal/process/next_tick.js:63:19)
2023-01-12T16:22:57.6192680Z name: 'RequestError',
2023-01-12T16:22:57.6193279Z message: 'Error: unable to verify the first certificate',
2023-01-12T16:22:57.6195494Z cause:
2023-01-12T16:22:57.6196054Z { Error: unable to verify the first certificate
2023-01-12T16:22:57.6199489Z at TLSSocket.onConnectSecure (_tls_wrap.js:1088:34)
2023-01-12T16:22:57.6203530Z at TLSSocket.emit (events.js:198:13)
2023-01-12T16:22:57.6204937Z at TLSSocket._finishInit (_tls_wrap.js:666:8) code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE' },
2023-01-12T16:22:57.6205801Z error:
2023-01-12T16:22:57.6206379Z { Error: unable to verify the first certificate
2023-01-12T16:22:57.6207042Z at TLSSocket.onConnectSecure (_tls_wrap.js:1088:34)
2023-01-12T16:22:57.6207717Z at TLSSocket.emit (events.js:198:13)
2023-01-12T16:22:57.6208466Z at TLSSocket._finishInit (_tls_wrap.js:666:8) code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE' },
2023-01-12T16:22:57.6209099Z options:
2023-01-12T16:22:57.6209573Z { json: true,
2023-01-12T16:22:57.6210005Z uri:
2023-01-12T16:22:57.6210647Z 'https://api-v2v3search-0.nuget.org/query?q=coverlet.console&prerelease=false&semVerLevel=2.0.0',
2023-01-12T16:22:57.6211400Z callback: [Function: RP$callback],
2023-01-12T16:22:57.6217742Z transform: undefined,
2023-01-12T16:22:57.6228871Z simple: true,
2023-01-12T16:22:57.6229529Z resolveWithFullResponse: false,
2023-01-12T16:22:57.6230103Z transform2xxOnly: false },
2023-01-12T16:22:57.6230586Z response: undefined }
2023-01-12T16:22:57.6255973Z ##[section]Finishing: Install Coverlet Global Tool
Not a JavaScript/TypeScript developer but a semi-pseudo code suggestion:
// Use tl.ProxyConfiguration to pass in a "networkProxy.proxyUrl" through request options
var res = await request(`https://api-v2v3search-0.nuget.org/query?q=${encodeURIComponent(name)}&prerelease=${includePrerelease ? "true" : "false"}&semVerLevel=2.0.0`, { json: true, proxy: networkProxy.proxyUrl });
Task does not behave correctly when behind a proxy configuration, would love if this could be resolved per MS guidelines. Big thanks for all your hard work:
https://github.com/microsoft/azure-pipelines-task-lib/blob/master/node/docs/proxy.md
Not a JavaScript/TypeScript developer but a semi-pseudo code suggestion: