1. 安装salt-master和salt-minion
安装过程不再赘述,请参考http://docs.saltstack.com/en/latest/topics/installation/index.html
2. 安装salt-api,cherrypy
用来jenkins与salt通信
启用salt-api
在salt master的配置文件中添加
rest_cherrypy:
port: 8010
host: master ipaddress
disable_ssl: True
external_auth:
pam:
saltuser:
- .*
- '@runner'
- '@wheel'
这里使用了linux的系统账户做验证,添加账户 saltuser
3. 部署jenkins
下载 http://mirrors.jenkins-ci.org/war/latest/jenkins.war
配置java环境
下载tomcat,把jenkins.war重命名为ROOT.war,放到tomcat的webapps目录
给jenkins添加salt api扩展
wget http://updates.jenkins-ci.org/latest/saltstack.hpi
把下载的hpi文件放到tomcat的jenkins目录
tomcat/webapps/ROOT/WEB-INF/plugins
启动tomcat
4. 配置jenkins
登陆验证配置:系统管理-Configure Global Security
执行命令请参考官方说明 https://wiki.jenkins-ci.org/display/JENKINS/saltstack-plugin
下面说下执行脚本
新建--item名称 此处自定义
选择 “构建一个自由风格的软件项目”
选择 “参数化构建过程" 这里可以传参数给shell脚本
构建选择 ”salt“
上面演示了给脚本传参数的方法,在脚本里可以用$1,$2来获取参数
如果想直接调用salt-api,请参考
http://salt-api.readthedocs.org/en/latest/index.html
http://docs.saltstack.com/en/latest/ref/clients/index.html#python-api