当前位置: 代码迷 >> Web前端 >> webinstrano 六 添加部署模块的操作 自动化部署添加要点
  详细解决方案

webinstrano 六 添加部署模块的操作 自动化部署添加要点

热度:455   发布时间:2012-06-26 10:04:14.0
webinstrano 6 添加部署模块的操作 自动化部署添加要点

在加webistrano时要做的有如下几点:

1 ? 新建stage 参考:?webinstrano 添加部署模块的操作??

2 ? 加host,每个host填写一个ip信息,每个host,每个ip 一个记录,host_file_name 和 ip_list 都分别填写一个ip地址,只填写一个ip,

3 ? 选择recipes


4 ? 添加如下变量:根据应用类型增加相应变量配置

Git_path ? :应用的部署目录

servicename ? :windows服务名,应用为window的服务,

appserver_cmd ? ?: linux应用服务器的启动、关闭、重启的命令脚步路径,包含命令的完整路径 ,可以直接调用的完整路径

git_repopath (类似?/opt/gitroot/.....git ? ? 这个在进行git的相关操作时需要, ?GITpushproduct_togitserver和GITgetgitDirfromGitserver两个task需要这个变量 下面第六步会需要这两个task

等等变量


5 ? 执行备份进行验证,备份的任务是:backup_gitpath,这一步可以验证 部署目录 验证ssh是否通畅

6 ? 将生产应用的文件推送到git server (可选) 注意对应一致,应用 对应的目录 对应的git url

设置好git_repopath配置变量,参看上面第四步

第一台server 执行GITpushproduct_togitserver task ? 初始化git以及吧程序文件推送到git server,这样配管就可以从git server取内容了;如果失败,有可能是git server里配管已经推送了内容,所以需要git server对应的库要重新初始化,将原来的库改名,重新初始化

其他几台服务器执行? ?GITgetgitDirfromGitserver ? 吧第一台推送到git server的内容clone到临时目录并复制.git 目录到程序目录,完成除第一台服务器之外的其他服务器的git 初始化。这样应用所在地所有服务器的git就初始化好了

?7 ? 配管给tag好,执行上线操作(备份和git初始化都完成了

?