在Jenkins Pipeline中,如何将工件从先前的版本复制到当前的版本?即使以前的构建失败,我也想这样做。
Stuart Rowe还在管道制作Sig
Gitter频道
上向我推荐了我查看“复制工件插件”的方法,但也给了我一些要使用的Jenkins
Pipeline语法
示例。
根据他给出的建议,我想到了一个更完整的Pipeline示例,该示例将工件从先前的构建复制到当前的构建中,而不管先前的构建是成功还是失败。
pipeline {
agent any;
stages {
stage("Zeroth stage") {
steps {
script {
if (currentBuild.previousBuild) {
try {
copyArtifacts(projectName: currentBuild.projectName,
selector: specific("${currentBuild.previousBuild.number}"))
def previousFile = readFile(file: "usefulfile.txt")
echo("The current build is ${currentBuild.number}")
echo("The previous build artifact was: ${previousFile}")
} catch(err) {
// ignore error
}
}
}
}
}
stage("First stage") {
steps {
echo("Hello")
writeFile(file: "usefulfile.txt", text: "This file ${env.BUILD_NUMBER} is useful, need to archive it.")
archiveArtifacts(artifacts: 'usefulfile.txt')
}
}
stage("Error") {
steps {
error("Failed")
}
}
}
}
问题内容: 我在Jenkinsfile中遇到Jenkins管道的问题。我的Jenkins实例上有4个不同的nodeJs版本。我想选择要在管道中使用的那个,但是官方插件示例(https://wiki.jenkins- ci.org/display/JENKINS/NodeJS+Plugin )根本不起作用。 我尝试了第一种方法,但由于$ PATH被该部分覆盖而失败。 我尝试了第二种方法,但失败了,因
我是詹金的新手,我在比特桶里有4个回购,比如甲、乙、丙、丁。我必须去拿甲、乙 在Jenkinsfile中添加了上面的脚本,我将其放在repo中。 现在,我已经创建了一个多分支管道来获取所有和分支内的源- 我在源代码管理方面创造了自由式的新工作- 任何帮助都很感激。
我试图使用Groovy管道脚本获取Jenkins构建的当前工作区: 它返回:
因为classbe依赖于cupergino_icons>=1.0.1需要SDK版本>=2.12.0-0<3.0.0,所以版本解决失败。在Classbe中运行“Flutter pub Get”...pub get失败(1;因为classbe依赖于cuperistino_icons>=1.0.1需要SDK版本>
我从Jenkins管道开始,我想从任何jenkins目录外部复制一些视频文件到我的作业工作区目录。我正在使用文件操作插件为我的其他作业执行一些文件操作。有了这个插件,我可以将文件从我的工作区内部复制到外部: 例如,通过这一步,我可以将位于我的工作区中的4个视频文件复制到位于另一个磁盘中的上述目录中。 但我想做相反的事。我想将视频文件从另一个磁盘的源目录复制到工作区。我尝试了几种方法,但似乎“inc
我正在尝试使用 Jenkinsfile 实现一个新的 Jenkins 管道。 GIT存储库并没有在每个分支上都有一个Jenkinsfile,只是在一个特定的分支下(因为我目前正在为一个遗留存储库构建CI)。 Jenkins管道是使用以下配置创建的: 丢弃旧版本(我不想手动清理) Bitbucket webhook trigger (on push event) 来自 SCM 的管道脚本 Bitbu