Jenkins+Gitlab+代码更新后自动构建执行任务

1.登陆Jenkins,确保已安装Gitlab的插件,而后建立一个自由风格的项目

manage Jenkins—>manage plugins—available–搜索GitLab–安装相关插件而后重启Jenkinsweb

2.Source Code Management

2.1 选择Git,Add Repository:复制Gitlab项目中clone with ssh地址到Repository URL
2.2 Add Credentials:Kind(SSH Username with private key)–Username(root)–>>选择Enter directly,添加私钥(查看私钥:cat .ssh/id_rsa)
2.3 Credentials的下拉菜单中就能够选择“root”了ssh

3.Build Triggers

3.1 若是想定时测试,不在意Gitlab项目是否更新,能够选择Build periodically,如天天8点执行一次则输入 H 8 * * *
3.2 若是是但愿项目代码一提交到Gitlab,则触发构建就选Build when a change is pushed to GitLab;
而后点击advanced按钮,点击下方的generate,生成一串Secret token,复制到Gitlab项目设置-integrations 页面的secret token;
该页面的URL就是建立Jenkins项目选Build when a change is pushed to Gitlab时生成的URL,填好这两个后拉到页面下方点击Add webhook按钮;
能够点test-push events测试一下是否成功创建链接,页面提示Hook executed successfully: HTTP 200,则成功了,返回Jenkins项目页面Build history多了一次构建记录就是成功了。以下图
Build History 看到Started By Gitlab则触发构建成功了svg

3.3 定时构建和push event构建二者能够都选,配合使用
定时构建语法介绍:
第一个* 表示分钟,取值0~59
第二个* 表示小时,取值0~23
第三个* 表示一个月的第几天,取值1~31
第四个* 表示第几月,取值1~12
第五个* 表示一周中的第几天,取值0~7,其中0和7表明的都是周日
好比天天8点10分执行 则:10 8 * * *
每5分钟执行一次: H/5 * * * *测试