tar 在 Windows 代理上的 Azure Pipelines 中失败并显示 "Cannot connect to D: resolve failed"
tar in Azure Pipelines on Windows agent fails with "Cannot connect to D: resolve failed"
我对 Azure Pipelines 上的 Windows 代理(生成工作人员)收到的错误感到困惑。此任务失败:
- task: PowerShell@2
displayName: 'Unpack source tarball'
inputs:
targetType: 'inline'
script: |
Set-PSDebug -Trace 1
tar -zxf $(Pipeline.Workspace)\objconv-$(o.version).tar.gz
使用此输出:
DEBUG: 3+ >>>> tar -zxf D:\a\objconv-2.51.tar.gz
tar (child): Cannot connect to D: resolve failed
gzip: stdin: unexpected end of file
/usr/bin/tar: Child returned status 128
/usr/bin/tar: Error is not recoverable: exiting now
"D:\a" 是 $(Pipeline.Workspace) 变量的扩展。我怀疑某种 Unix 软件未完全移植到 Windows 的问题,因为 tar 似乎将自己标识为“/usr/bin/tar” 而不是,我不知道, "C:\Windows\PowerShell-Components\tar.exe", 但除此之外我一无所获。
"Cannot connect to D: resolve failed" 到底是什么意思,我该如何解决这个任务?
(完整的 azure-pipelines.yml 在此处可见:https://bitbucket.org/elwoz/objconv/src/trunk/azure-pipelines.yml )
我建议使用 Extract Files 任务而不是自己动手。我希望您看到 tar
期望 Unix 样式路径但无法处理 Windows 样式路径的问题。
我对 Azure Pipelines 上的 Windows 代理(生成工作人员)收到的错误感到困惑。此任务失败:
- task: PowerShell@2
displayName: 'Unpack source tarball'
inputs:
targetType: 'inline'
script: |
Set-PSDebug -Trace 1
tar -zxf $(Pipeline.Workspace)\objconv-$(o.version).tar.gz
使用此输出:
DEBUG: 3+ >>>> tar -zxf D:\a\objconv-2.51.tar.gz
tar (child): Cannot connect to D: resolve failed
gzip: stdin: unexpected end of file
/usr/bin/tar: Child returned status 128
/usr/bin/tar: Error is not recoverable: exiting now
"D:\a" 是 $(Pipeline.Workspace) 变量的扩展。我怀疑某种 Unix 软件未完全移植到 Windows 的问题,因为 tar 似乎将自己标识为“/usr/bin/tar” 而不是,我不知道, "C:\Windows\PowerShell-Components\tar.exe", 但除此之外我一无所获。
"Cannot connect to D: resolve failed" 到底是什么意思,我该如何解决这个任务?
(完整的 azure-pipelines.yml 在此处可见:https://bitbucket.org/elwoz/objconv/src/trunk/azure-pipelines.yml )
我建议使用 Extract Files 任务而不是自己动手。我希望您看到 tar
期望 Unix 样式路径但无法处理 Windows 样式路径的问题。