如何使用DevOps开源利器开发部署Hygieia平台
这篇“如何使用DevOps开源利器开发部署Hygieia平台”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何使用DevOps开源利器开发部署Hygieia平台”文章吧。
Hygieia是什么?
Capitalone(全美十大银行之一)开源的DevOps利器。使用Hygieia后,在整个软件开发周期中,用户可以选择VersionOne或Jira进行用户故事的追踪,选择Subversion或GitHub作为代码仓库,选择Jenkins或Hudson进行构建,选择Selenium和SonarQube用于质量检测,以及选择uDeploy或Jenkins进行部署等等,当然Hygieia不止这点,它的api基于rest风格插件设计,其他的一些软件工程组件可以很轻松的接入到Hygieia,他的dashboard大盘可以展示软件创建到交付的整个生命周期数据。
项目地址:https://github.com/capitalone/Hygieia
Hygieia架构图
如架构图,Hygieia主要由三大部分组成,【api模块】,【连接器模块(插件模块)】,【大盘模块(ui模块)】,UI和api是前后端分离的架构,可以单独打包不熟运行
Hygieia开发用到技术栈
Hygieia主要java开发的,使用了spring boot框架,前端使用angular.js开发,阅读实践本文,你需要了解如下相关技术栈:
前端相关:node、npm、bower、gulp
后端相关:java、spring boot、maven
数据库:mongoDB
其中数所有的据都是存储在mongoDB中
Hygieia项目运行部署
前提是已经有,java 、maven、node、mongoDB的环境了,这些环境的搭建不在本篇范围内
启动api模块
项目下载下来后,先mvn install root模块,有些查询对象使用了maven插件编译生成的,所以必须先编译
在Hygieia\api\class="lazy" data-src\main\resources\application.properties中配置你的mongDB连接信息,基本不用动了,server.port先别改,默认使用8080
运行Hygieia\api\class="lazy" data-src\main\java\com\capitalone\dashboard\Application.java中的mian方法启动服务
启动UI模块
进入Hygieia\UI目录下,
执行 npm install ,bower install ,这个过程会比较长
待所有依赖都下载完成后,执行gulp serve启动UI模块,默认端口:3000
UI模块不配置访问api接口地址,默认范围本地8080端口,所以刚刚的api模块不建议改端口,当然也可以在gulpfile.js的config中配置
以上步骤没有问题的话,浏览器会跳出http://localhost:3000/#/,界面如下图,代表已经成功了
启动插件模块
以scm插件gitlib为例,Hygieia支持的插件很多
至Hygieia\collectors\scm\gitlab\class="lazy" data-src\main\resources 目录下新增文件application.properties,配置内容如下
gitlab.host=git.yudianbank.com
gitlab.port=80
gitlab.cron=0/10 * * * * ? #多久同步一次gitlib数据
gitlab.protocol=http
gitlab.apiVersion=3
gitlab.firstRunHistoryDays=200
注意gitlab.apiVersion版本的差异,gitlib api的接口会不一样
运行
Hygieia\collectors\scm\gitlab\class="lazy" data-src\main\java\com\capitalone\dashboard\Application.java中的mian方法启动服务
测试gitlib插件
按如下图例操作,最后可看到软件提交的生命周期
以上就是关于“如何使用DevOps开源利器开发部署Hygieia平台”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341