Gitlab+Jenkins学习之路
Git安装
下载git,gitlab,jenins
编译安装git
安装依赖包:
yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
查看最新的git版本 https://www.kernel.org/pub/software/scm/git/
cd /usr/local/src/
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.9.5.tar.xz
tar -vxf git-2.9.5.tar.xz
cd git-2.9.5
make prefix=/usr/local/git all
make prefix=/usr/local/git install
rm -rf /usr/bin/git
ln -s /usr/local/git/bin/git /usr/bin/git
git --version
git version 2.9.5
Gitlab安装
下载地址 https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
安装依赖
yum install -y curl policycoreutils policycoreutils-python openssh-server openssh-clients
systemctl start postfix
安装gitlab
sudo rpm -ivh gitlab-ce-12.2.4-ce.0.el7.x86_64.rpm
修改gitlab配置
vim /etc/gitlab/gitlab.rb
#修改为你的ip地址 external_url 'http://10.0.0.202:8081'
#重载配置文件
gitlab-ctl reconfigure
关闭防火墙
#停止防火墙
systemctl stop firewalld.service
#禁止开机启动
systemctl disable firewalld.service
#查看防火墙状态
firewall-cmd --state
Gitlab汉化
克隆版本库
我的gitlab是12.2.4,所以汉化也得12.2.4
cd /usr/local/src/
git clone -b 12-2-stable-zh https://gitlab.com/xhang/gitlab.git
获取当前Gitlab版本
gitlab_version=$(cat /opt/gitlab/embedded/service/gitlab-rails/VERSION)
比较汉化标签和原标签,导出patch用的diff文件
cd /usr/local/src/gitlab
git diff v${gitlab_version} v${gitlab_version}-zh > ../${gitlab_version}-zh.diff
先停止gitlab
gitlab-ctl stop
导入汉化补丁
patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < ../${gitlab_version}-zh.diff
PS:-bash: patch: 未找到命令
yum -y install patch
PS:如果出现类似以下内容,则按住回车,一直跳过就行了
can't find file to patch at input line 5
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff --git a/app/assets/javascripts/awards_handler.js b/app/assets/javascripts/awards_handler.js
|index eb0f06e..73e4833 100644
|--- a/app/assets/javascripts/awards_handler.js
|+++ b/app/assets/javascripts/awards_handler.js
--------------------------
File to patch:
然后启动gitlab
gitlab-ctl start
语言设置
很多文章没说这点,被坑的死去活来,以为汉化不完全
右上角 > Settings > Preferences > Language > 简体中文
Linux搭建jenkins
(1)安装JDK
yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
安装之前可以查看下可装版本
yum --showduplicate list java*
(2)下载jenkins的rpm包
查看下最新版本,https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/
cd /usr/local/src/
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.176.3-1.1.noarch.rpm
(3)安装jenkins
rpm -ivh jenkins-2.176.3-1.1.noarch.rpm
(4)启动jenkins!
java -jar /usr/lib/jenkins/jenkins.war --httpPort=8083
也可以配置里面修改端口
vim /etc/sysconfig/jenkins
启动service jenkins start
重启service jenkins restart
停止service jenkins stop
先选择语音包和gitlab插件、Locale插件
汉化不完全的情况
- 将语言设定为zh_US,Jenkins切换为英文。
- 调用restart重启Jenkins:http://域名/restart。
- 再次语言设定为zh_CN,刷新即可。
构建一个自由风格的php-deploy
Gernal配置,丢弃旧的构建,防止jenkins构建较多之后变臃肿
源码管理:这里使用git插件,也可以使用svn插件
jenkins服务器上生成SSH-Key
注意是 private key