我需要在我们的Jenkins实例上进行一些配置更改,这将涉及几次重启Jenkins。但是,我们的开发人员所做的承诺足够频繁,以至于三天之内我都没有看到詹金斯没有工作。
是否有本机方式(通过GUI或通过命令行)安全重启Jenkins?IE:等待当前作业完成再下降,并跟踪Jenkins重新启动后开始排队的作业。
我知道有一个插件,但是要安装它,我需要重启Jenkins ...
我需要在我们的Jenkins实例上进行一些配置更改,这将涉及几次重启Jenkins。但是,我们的开发人员所做的承诺足够频繁,以至于三天之内我都没有看到詹金斯没有工作。
是否有本机方式(通过GUI或通过命令行)安全重启Jenkins?IE:等待当前作业完成再下降,并跟踪Jenkins重新启动后开始排队的作业。
我知道有一个插件,但是要安装它,我需要重启Jenkins ...
Answers:
如果导航到,$YOUR_JENKINS_URL/updateCenter/
您应该看到以下页面:
在这里您可以检查Restart Jenkins when installation is complete and no jobs are running
哪个应该比较安全。
/safeRestart
和/restart
端点。
IE: wait for current jobs to finish before going down, and keep track of queued jobs to start once Jenkins comes back up.
,这就是您选中该框时发生的情况。
Jenkins without jobs running in three days
-这意味着会有影响,因为一些工作将被延迟。但是,总比失去工作更好。
在等待作业停止然后重新启动时,访问https:// youjenkinsdomain / safeRestart会将其设置为模式。
您可以使用Jenkins Rest API([jenkins_url] / safeRestart)执行safeRestart命令,也可以通过Jenkins CLI执行该命令。
sudo /etc/init.d/jenkins safeRestart
运行CLI命令
通用语法如下(设计类似于svn / git之类的工具):
java -jar jenkins-cli.jar [-s JENKINS_URL]命令[选项...] [参数...]
可以通过环境变量$ JENKINS_URL指定JENKINS_URL。当Jenkins在构建期间派生一个进程时,将自动设置此环境变量,这使您可以从构建内部使用Jenkins CLI,而无需显式配置URL。
注意:运行safeRestart命令时,设置为在重新启动期间执行的所有作业都将排队,并在服务器恢复联机时执行。确保重启后不会造成任何冲突!
我认为这是许多人试图解决的实际问题。有时最好在安装插件后重新启动Jenkins。根据我的经验,我可以提供的建议之一是:
我知道这需要人工和协调。但这到目前为止在我们的项目中效果很好,一提到就没什么害处。
在进行管道作业的情况下,访问“ https:// jenkins / safeRestart ”不会等待“作业/构建”完全完成。
似乎要等待步骤完成并执行jenkins重新启动,然后在jenkins再次出现后继续执行pipline。