紧接着上文说起,咱们这次来完成基于jenkins的自动化部署,也就是当有新的代码推送就会触发自动构建。
上一节我们已经实现了手动部署,大部分基础配置都已完成,不了解的可以先回顾下。。。。 基于jenkins实现手动拉取码云代码,实现半自动化部署
要实现自动化部署,其实这部分操作非常简单,只需要配置好构建触发器以及触发的事件即可。
本文要达到的具体目标:使用jenkins实现自动化部署
ps:我的服务器:CentOs8 Linux
计划了几个想要达到的目标
- 在自己的机器上跑起来 done
- 使用jenkins将码云上的git仓库拉到服务器 done
- 将代码拉到服务器后,可以手动触发构建、部署 done
- 完成自动化部署 done
- 开发一个自己的插件,具体做啥还没想好
- 待定...
触发器配置
打开一个我们创建好的项目,打开任务配置的触发器构建选项:Configure -> Build Triggers 选项卡
Enabled Gitee triggers 勾选你所需要的构建触发规则, 如 Push Event, Opened Merge Request Events,勾选的事件会接受WebHook,触发构建。
目前支持触发事件有:
- Push Events :推送代码事件
- Opened Merge Request Events :提交 PR 事件
- Updated Merge Request Events :更新 PR 事件
- Accepted Merge Request Events :接受/合并 PR 事件
- Closed Merge Request Events :关闭 PR 事件
- Approved Pull Requests :审查通过 PR 事件
- Tested Pull Requests :测试通过 PR 事件
Enable [ci-skip] 该选项可以开启支持 [ci-skip] 指令,只要commit message 中包含 [ci-skip],当前commit 即可跳过构建触发。
目前我自己只选择了 Push Events和提交PR事件,其他的暂时还不用不到。
另外还可以设置webHook验证token,其中 Secret Token for Gitee WebHook 该选项可以配置 WebHook 的密码,该密码需要与 Gitee WebHook配置的密码一致方可触发构建。
拿到触发器URL
在上一步其实已经能拿到 gitee WebHook URL,这里着重说下。
打开 Configure -> Build Triggers 选项卡,地址已生成好。
仓库关联
我们需要将上面的 WEBHOOK URL 和对应的仓库进行关联。
打开码云中的仓库,进入 设置(settings) -> WebHooks
- 添加 WebHook, URL 填写上一步我们得到的 WEBHOOK URL
- 密码填写:如果在Jenkins中配置了WebHook密码,不设密码可以不填
- 勾选 PUSH, Pull Request 事件
- 测试推送触发构建
在Gitee 仓库的 WebHook 中选择勾选了PUSH的 WebHook 点击测试,观察 Jenkins 任务的构建状态
在Gitee 仓库中编辑一个文件并提交,观察 Jenkins 任务的构建状态