【发布时间】:2021-05-29 16:58:58
【问题描述】:
我有一个 Azure DevOps GIT 存储库,其中包含三种不同类型的项目。结构如下;
我有一个构建管道(经典,而不是 YAML)来仅构建 .Net Core 项目,如下所示。
管道设置指向仅考虑 NetCoreProject。恢复、构建和测试任务成功执行。但是,当涉及到“发布”任务时,管道会失败,因为它会考虑整个存储库(所有项目)而不仅仅是 NetCoreProject。
失败的实际原因是在 NetCPPProject 文件夹中有一些没有任何扩展名的文件(makefile、快捷方式文件等),发布任务无法识别这些文件并且失败并出现以下错误。
##[error]Error: Failed find: ENOENT: no such file or directory, stat 'D:\a\1\s\NetCPPProject\inc'
注意:inc 是一个快捷方式文件(没有任何扩展名),它必须存在于文件夹中。
我尝试了以下方法,但没有成功;
- 添加了 .artifactignore 以忽略其他文件夹,但 .Net Core 的“发布”任务似乎没有考虑这一点。
- 尝试指定发布任务的参数以仅考虑 NetCoreProject .sln 文件和 .csproj 文件,但问题仍然出现并显示相同的错误消息。
- 通过命令行任务再次确认文件存在于 Build.SourceDirectory 中。
问题是,如何使 .Net Core 'Publish' 任务排除 NetCPPProject 而只考虑 NetCoreProject?
【问题讨论】:
标签: .net-core azure-devops azure-pipelines azure-pipelines-build-task azure-devops-pipelines