ci: 按锁文件使用国内 Python 镜像
CI / rust-core (push) Waiting to run
CI / docs-check (push) Successful in 27s
CI / backend-test (push) Successful in 3m33s
CI / service-test (push) Failing after 2m22s
CI / frontend-test (push) In progress

This commit is contained in:
2026-09-13 11:29:48 +08:00
parent 480aaff1c4
commit c24fdf38a3
2 changed files with 34 additions and 0 deletions
+6
View File
@@ -26,6 +26,8 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: 切换 Python 锁文件下载源
run: python3 scripts/prepare-ci-uv-mirror.py
- name: 安装 Rust 工具链 - name: 安装 Rust 工具链
run: | run: |
curl --proto '=https' --tlsv1.2 -fsSL https://sh.rustup.rs | sh -s -- -y --profile minimal curl --proto '=https' --tlsv1.2 -fsSL https://sh.rustup.rs | sh -s -- -y --profile minimal
@@ -46,6 +48,8 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: 切换 Python 锁文件下载源
run: python3 scripts/prepare-ci-uv-mirror.py
- run: corepack enable && corepack prepare pnpm@10.28.0 --activate - run: corepack enable && corepack prepare pnpm@10.28.0 --activate
- run: pnpm install --frozen-lockfile && pnpm build - run: pnpm install --frozen-lockfile && pnpm build
working-directory: server sync/console working-directory: server sync/console
@@ -76,6 +80,8 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: 切换 Python 锁文件下载源
run: python3 scripts/prepare-ci-uv-mirror.py
- name: 安装 Rust 工具链 - name: 安装 Rust 工具链
run: | run: |
curl --proto '=https' --tlsv1.2 -fsSL https://sh.rustup.rs | sh -s -- -y --profile minimal --component rustfmt,clippy curl --proto '=https' --tlsv1.2 -fsSL https://sh.rustup.rs | sh -s -- -y --profile minimal --component rustfmt,clippy
+28
View File
@@ -0,0 +1,28 @@
from pathlib import Path
LOCK_FILES = (
Path("backend/uv.lock"),
Path("server sync/uv.lock"),
Path("community-server/uv.lock"),
)
REPLACEMENTS = {
"https://pypi.org/simple": "https://mirrors.aliyun.com/pypi/simple",
"https://files.pythonhosted.org/packages/": "https://mirrors.aliyun.com/pypi/packages/",
}
def main() -> None:
for path in LOCK_FILES:
if not path.is_file():
continue
content = path.read_text(encoding="utf-8")
for source, mirror in REPLACEMENTS.items():
content = content.replace(source, mirror)
path.write_text(content, encoding="utf-8", newline="\n")
print(f"已切换锁文件下载源:{path}")
if __name__ == "__main__":
main()