gpt4 book ai didi

azure-devops - 如何从 Azure DevOps CI 上的多个文件夹复制文件?

转载 作者:行者123 更新时间:2023-12-03 23:14:49 24 4
gpt4 key购买 nike

在 Azure DevOps CI 的 yaml 配置文件中,我有一个 CopyFiles@2 任务,以便为 PublishBuildArtifacts 暂存文件。我想 (1) 从我的源目录的根目录复制特定文件,以及 (2) 特定文件夹中的所有文件。我可以成功复制特定文件,但是当我为特定文件夹添加行时,它失败了。这是 yaml 片段:

- task: CopyFiles@2
inputs:
sourceFolder: $(Build.SourcesDirectory)
contents:
?(binclash.log|init-tools.log)
logs/**/*
targetFolder: $(Build.ArtifactStagingDirectory)

源的文件夹树如下所示:
<repo root>
`-- binclash.log
`-- init-tools.log
`-- logs
|-- debug
`-- release
`-- src
`-- ml.cs

如所列,这会报告找到零个文件。然而,
如果我删除 logs/**/*然后它成功找到并复制 binclash.log 和 init-tools.log。是否有一些与我缺少的引号或换行符相关的语法?

最佳答案

我有一个非常相似的问题,我想使用特定文件夹作为我的构建工件。

当您直接定位文件夹时:logs/**/* ,它返回 0 个结果。

而是尝试使用 **/logs/**
我已在下面更新了您的代码段:

- task: CopyFiles@2
inputs:
sourceFolder: $(Build.SourcesDirectory)
contents:
?(binclash.log|init-tools.log)
**/logs/**
targetFolder: $(Build.ArtifactStagingDirectory)

当我查看您的代码时,我注意到您可以简化为:
- task: CopyFiles@2
inputs:
contents: '**/logs/**/?(binclash.log|init-tools.log)'
TargetFolder: '$(Build.ArtifactStagingDirectory)'

关于azure-devops - 如何从 Azure DevOps CI 上的多个文件夹复制文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53163581/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com