这个state使用manager webapp管理Apache tomcat webapps。这个state需要启用manager webapp
以下grains/pillar需要设置:
tomcat-manager:user: admin user name
tomcat-manager:passwd: password
另外需要配置一个用户在conf/tomcat-users.xml文件:
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="manager-script"/>
<user username="tomcat" password="tomcat" roles="manager-script"/>
</tomcat-users>
注意:
不支持多个版本在同样的context路径
只能通过localhost进入manager,更多信息:http://tomcat.apache.org/tomcat-7.0-doc/manager-howto.html#Configuring_Manager_Application_Access
测试:
Sun Microsystems Inc.
1.6.0_43-b01
amd64
Linux
2.6.32-358.el6.x86_64
Apache Tomcat/7.0.37
salt.states.tomcat.
mod_watch
(name, url='http://localhost:8080/manager', timeout=180)¶tomcat监视功能。当调用时会重新加载webapp
salt.states.tomcat.
undeployed
(name, url='http://localhost:8080/manager', timeout=180)¶强制WAR从服务器上卸载
部署的context路径
服务器manager webapp的URL
tomcat manager的HTTP请求超时时间
范例:
jenkins:
tomcat.undeployed:
- name: /ran
- require:
- service: application-service
salt.states.tomcat.
wait
(name, url='http://localhost:8080/manager', timeout=180)¶等待tomcat manager加载
请注意,如果tomcat没有运行,我们不会等待它启动,并且该state将会失败。这个state可以被tomcat.war _deployed state请求以确保tomcat是运行状态,并且manager也是运行状态,做好部署的准备
服务器manager webapp的URL
tomcat manager的HTTP请求超时时间
范例:
tomcat-service:
service.running:
- name: tomcat
- enable: True
wait-for-tomcatmanager:
tomcat.wait:
- timeout: 300
- require:
- service: tomcat-service
jenkins:
tomcat.war_deployed:
- name: /ran
- war: salt://jenkins-1.2.4.war
- require:
- tomcat: wait-for-tomcatmanager
salt.states.tomcat.
war_deployed
(name, war, force=False, url='http://localhost:8080/manager', timeout=180, temp_war_location=None, version='')¶强制在context路径中的WAR在部署和启动时会使用WAR版本号
部署的context路径
WAR文件的绝对路径(tomcat运行账户应该可进入)或者一个被salt.modules.cp.get_url功能支持的路径
强制部署,即使版本号是一样的。默认值为 False。
服务器manager webapp的URL
tomcat manager的HTTP请求超时时间
使用另外一个位置临时复制war包文件默认使用系统临时目录
Specify the war version. If this argument is provided, it overrides the version encoded in the war file name, if one is present.
2015.8.6 新版功能.
范例:
jenkins:
tomcat.war_deployed:
- name: /ran
- war: salt://jenkins-1.2.4.war
- require:
- service: application-service