Сбой вместо предупреждения, когда не найдено ни одного хоста - PullRequest
0 голосов
/ 03 апреля 2020

когда у вас нет хостов в инвентаре, при запуске playbook появляется только предупреждение:

[WARNING]: provided hosts list is empty, only localhost is available. Note that the implicit localhost does not match 'all'

Есть ли способ сделать эту ошибку вместо Warning?

I узнайте, что этот параметр есть в ansible .cfg:

[inventory]
unparsed_is_failed = True

, но он вернет ошибку только тогда, когда нет файла инвентаря, который вы пытаетесь использовать. Он не смотрел на содержание.

1 Ответ

0 голосов
/ 03 апреля 2020

[ПРЕДУПРЕЖДЕНИЕ]: при условии, что список хостов пуст, доступен только локальный хост. Обратите внимание, что неявный localhost не соответствует 'all'

Q: "Есть ли способ сделать эту ошибку вместо Warning?"

A: Да. Это. Проверьте это в книге. Например,

- hosts: localhost
  tasks:
    - fail:
        msg: "[ERROR] Empty inventory. No host available."
      when: groups.all|length == 0

- hosts: all
  tasks:
    - debug:
        msg: Playbook started

дает с пустым инвентарем

роковым: [localhost]: FAILED! => {"updated": false, "msg": "[ОШИБКА] Пустой инвентарь. Нет доступного хоста."}

...