使用开源my-deploy工具实现开发环境的代码自动化部署
@编者按:
由于公司内部存在的开发系统:内网开发--外网预发布--外网生产环境,程序员频繁的更新代码造成运维人员大量时间被占用,于是有了使用该开源工具的部署测试环节。在这里感谢该开源工具的作者,也希望我这边文档能多少帮助需要类似开发环境的技术人员。
1.部署:
开源项目地址:https://github.com/kelvv/my-deploy
操作视频教程:http://v.youku.com/v_show/id_XMTYxMjc0ODg3Mg==.html
基础环境:node 4.X.X以上版本
git 2.7.4及以上版本
安装:$ npm install -g my-deploy
2.配置:
创建配置文件
cd /data/test #进入到管理项目目录
mydeploy init #创建配置文件.mydeploy.json
clone代码到本地:
cd /data/test
git clone git@gitlab.apicloud.com:swht/test.git .
配置文件: (注意:配置文件需要使用644权限)
{
"mode": "pullwatch",
"url": "git@gitlab.apicloud.com:swht/test.git",
"localdir": "/data/test",
"interval": 3000,
"branch": "dev",
"hook": {
"postchanged": "pm2 reload test"
},
"rules": [
{
"type": "commit",
"value": "^Reload"
}
]
}
说明:mode--模式,分为pullwatch、webhook两种模式
url--管理项目仓库地址:一般存放在github、gitlab或自建gitlab仓库中
localdir--本地管理项目路径;
interval--时间间隔,指mydeploy间隔多少时间去检测git仓库是否有更新,默认3000ms,建议内部开发服务器上使用pullwatch模式,主动隔一段时间去git pull最新代码;
branch--分支,指开发代码库的分支,建议分为几个分支:dev--pre--master。如果内部开发人员较多,可以创建自己的分支,由专门的代码审查人员进行分支合并;
hook--代码更新完之后需要执行的系统命令,借用pm2进行项目重启操作;
rules--检测更新的规则,即根据git提交的类型(commit、tags)、注释信息进行更新;
备注:mydeploy start -c /data/test/.mydeploy.json -p 3110 自定义启动方式,-c 指定配置文件的路径,-p指定监听的端口
mydeploy start #启动默认的监听端口为3100
使用开源my-deploy工具实现开发环境的代码自动化部署的更多相关文章
- 全球第一免费开源ERP Odoo Ubuntu最佳开发环境独家首发分享
起源 近年来随着国内的互联网经济的快速腾飞,诞生了很多开源软件创造的市场价值以及企业价值神话,特别是对于企业ERP领域,一直以来都是高昂的国内外产品充实,国内的中小成长型企业越来越需要一套好看又能打, ...
- windows Android开发环境快速搭建和部署
windows安装Android的开发环境相对来说比较简单,本文写给第一次想在自己Windows上建立Android开发环境的朋友们,为了确保大家能顺利完成开发环境的搭建,文章写的尽量详细,希望对初级 ...
- 【Linux 操作系统】阿里云服务器 操作实战 部署C语言开发环境(vim配置,gcc) 部署J2EE网站(jdk,tomcat)
. 作者 :万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/18964835 . 博客总结 : 设置SecureCRT ...
- openstack开发环境与代码测试
一.openstack单组件开发环境 1.Python虚拟环境搭建 主要参考文献: https://virtualenv.pypa.io/en/latest/virtualenv.html 说明:Py ...
- 阿里云服务器 操作实战 部署C语言开发环境(vim配置,gcc) 部署J2EE网站(jdk,tomcat)
. 作者 :万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/18964835 . 博客总结 : 设置SecureCRT ...
- NetCore2.2开发环境搭建和2008R2部署环境搭建
开发环境: 开发工具:VS2017 系统:Win10 64位 Skd下载地址: https://dotnet.microsoft.com/download 3个都下载下载,安装dotnet-sdk-2 ...
- 最新 obs-studio vs2019 开发环境搭建 代码编译
距离上一篇文章很久了,重新开始记录 OBS 开发相关情况,第一步就是环境搭建,第二步是构建 OBS-Studio VS 2019 开发环境搭建 下载软件和资源 软件安装没有特别说明的,下载安装即可. ...
- windows下vue+webpack前端开发环境搭建及nginx部署
一.开发环境搭建 1.前端框架一般都依赖nodejs,我们首先要安装node.js.请参考http://www.cnblogs.com/wuac/p/6381819.html. 2.由于许多npm的源 ...
- ae(ArcEngine) java swing开发入门系列(1):开发环境和代码部署
前言:做ae开发大部分人都是用C#版,很少用到java版,本系列文章主要介绍java版ae开发的入门,对于ae接口的高级应用,可以看C#版相关文章 开发环境软件: Intellij IDEA 2018 ...
随机推荐
- string 中的一些优化事项
1.1 fmt vs "+" (无转义) import ( "testing" "fmt" ) var ( str = "he ...
- UIViewController的初始化
UIViewController的初始化一般有两个: -(instancetype)init; -(instancetype)initWithNibName:(NSString *)nibNameOr ...
- 转:苹果Xcode帮助文档阅读指南
一直想写这么一个东西,长期以来我发现很多初学者的问题在于不掌握学习的方法,所以,Xcode那么好的SDK文档摆在那里,对他们也起不到什么太大的作用.从论坛.微博等等地方看到的初学者提出的问题,也暴露出 ...
- 科学计算三维可视化---Mlab基础(常用控制函数)
- SQL语句(十六)实现集合运算、对数据修改、数据表复制
(一).集合运算(交.并.补) --(1)Union 并运算 select Sname from Student UNION select Tname From Teacher --(2)INTERS ...
- NGINX配置详解及应用
目录 NGINX 1 1.1 目录结构 1 1.2 基础配置 1 1.3 location 5 1.4 虚拟主机 5 1.5 状态模块 ...
- Error: Target id is not valid ABIs: no ABIs 解决方法
问题展示: 没有ABI(Application Binary Interface)应用程序二进制接口 解决方法: 因为Android4.0以上版本Android SDK 初始安装时是不带ABIs的, ...
- 读懂复杂C声明的黄金法则
在网上遇见felix,他让我读 http://www.felix021.com/blog/read.php?2072,读完之后觉得收获很大,需要练习一下. 黄金法则:从声明的变量开始,先向右看,再向左 ...
- 【AtCoder】ARC067 F - Yakiniku Restaurants 单调栈+矩阵差分
[题目]F - Yakiniku Restaurants [题意]给定n和m,有n个饭店和m张票,给出Ai表示从饭店i到i+1的距离,给出矩阵B(i,j)表示在第i家饭店使用票j的收益,求任选起点和终 ...
- Vue的生命周期的介绍
[推荐链接] https://segmentfault.com/a/1190000008010666