Вы можете использовать интерфейс для проверки соли , чтобы выполнить пробный пуск на всех миньонах, установив параметр test=True
в состояние вместе с - флагом retcode-passthrough , который будет exit with the salt call retcode and not the salt binary retcode
, и проверьте код возврата, который возвращается, чтобы проверить, будет ли состояние успешно отображаться, то есть
salt-call state.sls teststate test=True --retcode-passthrough; echo $?
напечатает ненулевой код выхода, если какое-либо состояние окажется неудачным.
Чтобы получить список миньонов, вы можете просмотреть /etc/salt/pki/master/minions
(Вы также можете установить test
на true
по умолчанию в файле конфигурации minion, тогда состояния по умолчанию будут выполняться в тестовом режиме.)
2-й подход может быть установка Failhard global опция в вашем мастере, которая немедленно остановит выполнение всех состояний и выдаст ошибку. Вы можете запустить его так же, как описано выше, в этом случае выполнение прекратится сразу после первого сбоя, и у вас будет свой код возврата.
Возможно, вы захотите взглянуть и на кухонную соль ,
Цель этой кухонной соли - облегчить тестирование солевых состояний.
или формулы независимо от производственной среды. Это позволяет
делать быстрые проверки состояний и убедиться, что изменения в
пакеты не влияют на развертывание. Используя платформы, пользователи могут
проводить проверки своих состояний относительно среды, в которой они работают
производство, а также проверка будущих выпусков дистрибутивов перед
делать серьезные обновления. Также можно протестировать солевые состояния против
несколько версий Salt, чтобы убедиться в отсутствии серьезных регрессий.
Я также хотел бы отметить, что у соли еще нет надлежащих кодов выхода, и по этому вопросу еще много вопросов, открытых до сих пор . Если вы хотите проверить вывод вручную, вы можете использовать этот скрипт на питоне , который упоминается в Отслеживать сбой команды на Соли миньоне