可以,Jenkins 原生支持把 Gitea 作为源码仓库,与 GitHub/GitLab 用法几乎一致,核心步骤如下:
1. 安装插件
在 Jenkins → Manage Plugins → Available 中搜索并安装 Gitea Plugin,重启 Jenkins 生效 。
2. 全局配置连接
Manage Jenkins → Configure System → Gitea 区域填写:
- Gitea 服务器 URL(如 https://git.company.com)
- 凭据(提前在 Credentials 里加好 API token 或用户名+密码)
点击 “Test Connection” 确认 Jenkins 能连上 Gitea 。
3. 新建 Job 并选源码管理
新建 Item → Freestyle 或 Pipeline → 源码管理选 “Git” 或 “Gitea”:
- Repository URL 填 Gitea 的 clone 地址(https / ssh 均可)
- Credentials 选刚才添加的账号
- 分支名按需填写(/main、/develop 等)
4. 设置构建触发器
方式一:让 Gitea 主动通知
- 在 Gitea 仓库 Settings → Webhooks → Add Webhook → Gitea
URL 填 `http://JENKINS_URL/gitea-webhook/post`(2.x 插件已自动注册,无需手动拼接)
触发事件选 “Push” 即可 。
方式二:轮询 SCM(老办法,耗资源,不推荐)
5. 保存后即可测试:向 Gitea push 代码,Jenkins 会立即收到 webhook 并启动构建;构建结果也可回写到 Gitea 的 Commit/PR 页面 。
排坑提示
- 若 webhook 报 403,把 Jenkins 启动参数加上 `-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true` 。
- 私有库只要在凭据里给 Jenkins 账号 “Read” 权限即可,无需管理员账号 。
- 如需多分支自动构建,可直接使用 “Multibranch Pipeline” 并选 Gitea 源,插件会自动扫描所有分支/PR 。
一句话总结:装好 Gitea Plugin、配好凭据和 webhook,Jenkins 就能把 Gitea 当成普通 Git 仓库来拉代码、触发构建,全流程与 GitHub 基本一致。