【发布时间】:2017-06-09 22:37:01
【问题描述】:
我的 jenkins 作业在工作空间内创建了一个临时子文件夹,例如“mydir”,然后我想使用构建后步骤“存档工件”进行存档。
我正在使用以下命令:
mydir/**/*
效果很好但存档将始终包含 mydir 作为工件的根,而我只想拥有此文件夹的 内容。
如何做到这一点?
【问题讨论】:
标签: recursion jenkins directory artifacts
我的 jenkins 作业在工作空间内创建了一个临时子文件夹,例如“mydir”,然后我想使用构建后步骤“存档工件”进行存档。
我正在使用以下命令:
mydir/**/*
效果很好但存档将始终包含 mydir 作为工件的根,而我只想拥有此文件夹的 内容。
如何做到这一点?
【问题讨论】:
标签: recursion jenkins directory artifacts
在 jenkins 中归档你的整个文件夹。
在你的情况下,让我们说。如果你想归档完整的“mydir”文件夹
**/my_dir/**
这是一种方式。如果您有其他同名文件夹。然后你也可以提供适当的父目录。
【讨论】:
您可以使用dir() 从所需目录中归档工件:
stage('Archive') {
steps {
dir('mydir') {
archiveArtifacts artifacts: '**'
}
}
}
https://jenkins.io/doc/pipeline/steps/workflow-basic-steps/#dir-change-current-directory
【讨论】:
在这种情况下,我所做的是为我感兴趣的目录创建一个压缩文件(tar 或 zip),然后将其构建为整个目录。如果你的 slave 在 linux 上运行,你可以这样做:
tar -czvf name-of-archive.tar.gz /path/of/build/directory
然后artifact name-of-archive.tar.gz
【讨论】:
您可以在插件的设置中勾选“展平目录”选项
【讨论】:
Copy Artifact插件