使用开源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 ...
随机推荐
- ElasticStack系列之七 & IK自动热更新原理与实现
一.热更新原理 elasticsearch开启加载外部词典功功能后,会每60s间隔进行刷新字典.具体原理代码如下所示: public void loadDic(HttpServletRequest r ...
- CF869 C 组合
先吐槽下,题面套的物语系列欸.. 由于距离为3,那么必定两种颜色间要填入第3种颜色,否则就是单独点的情况,那么两两之间可以单独考虑而不影响答案,枚举两种颜色之间边数,计算一边的组合和另一边的排列,最后 ...
- std::max 错误
Today I typed the following: int t = (std::max)(timeout, lagtime); Why did I put parentheses around ...
- 利用phpMyAdmin提权
利用phpMyAdmin提权 发表于 2016-03-31 | 分类于 phpMyAdmin | 暂无评论 | 9次阅读 爆路径 /phpmyadmin/libraries/lec ...
- 推荐一本springBoot学习书籍---深入浅出springBoot2.x
花了几周时间读完了这本书,确实是一本特别详细全面的书,而且不单单只是springBoot, 书中还介绍了许多工作中常用的技术与springBoot的整合使用,当然,也有一些小bug, 因为在代码实践过 ...
- 如何基于Spring Boot搭建一个完整的项目
前言 使用Spring Boot做后台项目开发也快半年了,由于之前有过基于Spring开发的项目经验,相比之下觉得Spring Boot就是天堂,开箱即用来形容是绝不为过的.在没有接触Spring B ...
- 数论-求n以内的质数
一.埃拉托斯特尼筛法 名字很高大上,然而并没有什么卵用…… 思路: 在把<=√n的质数所有的<=n的倍数剔除,剩下的就都是质数了,很容易理解…… 复杂度O(nloglogn) #inclu ...
- Add custom daemon on Linux System
Ubuntu add custom service(daemon) Task 需要在系统启动的时候自动启动一个服务(后台程序),在系统关闭的时候关闭服务. 比如在部署某个应用之前,需要将某个任务设置成 ...
- Monkeyrunner的相关总结
1.1 monkeyrunner API 主要包括三个模块1.MonkeyRunner:这个类提供了用于连接monkeyrunner和设备或模拟器的方法,它还提供了用于创建用户界面显示提供了方法.2 ...
- html- 头部元素
一:HTML <head> 元素 <head> 元素是所有头部元素的容器.<head> 内的元素可包含脚本,指示浏览器在何处可以找到样式表,提供元信息,等等. 以下 ...