Skip to content

Download Artifact task failing in getBuildApi with tunnel error #331

@vladnega

Description

@vladnega

Environment

Node version: 10.13.0
Npm version: N/A
OS and version: Windows Server 2016 Standard
azure-devops-node-api version: 7.2.0

Issue Description

When running a YAML pipeline, it always fails at the Download Artifact task from the deployment stage. Here is a link:
https://dev.azure.com/lloydslondon/Lloyds/_build/results?buildId=5669&view=logs&j=22e8b1b6-9aa9-5014-5ac4-2849544435ca&t=d7adc642-3bc9-5b30-700a-e6d1dc3c194b&l=136

Here are some truncated logs:


...

##[debug]Agent.ProxyUrl=http://proxy.***.net:8080 |  
##[debug]Agent.ProxyUsername=DOMAINNAME\user_name |  
##[debug]Agent.ProxyPassword=*** |  
##[debug]Agent.ProxyBypassList=undefined

...

TUNNEL: making CONNECT request |  
  | Error: in getBuildApi, so retrying => retries pending  : 4 |  
  | TUNNEL: tunneling socket could not be established, cause=socket hang up |  
  | Error: socket hang up |  
  | at createHangUpError (_http_client.js:253:15) |  
  | at Socket.socketOnEnd (_http_client.js:345:23) |  
  | at emitNone (events.js:91:20) |  
  | at Socket.emit (events.js:185:7) |  
  | at endReadableNT (_stream_readable.js:974:12) |  
  | at _combinedTickCallback (internal/process/next_tick.js:80:11) |  
  | at process._tickCallback (internal/process/next_tick.js:104:9)

...

##[error]Error: tunneling socket could not be established, cause=socket hang up

I have already posted this issue on the azure-pipelines-tasks repo, but the fix is actually about this repo: microsoft/azure-pipelines-tasks#10835.

I already have the fix. The issue is because of the old version your are using for the tunnel dependency. If you upgrade to version 0.0.6, it will work. This is because a bug fix has been released since version 0.0.4 which solves this issue.
I will create a pull request shortly with the fix.

Expected behaviour

The artifacts should be downloaded successfully.

Actual behaviour

An error is thrown during the Download Artifact task in the Azure Pipeline, pointing to the getBuildApi function, which sits in this repo, under the WebApi.ts file.

Steps to reproduce

This can be reproduced only by running Azure YAML Pipelines using privately hosted agents under a proxy.

Logs

I can provide the full log file via email if necessary.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions