我所说的“完全相同”是指脚本是相同的,但是脚本控制台和管道之间的DSL是不同的。例如,在脚本控制台中,我使用
println“deployscript.sh
而在管道中,我使用
pipeline {
agent {
node 'mynode'
}
stages {
/*other stages commented out for testing*/
stage('Deploy') {
steps {
script {
sh 'deployscript.sh <args>'
}
}
}
}
}
发现问题了。它隐藏在一些低级Jenkins文档中,但Jenkins构建有一个默认行为,即杀死由构建产生的任何进程。这证实了Jenkins是罪魁祸首,构建确实正确运行。它只是在建造完成后被杀死。
修复方法是将BUILD_ID环境变量(管道的JENKINS_NODE_COOKIE,就像我的情况一样)的值设置为“DontKillMe”。
例如:
pipeline {
agent { /*set agent*/ }
environment {
JENKINS_NODE_COOKIE="dontKillMe"
}
stages { /*set build stages*/ }
}
我想知道是否可以从Jenkins脚本控制台模拟管道插件操作。例如,Slack插件用于使用以下命令通过管道作业发送通知: slackSend(颜色:颜色代码,消息:摘要) 我想尝试到处玩,看看对象和属性。我很确定从Jenkins脚本控制台使用groovy是可能的。
这个问题似乎被问了多次,但所有答案都与Jenkins Pipeline jobs(插件:workflow job)有关。 我正在将一堆旧的自由式作业从旧的Jenkins独立服务器迁移到分布式Jenkinsenv,我决定将它们转换为Jenkins管道作业(不能使用Blue Ocean,因为SCM是SVN。 无论如何,对于某些作业来说,不希望清理它们的工作空间,因为它们是某种健全/验证作业,而且因为S
从jenkins脚本控制台,我如何启动一个工作的构建? 尝试过: 错误:groovy.lang.MisSingMEDORDION:没有方法的签名:hudson.model.FreeStyleProject.startBuild()适用于参数类型:()值:[]
我需要从Jenkins作业中获取脚本路径。 请查看下面的屏幕截图,以便更清楚地了解需求。 我已经登录谷歌,获取了一些Groovy控制台脚本,其中列出了每个作业的详细信息。 通过使用jenkins.model.Jenkins.getJobNames()方法,我能够得到Jenkins中的所有作业,但实际上需要的是获得Scriptpath值,在每个作业中提到。 哪个Jenkins类/方法可以提供这些细节
我打开了开发人员控制台,查看了脚本,看看发生了什么,我看到它显示了所有内容,我的数据库名称,我正在访问的集合等等。 就像我说的,我是新来的,所以也许我错过了什么。
我为这个问题搜索了很多,但在任何地方都找不到可行的解决方案。有人能帮我吗?我想通过jenkins脚本控制台获取现有的环境变量值。