fix: CI 移除全部外部 action 依赖,checkout 改为手动克隆本 Gitea 实例
CI / backend-test (push) Successful in 3m18s

- Gitea 1.20+ 的 DEFAULT_ACTIONS_URL 仅接受 github/self,自定义 gitea.com 不生效,
  actions/checkout 回落 github.com 克隆(服务器不可达,实测 unexpected EOF)
- checkout 改为 git init + 从 ${{ github.server_url }} 认证克隆(github.token),
  与 apt 装 JDK 一起实现全链路零 GitHub 依赖
This commit is contained in:
2026-09-04 18:13:34 +08:00
parent b38b0d83bb
commit 0d81c38fc6
+12 -4
View File
@@ -6,9 +6,8 @@
# 2. 注册一个 act_runner,且 runner 所在主机具备: # 2. 注册一个 act_runner,且 runner 所在主机具备:
# - DockerTestcontainers 需要,跑 postgres:18 一次性容器) # - DockerTestcontainers 需要,跑 postgres:18 一次性容器)
# - 标签 ubuntu-latest 映射到含 bash/git 的镜像,或 host 模式执行 # - 标签 ubuntu-latest 映射到含 bash/git 的镜像,或 host 模式执行
# 3. 服务器无法访问 github.comactions/* 本体经 app.ini 的 # 3. 服务器无法访问 github.com本工作流不引用任何外部 action——
# [actions].DEFAULT_ACTIONS_URL = https://gitea.com 拉取; # checkout 手动从本 Gitea 实例克隆,JDK 用 apt 安装,全链路无 GitHub 依赖。
# JDK 用 apt 安装(见下方步骤),不依赖 GitHub 下载二进制。
# #
# 未启用 Actions 时本文件无副作用。 # 未启用 Actions 时本文件无副作用。
name: CI name: CI
@@ -27,7 +26,16 @@ jobs:
backend-test: backend-test:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4 # 不用 actions/checkoutGitea 1.20+ 的 DEFAULT_ACTIONS_URL 仅接受
# github/self,自定义镜像源不生效,action 会回落到 github.com(服务器不可达)。
# 改为手动从本 Gitea 实例克隆,零外部依赖。
- name: Checkout (manual)
run: |
git init -q .
AUTH_URL=$(echo "${{ github.server_url }}" | sed "s#https://#https://oauth2:${{ github.token }}@#")
git remote add origin "$AUTH_URL/${{ github.repository }}.git"
git fetch -q --depth 1 origin "+${{ github.ref }}:refs/ci-head"
git checkout -q refs/ci-head
# 不用 actions/setup-java:它从 github.com 下载 JDK 二进制, # 不用 actions/setup-java:它从 github.com 下载 JDK 二进制,
# 服务器无法访问 GitHub(实测 ETIMEDOUT)。改用 apt 装 OpenJDK 17 # 服务器无法访问 GitHub(实测 ETIMEDOUT)。改用 apt 装 OpenJDK 17
# 并优先切换到腾讯云镜像源(runner 在腾讯云,内网加速)。 # 并优先切换到腾讯云镜像源(runner 在腾讯云,内网加速)。