Skip to content

Get proxy configuration by using AZURE-DEVOPS-TASK-LIB method #10

@Kevinf63

Description

@Kevinf63

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 });

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions