CICD流程图
代码管理仓库gitlab
- gitlab是个私有的代码管理仓库, 可以运行在企业内部的网络中, 使企业开发人员可以保持代码的私有性; 同时也方便自行管理代码; gitlab有很多CI功能, 但是通常还是采用Jenkins, 原因就是Jenkins的功能要更加强大
gitlab部署:
1.下载epel源
yum -y install epel-release
2.配置yum源
vim /etc/yum.repos.d/gitlab-ce.repo
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1
3.更新本地yum缓存
yum makecache
4.安装GitLab社区版
yum install gitlab-ce #自动安装最新版本(若需安装指定版本,则添加版本号即可,即yum install gitlab-ce-x.x.x)
5.自定义域名
vim /etc/gitlab/gitlab.rb
external_url ‘http://gitlab.wxy.com’ -->> 更改为自定义域名
6.初始化gitlab
gitlab-ctl reconfigure #初始化时间较长
…
…
…
Running handlers:
Running handlers complete
Chef Client finished, 543/1455 resources updated in 02 minutes 57 seconds
gitlab Reconfigured!
打开浏览器访问 http://gitlab.wxy.com
gitlab控制命令
修改配置后生效操作 gitlab-ctl reconfigure
查看gitlab服务状态 gitlab-ctl status
开启/关闭/重启服务 gitlab-ctl start/stop/restart
查看gitlab日志 gitlab-ctl tail [component]
初始化后需要修改密码 root登陆
持续集成工具Jenkins
1.jenkins功能
- 持续的软件版本发布/测试项目
- 监控外部调用执行的工作
2.jenkins概念
- Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台。这是一个免费的开源项目,可以处理任何类型的构建或持续集成。集成Jenkins可以用于一些测试和部署技术。Jenkins是一种软件允许持续集成
3.jenkins目地
- 持续、自动地构建/测试软件项目。
- 监控软件开放流程,快速问题定位及处理,提提高开发效率。
4.jenkins特性
- 开源的java语言开发持续集成工具,支持CI,CD。
- 易于安装部署配置:可通过yum安装,或下载war包以及通过docker容器等快速实现安装部署,可方便web界面配置管理。
- 消息通知及测试报告:集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知,生成JUnit/TestNG测试报告。
- 分布式构建:支持Jenkins能够让多台计算机一起构建/测试。
- 文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。
- 丰富的插件支持:支持扩展插件,你可以开发适合自己团队使用的工具,如git,svn,maven,docker等。
5.产品发布流程
- 产品设计成型 -> 开发人员开发代码 -> 测试人员测试功能 -> 运维人员发布上线
- 持续集成&#x