我使用ubundu作为jenkins服务器的主机并将windows机器配置为从机。我试图将一个文件从一个文件存储到另一个文件,但它并没有被安置。
node('slave') {
node('master'){
stash includes: "file.tgz" name: "master-stash"
}
unstash "master-stash"
bat "ls"
}
输出:
[Pipeline] node
Running on master in /var/lib/jenkins/workspace/testing
[Pipeline] {
[Pipeline] stash
Stashed 1 file(s)
[Pipeline] }
[Pipeline] // node
[Pipeline] unstash
该文件可以从主文件中隐藏,但它不会在从属工作区中释放。
詹金斯:2.35答案 0 :(得分:1)
我认为你应该使用:
dir('path to file'){
stash name: 'my_stash' includes:'file.something'
}
unstash name:'my_stash'
sh 'ls'
我在2.47版本使用Jenkins,它对我有用。这里有一件事是,如果你包含" rootFolder / file.tgz",你的unstash将为你提供文件的完整路径。如果您只想获取文件并将其放在当前目录中,则应使用:
sh'ls .'
CREATE FUNCTION [CurrentYearStart]()
RETURNS DATETIME
AS
BEGIN
DECLARE @Date DATETIME;
SELECT top 1 @Date = StartPeriod
FROM SystemPeriods WITH (NOLOCK);
RETURN @Date;
END
的输出会显示你" file.something"以及您取消暂停的文件夹中的其他文件。
答案 1 :(得分:-1)
我通过在存储包含中添加根文件夹解决了存储和解除问题的问题。我不知道为什么它不会释放单个文件,但它可以用文件解压缩根文件夹。
node('slave') {
node('master'){
stash includes: "rootFolder/file.tgz" name: "master-stash"
}
unstash "master-stash"
bat "ls"
}
unstash文件可以从当前工作空间的rootFolder / file.tgz获取。