准备工作
Jenkins所在服务器一定要有外网IP,否则GitHub无法访问
需要有一个GitHub号,并在上面创建工程;
工程代码
按自己实际的代码地址,我这里是:
https://github.com/itshu/ustra-parent.git
配置Jenkins的webhook接收地址
要获取Jenkins的Hook URL,打开Jenkins首页控制台–》系统管理
在Github插件的配置中,点击“高级”按钮
配置Github项目仓库
还需要配置Github项目仓库,因为Github经常有代码处理动作,需要配置Github项目仓库在处理这些动作的同时会发送信号至Jenkins,才使用Jenkins自动构建
如下图,在"Payload URL"位置填入webhook地址,再点击底部的"Add webhook按钮",这样就完成webhook配置了,今后当前工程有代码提交,GitHub就会向此webhook地址发请求,通知Jenkins构建:
添加完提示302错误的话,暂时不用管
生成Personal access tokens
Jenkins访问GitHub工程的时候,有的操作是需要授权的,所以我们要在GitHub上生成授权的token给Jenkins使用,这就是Personal access tokens,生成步骤如下:
登录GitHub,进入"Settings"页面,点击左下角的"Developer settings",如下图:
跳转到"Developer settings"页面后,点击左下角的“Personal access tokens”,如下图:
跳转到"Personal access tokens"页面后,点击右上角的"Generate new token"按钮,如下图:
生成完后记住token值
可能会提示输入GitHub密码,输入后跳转到创建token的页面,如下图所示,输入title,再勾选"repo"和"admin:repo_hook",再点击底部的"Generate token"按钮,就能产生一个新的access token,将此字符串复制下来,后面jenkins任务中会用到:
Jenkins配置
GitHub Plugin插件,在"系统管理->管理插件"位置检查此插件是否已经安装,没有的话请先安装;
配置GitHub,点击“系统管理->系统设置”,如下图:
在系统设置页面找到"GitHub",配置一个"GitHub Server",如下图,“API URL"填写"https://api.github.com”,“Credentials"位置如下图红框所示,选择"Add->Jenkins”:
弹出的页面中,“Kind"选择"Secret text”,"Secret"填入前面在GitHub上生成的Personal access tokens,Description随便写一些描述信息,如下图:
填写完毕后,点击右侧的"Test connection"按钮,如果信息没有填错,显示的内容如下图所示:
点击页面最底部的"保存"按钮;
GitHub项目的项目主页和仓库地址
项目主页和仓库地址是不同的,如下图,仓库地址(要用HTTPS的,不用SSH 的):
新建构建项目
在Jenkins上新建一个maven构建项目,名为test,如下图:
根据自己实际情况之情shell命令等。
最后提交代码测试。收工
常见问题:
配置jdk地址和git地址
maven地址
jenkins shell脚本执行权限不够解决办法
查看jenkins默认用户
vi /etc/sysconfig/jenkins
复制代码
找到JENKINS_USER发现默认用户jenkins,
JENKINS_USER="jenkins"
修改为JENKINS_USER=“root”
2.修改默认用户权限
chown -R root:root /var/lib/jenkins
chown -R root:root /var/cache/jenkins
chown -R root:root /var/log/jenkins
重新启动后就可以了
service jenkins restart