之前有用过 hudson ,最近换了新公司,项目刚刚起步 持续集成总得做吧,那就jenkin
注:
Jenkins的前身是Hudson(Sun开发),2010年从Hudson分支出来。由于Sun被Oracle收购,后者声称拥有Hudson的商标所有权,前者被迫这样做的。分支出来的Jenkins将继续走open source道路,而Hudson可能会用于商业用途,二者都在继续开发中
jenkins安装 (环境 centos 6.5 )
wget -O /etc/yum.repos.d/jenkins.repo http://jenkins-ci.org/redhat/jenkins.repo
rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
yum install jenkins
#启动
service jenkins start
访问 http://192.168.1.1:8080 (根据自己IP 进行访问)
1. 第一次启动的时候可以选择要安装的插件和设置用户密码
2. jdk,maven 等配置进行系统设置配置即可(系统管理>Global Tool Configuration )
注:默认配置是8080 端口,如需更改请修正/etc/sysconfig/jenkins 配置文件即可
插件安装
系统设置>管理插件 (选择可选插件)
Paste_Image.png输入要安装的插件进行搜索即可
这里我们输入Github Plugin 进行搜索 ,jenkins会自动帮你解决其他插件的依赖,直接安装该插件即可。
创建一个测试工程
源码关联
然后保存>构建即可。
注: 上面构建的代码是公开库的,一般公司项目都是私有的,这时候就要配置github 认证。
构建私有项目 权限配置
进入github > settings >Personal access tokens >Generate new token
进入jenkins > 系统设置
secret : 就是刚刚在github 复制的内容。
然后重新对项目进行设置
这样就可以对私有项目进行构建 了。
遇到的问题:
- git 版本问题导致总是报错
- 构建完成后执行shell 脚本 启动的服务总是自动kill 现象
git 版本问题导致总是报错
因为centos 6.5 自带的git 是1.7 版本,我在服务器上使用git clone 命令都是能正常克隆项目的,可是在jenkins构建项目时死活过不了,异常大致内容是:
Failed to connect to repository : Command "git config --local credential.helper store --
file=/tmp/git295604102612313123.credentials" returned status code
129:stdout: stderr: error: unknown option `local'
网上查了一下说是git 版本太低,我试了公有仓库的构建是没问题的(git 1.7 版本), 好吧,那就升级git 呗,不知道什么原因,我试了 2.9.3,2.4.5 版本都不行,更新后连 公有仓库的代码也构建不成功了,最后是了2.7.1 版本居然OK了,不知道是不是之前升级有问题 ?
git 升级
yum remove git
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel -y
yum install gcc perl-ExtUtils-MakeMaker -y
wget https://www.kernel.org/pub/software/scm/git/git-2.7.1.tar.gz
tar -xzvf git-2.7.1.tar.gz
cd git-2.7.1
make prefix=/usr/local/git all
make prefix=/usr/local/git install
ln -s /usr/local/git/bin/git /usr/bin/git
问题总算是解决 了。
构建完成后执行shell 脚本 启动的服务总是自动kill 现象
这个问题我是无语了,网上找了很多资料包括官网都是说指定 BUILD_ID=xxx 就可以了,不过我是怎么试都不行,包括自己写脚本ssh 进行访问启动还是会被kill
最后解决办法是进入系统配置>SSH sites
然后进入要构建的项目进行设置
网友评论