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
しかし、最初の実行で、3 番目のタスクはこれを含む多くの Java エラーをスローします:Suppressed: java.io.IOException: Server returned HTTP response code: 503 for URL
これは、Web サーバー (Jenkins によって完全に処理される) の準備ができていないと思わせます。ブラウザーを使用して Jenkins ダッシュボードにアクセスすると、Jenkins の準備ができておらず、準備ができたらリロードするというメッセージが表示されることがありますが、問題なく動作します。しかし、ページにアクセスすることがサーバーを起動するのか、それとも何なのかはわかりません。
だから私が必要なのは、httpコードが200になるまで何度もカールすることだと思いますか? 他に方法はありますか?
いずれにせよ、どうすればいいですか?
通常、ジェンキンスをどのように再起動しますか?