一、gitlab安装配置部分
yum install gitlab-ce-11.0.1-ce.0.el6.x86_64.rpm -y
gitlab-ctl start # 启动所有 gitlab 组件
vim /etc/gitlab/gitlab.rb
gitlab-ctl reconfigure # 启动服务
登录GitLab
1、在浏览器的地址栏中输入ECS服务器的公网IP即可登录GitLab的界面,第一次登录时它会让你设置密码
2、首次登录会强制用户修改密码。密码修改成功后,输入新密码进行登录
安装Git工具linux:安装Git,使用自带的源安装
yum install git -y
2、生成密钥文件:使用ssh-keygen生成密钥文件.ssh/id_rsa.pub
查看密钥文件
3.在GitLab的主页中新建一个Project
4.添加ssh key导入步骤2中生成的密钥文件内容:
ssh key添加完成:
项目地址,该地址在进行clone操作时需要用到:点击project,搜索之前创的test,选择ssh
就可以看见了
1、配置使用Git仓库的人员姓名
[root@server1 ~]# git config --global user.name "xbw"
2、配置使用Git仓库的人员email
[root@server1 ~]# git config --global user.email "632265088@qq.com"
3、克隆项目,在本地生成同名目录,并且目录中会有所有的项目文件
[root@foundation70 ~]# git clone git@172.25.70.1:root/test.git
Cloning into 'test'...
warning: You appear to have cloned an empty repository.
上传文件
[root@server1 ~]# cd test/
##进入到项目目录
[root@server1 test]# echo "test" > /root/readme.md
##创建需要上传到GitLab中的目标文件
[root@server1 test]# cp /root/readme.md ./
##将目标文件或者目录拷贝到项目目录下
[root@server1 test]# git status
##查看状态
[root@server1 test]# git add readme.md
##将test.sh文件加入到索引中
[root@server1 test]# git commit -m "readme.md"
##将test.sh提交到本地仓库
[root@server1 test]# git push origin master
##将文件同步到GitLab服务器上
7、在网页中查看上传的readme.md文件已经同步到GitLab中
二、jenkins安装配置
开一个虚拟机server2,ip为172.25.70.2
rpm -ivh jdk-8u171-linux-x64.rpm jenkins-2.121.3-1.1.noarch.rpm
在浏览器访问172.25.3.2:8080默认端口是8080:
密码为:
cat /var/lib/jenkins/secrets/initialAdminPassword
选择安装推荐的插件
进入安装
创建管理员用户
创建一个任务,选择自由风格
点击源码管理,点击小钥时,添加凭据
类型为:ssh的
里面的key,为之前做ssh-keygen时的私钥,全部复制进去
url为之前在gitlab做ssh时的url即:
完成配置
构建触发器,每分钟触发
构建,选择shell方式
任务完成
点进去#1任务,点击控制台输出
再创建一个xbw.txt文件,再上传
[root@foundation70 test]# vim xbw.txt
[root@foundation70 test]# git add xbw.txt
[root@foundation70 test]# git commit -m "add xbw.txt"
[root@foundation70 test]# git push origin master
在testjob里可以看见,已构建成功
查看其控制台输出:发现xbw.txt被列出来了
即时更新的配置
点击系统管理,再点击管理插件
点击管理插件后,点击可选插件,搜寻如下两个插件,进行安装
安装完成,点击返回首页
点击进入testjob工程,点击配置
构建触发器选择如下:
点击下面的高级选项,获取token:
切到gitlab的设置页面,选择设置里面的,interations,填写上面获取的url和token:
点击下面的提交后,会报错:
点击右上角的人头,在个人设置里获取个人token,这里的名字可以任意起
获取成功:
在shell里执行下面的命令,token为刚获取的那个
[root@server2 ~]# curl -X PUT --header "PRIVATE-TOKEN: P3sApW4Ug4srRPsvn34r" 'http://172.25.70.1/api/v4/application/settings?allow_local_requests_from_hooks_and_services=true'
再次切到gitlab的设置页面,选择设置里面的,interations,填写上面获取的url和token,成功
再点击右下角的test测试,选择push event,执行后会显示成功:
在jenkins上查看,任务,成功完成
测试:
在shell里,建立两个txt文件并上传
[root@foundation70 test]# vim haha.txt
[root@foundation70 test]# vim lala.txt
[root@foundation70 test]# git add haha.txt
[root@foundation70 test]# git add lala.txt
[root@foundation70 test]# git commit -m "add haha.txt"
###提交
[root@foundation70 test]# git commit -m "add lala.txt"
##上传成功
[root@foundation70 test]# git push origin master
###上传到master分支
在jenkins服务器查看,#4任务已完成
查看控制输出台,两个文件已列出