11、gitlab和Jenkins整合(2)
5、补充:
(1)构建说明:
1)Jenkins会基于一些处理器任务后,构建发布一个稳健指数 (从0-100 ),这些任务一般以插件的方式实现。
2)它们可能包括单元测试(JUnit)、覆盖率(Cobertura )和静态代码分析(FindBugs)。
3)分数越高,表明构建越稳定。下图中分级符号概述了稳定性的评分范围。任何构建作业的状态(总分100)低于80分就是不稳定的。
(2)按不同的版本构建代码:
1)在gitlab代码库上由管理员规定项目master库代码的版本并打tag(使用开发权限也可以打标签);
2)配置版本参数:
3)构建:
(3)定时构建代码:
(4)规范化构建时执行的脚本:
1)创建脚本:
mkdir -p /data/scripts
vim /data/scripts/deploy.sh
#!/bin/sh
ip=$1
host=$2
rsync -raz --delete --progress * root@${ip}:/data/www/${host}/
#此脚本执行的目录是/var/lib/jenkins/workspace/<构建工程名称>
chmod +x /data/scripts/deploy.sh
ln -s /data/scripts/deploy.sh /usr/bin/deploy.sh
2)构建配置:
(5)jenkins集群:
1)前提条件:
A、
jenkins主服务器和需要添加的从服务器之间ssh秘钥已经验证:
ssh-copy-id -i ~/.ssh/id_dsa.pub root@172.16.1.90
如果从服务器需要ssh发布到web服务器也需要做秘钥认证;
B、在从服务器上设置了jenkins的工作目录:
mkdir -p /data/jenkins/
C、在从服务器上安装jdk的环境:
yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel
D、在gitlab上应该配置为当前从服务器的公钥,不然无法下载代码到从服务器的/data/jenkins/workspace/目录下;
E、构建工程执行的shell脚本、git、maven环境需要在从服务器上做相应的配置:
列如:
mkdir -p /data/scripts
vim /data/scripts/deploy.sh
#!/bin/sh
ip=$1
host=$2
rsync -raz --delete --progress * root@${ip}:/data/www/${host}/
#此脚本执行的目录是/var/lib/jenkins/workspace/<构建工程名称>
chmod +x /data/scripts/deploy.sh
ln -s /data/scripts/deploy.sh /usr/bin/deploy.sh
F、jenkins集群使用的场景:
ISO构建、adnroid构建、windows项目构建、大规模高并发任务构建、特定环境构建;
G:小结:jenkins新节点使用的是主节点的配置,只不过是利用的是从节点的系统资源,所以相应的编译环境等需要设置;
2)在全局安全配置中开启agents:
3)配置节点:
A、添加登录从服务器凭据:
B、
C、
D、启动并查看节点状态:
4)在构建工程中指定构建运行的节点:
5)进行构建;
(6)jenkins用户角色配置:
需要安装role-based authorization strategy插件;
1)添加新的用户:
根据上面创建用户的例子,再创建一个java用户;
2)开启用户角色配置选项:
此时系统管理中会多一个Manage and Assign Roles模块;
3)设置manager角色:
说明:全局角色和项目角色是相互叠加的;以上角色定义了用户可以只能看到自己构建的工程,也可以构建新的工程;
4)把用户添加到角色中:
5)验证:
A、root用户登录:
B、java用户登录:
C、php用户登录:
6)补充:
在全局安全模块中配置ldap:
提示:
liunx下的用户搜索过滤器配置为:uid={0}
windows下的用户搜索过滤器配置为:sAMAccountName={0}
(7)jenkins项目邮件发送:
1)jenkins邮件全局配置:
配置的详细内容见:"10、Jenkins配置——4、配置邮箱:"
2)在构建的项目中配置:
A、
B、
3)构建项目:
4)查看邮件:
11、gitlab和Jenkins整合(2)的更多相关文章
- 11、gitlab和Jenkins整合(1)
1.在jenkins上安装git: 因为jenkins需要在gitlab上拉取代码: 具体的git安装,参考"4.git和gitlab的配置--4.2.git编译安装:": 2.在 ...
- [原创]CI持续集成系统环境--Gitlab+Gerrit+Jenkins完整对接
近年来,由于开源项目.社区的活跃热度大增,进而引来持续集成(CI)系统的诞生,也越发的听到更多的人在说协同开发.敏捷开发.迭代开发.持续集成和单元测试这些拉风的术语.然而,大都是仅仅听到在说而已,国内 ...
- CI持续集成系统环境--Gitlab+Gerrit+Jenkins完整对接
原文地址https://www.cnblogs.com/kevingrace/p/5651447.html 近年来,由于开源项目.社区的活跃热度大增,进而引来持续集成(CI)系统的诞生,也越发的听到更 ...
- Gitlab+Gerrit+Jenkins完整对接
近年来,由于开源项目.社区的活跃热度大增,进而引来持续集成(CI)系统的诞生,也越发的听到更多的人在说协同开发.敏捷开发.迭代开发.持续集成和单元测试这些拉风的术语.然而,大都是仅仅听到在说而已,国内 ...
- gitlab+gerrit+jenkins持续集成框架
1.持续集成之gitlab+gerrit+jenkins 1.1. GitLab 1.1.1. 简介 GitLab 是一个使用使用Ruby on Rails搭建的,用于仓库管理系统的开源项目.使用Gi ...
- gitlab与jenkins的自动化部署(通过webhook与ansilble)
gitlab与jenkins的自动化部署(通过webhook与ansilble) 1.部署介绍 gitlab服务器:192.168.1.49:80jenkins服务器:192.168.1.49:818 ...
- gitlab 与 jenkins 关联
一.搭建 gitlab :https://www.cnblogs.com/carriezhangyan/p/10729158.html 二.搭建jenkins :https://www.cnblogs ...
- 持续集成之④:GitLab触发jenkins构建项目
持续集成之④:GitLab触发jenkins构建项目 一:目的为在公司的测试环境当中一旦开发向gitlab仓库提交成功代码,gitlab通知jenkins进行构建项目.代码质量测试然后部署至测试环境, ...
- django之创建第11个项目-页面整合
目的:将如下众多html页面整合到一个index.html页面中. 百度云盘:django之创建第11个项目-页面整合 用下面的方式实现: <!DOCTYPE html> <head ...
随机推荐
- 利用rsync备份生产应用(二)
概述 上节主要是针对rsync服务端进行的配置和详解,本节主要针对在客户端上的rsync配置进行讲解. rsync用法 本地到本地 语法:rsync [OPTION...] SRC... [DEST] ...
- 单臂路由实现不同vlan间通信
单臂路由实现不同vlan间通信 拓扑图 PC配置 PC1 :192.168.1.1 vlan10 192.168.1.254 PC2 :192.168.2.1 vlan20 192.168.2.254 ...
- 1.5 RPM红帽软件包1.6 Yum软件仓库
1.5 RPM红帽软件包 在RPM(红帽软件包管理器)公布之前,要想在Linux系统中安装软件只能采取源码包的方式安装.早期在Linux系统中安装程序是一件非常困难.耗费耐心的事情,而且大多数的服务程 ...
- [转发]PotPlayer 无损截取视频片段
PotPlayer 无损截取视频片段 2019-03-29 21:04:21 ForeverStrong 阅读数 2928 收藏 更多 分类专栏: 视频图像编辑 PotPlayer 无损截取视频 ...
- Docker 的神秘世界
引言 上图就是 Docker 网站的首页,看了这简短的解释,相信你还是不知道它是何方神圣. 讲个故事 为了更好的理解 Docker 是什么,先来讲个故事: 我需要盖一个房子,于是我搬石头.砍木头.画图 ...
- STM32——EEPROM使用——(转载)
一.I2C接口读写EEPROM(AT24C02) --主模式,分别用作主发送器和主接收器.通过查询事件的方式来确保正常通信. 1.I 2C接口初始化 与其他对GPIO 复用的外设一样,它先调用了用户函 ...
- 【转】Jquery 使用Ajax获取后台返回的Json数据后,页面处理
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- SPI认识
SPI分为好几种模式 不同模式下 读取数据时 SCK线的状态不一样 STM32硬件SPI 有16BIT 8BIT的两种模式 既 收发都是8或16bit SPI缺少响应反馈机制 无法知道 ...
- 备份分区,备份文件切割保存 dd
cd /tmp wget dl.fedoraproject.org/pub/epel/6/x86_64/dcfldd-1.3.4.1-4.el6.x86_64.rpm sudo yum install ...
- 标准Gitlab命令行操作指导
gitlab是一个分布式的版本仓库,总比只是一个本地手动好些,上传你的本地代码后后还能web GUI操作,何乐不为? 贴上刚刚搭建的gitlab,看看git 如何操作标准命令行操作指导 1.命令行操作 ...