我正在尝试使用 Ansible 重新启动 Jenkins 服务:
- name: Restart Jenkins to make the plugin data available
service: name=jenkins state=restarted
- name: Wait for Jenkins to restart
wait_for:
host=localhost
port=8080
delay=20
timeout=300
- name: Install Jenkins plugins
command:
java -jar {{ jenkins_cli_jar }} -s {{ jenkins_dashboard_url }} install-plugin {{ item }}
creates=/var/lib/jenkins/plugins/{{ item }}.jpi
with_items: jenkins_plugins
但是在第一次运行时,第三个任务抛出了很多 Java 错误,包括:Suppressed: java.io.IOException: Server returned HTTP response code: 503 for URL
,这让我觉得 Web 服务器(完全由 Jenkins 处理)还没有准备好。有时,当我使用浏览器访问 Jenkins 仪表板时,它会说 Jenkins 尚未准备好,并且会在准备好时重新加载,并且确实可以正常工作。但我不确定访问页面是启动服务器的原因,还是什么。
所以我想我需要多次卷曲直到http代码为200?还有其他方法吗?
无论哪种方式,我该怎么做?
你通常如何重启 Jenkins?