首页 > 解决方案 > Azure 发布管道在路径中找不到工件

问题描述

我有一个构建和发布路径来构建一些 jar 文件并将它们部署到我的天蓝色云订阅/资源组。我已经为此工作了一段时间,它一直在失败并且很绝望。

这是我的构建管道,特别是发布工件任务(我知道我必须使用 PublishPipelineArtifact 而不是 PublishBuildArtifact,因为它是当前的首选选项,尽管只要我标记我的 jar,构建应该也可以工作)

- task: PublishPipelineArtifact@1
  inputs:
    targetPath: $(Pipeline.Workspace)/
    artifactName: 'drop'
    artifactType: 'pipeline'

我在我的 PublishArtifact 日志中看到我的文件正在从以下位置读取:/home/vsts/work/1/s 不幸的是,没有出现复制到哪里的信息

在此处输入图像描述

如果我单击创建的工件,我可以看到它们被移到了

https://dev.azure.com/MyOrg/MyProject/_build/results?buildId=XXXXX&view=artifacts&pathAsName=false&type=publishedArtifacts

更具体地说,在我理解的 drop/s 下是 stagering 目录

到目前为止,一切都很好。我的项目建立在 drop 上,我可以看到我的罐子。

然后去发布管道部署到云端的时候

在此处输入图像描述

任务已运行,这是我从构建复制到发布的复制任务

在此处输入图像描述

但最后它失败了,因为在下载明显没有问题的工件后它说它找不到它,即使在发布管道 UI 的任务管理器中我也可以手动选择 jar 文件,如图 2 所示。

似乎是复制到发布分支的问题,或者被正确复制它无法读取它

在此处输入图像描述

似乎是路径系统变量之间的不匹配,甚至是斜线,因为我正在将 jar 从 linux 构建管道复制到似乎是 Windows NFTS 路径。这太可怕了。我已经被困了一段时间,我已经尝试了所有想到的。有人可以告诉我为什么工件似乎下载得很好,但很遗憾找不到 jar 文件吗?随时纠正您认为我的帖子中存在的任何其他误解。非常感谢!

标签: azureazure-devopsazure-functions

解决方案


推荐阅读