跳转至

jenkins 拉取 gitea 代码仓库认证方式

配置 gitea 与 Jenkins 钩子

gitea 相关配置

创建用户

为 Jenkins 单独创建一个名为 Jenkins 的 Gitea 用户账号,便于 Jenkins 使用令牌访问 Gitea 服务器。
image-20240726121326943

项目中添加用户

追加用户管理
image-20240726122854826

切换测试用户

切换 jenkins 用户
image-20240726103711339

生成 gitea Token

Jenkins 用户生成 gitea Token
image-20240726121910606

修改 Gitea 服务器的 Webhook 白名单

出于安全考虑,您通过 Gitea Webhook 触发外部服务器的响应前需要设定 webhook.ALLOWED_HOST_LIST 白名单来控制 Webhook 的目的地址。具体信息参考文档 Webhook。

修改配置时,打开 conf/app.ini,添加 ALLOWED_HOST_LIST = * 到 [webhook] 栏目中,并重启 Gitea 服务器。例如:

[webhook]
ALLOWED_HOST_LIST = *

Jenkins 配置

Jenkins下载插件 Gitea

在 Jenkins 依次打开 系统管理 - 插件管理,在 可选插件 中搜索并安装 Gitea。
image-20240726150013191

Jenkins 配置 token

在 Jenkins 中打开 Manage Credentials 添加 Gitea 访问令牌,用于从 Gitea 拉取代码、通过 API 安装 Webhook。
image-20240726122154450
image-20240726122334846
Kind: 选择 Gitea Personal Access Token
Scope: 选择 Global
Token: 填写从 Gitea 申请的访问令牌

Jenkins 中配置 Gitea Server

在 Jenkins 依次打开 系统管理 - 系统配置,找到 Gitea Server 并填写:
image-20240726123344347
Name: 任意填写一个名称
Server URL: 填写 Gitea 服务器的 HTTP 地址,如 https://gitea.com
勾选 Manage hooks 并选择访问令牌。这将允许 Jenkins 使用您选择的 Gitea 帐户自动配置 Gitea Webhook,当代码提交到 Gitea 时,Gitea 通过 Webhook (http://JENINS_URL/gitea-webhook/post) 触发 Jenkins CI。

jenkins 新建任务拉取 gitea 仓库

新建视图

在 Jenkins 中新建视图
image-20240726152157494

新建任务

在 Jenkins 中新建自由任务 test
image-20240726153128617

Jenkins 配置任务

选择源码管理 -- 添加 Gitea 仓库地址 -- 并选择访问令牌
image-20240726153510069

添加触发器

每当你的 Gitea 项目执行 push 操作时,Gitea 都会通过 webhook 发送一个 post 请求给 Jenkins,让它执行构建及部署操作。
image-20240726153636013

开始构建任务

点击构建查看是否成功
image-20240726153752965