2016-04-02 4 views
1

Я пытаюсь развернуть военный файл, используя модуль соли tomcat.deploy_war но получить следующее сообщение об ошибке ... «KeyError» кажется, что он не признает tomcat.deploy_warИспользование «salt.module.tomcat» для развертывания войны файл

enter image description here

Говоря СЛС файла, модуль file.managed работал отлично

enter image description here

Похоже, мне нужно будет обновить мой мастер соли и ве rsion. Пробовал делать то же самое, получил ответ, что он уже обновлен.

Не знаете, в чем проблема?

enter image description here

ответ

3

tomcat.deploy_war является модулем исполнения, не модуля состояния а. В общем случае исполняемые модули, такие как tomcat.deploy_war, всегда называются императивно («развернуть!», «удалить!», «установить!»). Вы не можете напрямую использовать исполняемые модули в состояниях; вместо этого, они предназначены для использования в командах Солевые одноранговых, например, чтобы быстро развернуть файл WAR с помощью командной строки заявление:

salt 'tomcatminion' tomcat.deploy_war salt://path/to/app.war 

С другой стороны государственных модулей предназначены для использования в состояниях и объявляются декларативно (по желаемому состоянию окончания). Во многих случаях, модуль выполнения имеет соответствующий модуль состояния - в вашем случае tomcat.deploy_war и tomcat.war_deployed (или pkg.install и pkg.installed и так далее):

sample.war: 
    tomcat.war_deployed: 
    - war: salt://path/to/app.war 

Смотрите соответствующие документации для salt.modules.tomcat execution module и salt.states.tomcat state module.

+0

Благодаря она работала, перед другой вопрос ... ID: deploy_war Функция: tomcat.war_deployed Имя:/заказ-менеджмент Результат: Ложные Комментарий: FAIL - не может кэшировать файл WAR – Lav