【问题标题】:How do you copy project files into build folder post-build in azure devops pipeline?如何在 azure devops 管道中将项目文件复制到构建文件夹中?
【发布时间】:2020-05-28 18:39:20
【问题描述】:

我们设置了一个带有“Visual Studio 构建”步骤的构建管道。我只需要将其中一个项目文件复制到构建文件夹中,然后再将其发布到我们的服务器。尝试复制 .runsettings 项目文件以进行单元测试。 到目前为止,我已经尝试在其属性中将文件设置为“复制到输出目录”,我尝试在构建后事件命令行中同时使用 copy 和 xcopy,并在 xml csproj 项目中尝试了几种不同的语法文件。一切似乎在本地运行良好的东西,都不会通过 azure 做任何事情。我的大脑已经彻底崩溃了!

任何帮助将不胜感激!

编辑: 这是复制设置的样子:

我按照建议在内容中尝试了这个以及 ***.runsettings。

这是我上次尝试复制的日志

2020-05-29T20:07:01.3481827Z ##[section]开始:将.runsettings复制到:E:\Backend_work\116\a 2020-05-29T20:07:01.3669241Z ======================================= ======================================= 2020-05-29T20:07:01.3669530Z 任务:复制文件 2020-05-29T20:07:01.3669781Z 描述:使用匹配文件路径(不是文件夹路径)的模式将文件从源文件夹复制到目标文件夹 2020-05-29T20:07:01.3670032Z 版本:2.164.1 2020-05-29T20:07:01.3670179Z 作者:微软公司 2020-05-29T20:07:01.3670406Z 帮助:https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/copy-files 2020-05-29T20:07:01.3670656Z ======================================= ======================================= 2020-05-29T20:07:01.9575993Z 找到 1 个文件 2020-05-29T20:07:01.9583367Z 将 E:\Backend_work\116\s\UnitTests.runsettings 复制到 E:\Backend_work\116\a.runsettings 2020-05-29T20:07:01.9674455Z ##[section]完成:将.runsettings复制到:E:\Backend_work\116\a

【问题讨论】:

  • 在管道中使用构建后事件时是否出现任何错误?请检查构建日志,看看是否有任何有用的信息。
  • 复制 E:\_work\77\s\UnitTests\.runsettings E:\_work\77\s\UnitTests\..\VerificationTool\bin\Release\ 1 个文件已复制。但是文件不在那里。发布构建工件后,构建文件夹不包含该文件。

标签: build azure-devops copy post-build


【解决方案1】:

我已经使用以下构建后事件命令行进行了测试,它按预期复制了管道中的文件:

copy "$(ProjectDir)Settings1.runsettings" "$(SolutionDir)TestCaseProject\bin\$(ConfigurationName)\*"

管道日志:

这里包括使用输入图片描述,也可以尝试在Pipeline中添加Copy files任务复制文件:

【讨论】:

  • 这两个解决方案都声明文件已复制到日志中,但它们从未将其放入构建目录。我将管道任务设置为复制到 $(build.artifactstagingdirectory),并尝试将构建后事件设置为复制到 $(ProjectDir)$(OutDir)。他们都表示成功,但文件没有被复制。
  • 您使用 Microsoft 托管代理还是自托管代理?您是否指定了正确的位置?请在您的原始帖子中添加整个日志。
  • 我不知道。我相信我的源位置正确,输出只是“$(build.artifactstagingdirectory)”。我实际上不知道我可以发布多少日志。我的工作非常关注安全性。不过,我会用更多信息更新原始帖子。
  • 日志显示将文件从“E:\Backend_work\116\s\UnitTests\.runsettings 复制到 E:\Backend_work\116\a\.runsettings”。请转到构建代理并检查文件是否存在。并分享publish artifact 任务日志。
猜你喜欢
  • 1970-01-01
  • 2020-11-10
  • 1970-01-01
  • 2020-11-02
  • 2021-11-05
  • 1970-01-01
  • 2021-07-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多