构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码

拉取gitlab代码库:

jenkins安装git插件(注:选项没有手动去插件下载)

配置gitlab服务器和jenkins服务器身份互信


1、jenkins服务器生成一对rsa key.(ssh-keygen获取公(*_*)私(*_*.pub)钥)

2、复制公钥到gitlabSHH Keys添加

构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码_第1张图片
gitlab

3、在jenkinsCredentials里添加private key.

(username最好和jenkins管理员名称一致,id空,pasparase生成钥匙填的密码,未填为空)

构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码_第2张图片
jenkins

4、安装两个插件(安装跳过)

Gitlab Hook Pluginbuild authorization token root plugin 

5、生成了一个url:http://192.168.14.128:8080/buildByToken/build?job=demo-sonar&token=token  (jenkins服务器地址,项目名称,生成的token码)

6、自己产生一个复杂点的token:openssl rand -hex 12得到 token码写到jenkins,将组合成的url写到gitlab

对应关系
构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码_第3张图片
gitlab

7、新建jobs:

构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码_第4张图片
jenkins

8、配置git项:

构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码_第5张图片
jenkins

    注意:Repostitory URL有两种方式(上述用ssh连接)

    ssh证书:对应Http  ;   username证书:对应SSH

9、构建触发器:

构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码_第6张图片
jenkins

10、成功:

构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码_第7张图片
gitlab

若未成功,查询错误原因修改即可

你可能感兴趣的:(构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码)