使用 'salt.module.tomcat' 部署 war 文件
Using 'salt.module.tomcat' for deploying war file
我正在尝试使用 salt 模块 tomcat.deploy_war
部署 war 文件,但出现以下错误... 'KeyError' 似乎无法识别 tomcat.deploy_war
说到 sls 文件,模块 file.managed
工作正常
看来我需要升级我的 salt master 和版本。
尝试做同样的事情,得到的回应是它已经升级了。
不确定是什么问题?
tomcat.deploy_war
是一个 执行模块 ,而不是 状态模块 。一般来说,像tomcat.deploy_war
这样的执行模块总是命令式命名的("deploy!","delete!","install!")。您不能直接在状态中使用执行模块;相反,它们旨在用于临时 Salt 命令,例如使用命令行语句快速部署 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 and the salt.states.tomcat
state module 的相应文档。
我正在尝试使用 salt 模块 tomcat.deploy_war
部署 war 文件,但出现以下错误... 'KeyError' 似乎无法识别 tomcat.deploy_war
说到 sls 文件,模块 file.managed
工作正常
看来我需要升级我的 salt master 和版本。 尝试做同样的事情,得到的回应是它已经升级了。
不确定是什么问题?
tomcat.deploy_war
是一个 执行模块 ,而不是 状态模块 。一般来说,像tomcat.deploy_war
这样的执行模块总是命令式命名的("deploy!","delete!","install!")。您不能直接在状态中使用执行模块;相反,它们旨在用于临时 Salt 命令,例如使用命令行语句快速部署 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 and the salt.states.tomcat
state module 的相应文档。