Я пытаюсь перезапустить службу Jenkins с помощью Ansible:
- 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
, что заставляет меня думать, что веб-сервер (полностью управляемый Дженкинсом) не был готов. Иногда, когда я захожу на панель инструментов Jenkins с помощью своего браузера, он говорит, что Jenkins не готов и что он перезагрузится, когда будет готов, и он работает нормально. Но я не уверен, что доступ к странице запускает сервер или что.
Итак, я думаю, что мне нужно много раз свернуться, пока код http не станет 200? Есть ли другой способ?
В любом случае, как мне это сделать?
Как вы обычно перезапускаете Дженкинса?