From cee657faac6004f2c2aa5ad6ec1efdc83b0e605a Mon Sep 17 00:00:00 2001 From: Jacky Date: Sat, 8 Aug 2026 22:53:09 +0800 Subject: [PATCH] ci: avoid GitHub action downloads --- .gitea/workflows/ci.yml | 26 ++++++++++++-------------- .gitea/workflows/deploy.yml | 27 ++++++++++++--------------- 2 files changed, 24 insertions(+), 29 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index bb66207..6074783 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -20,35 +20,33 @@ jobs: --health-timeout 5s --health-retries 20 steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: "3.11" - cache: pip + - uses: https://gitea.com/actions/checkout@v4 + - name: Show Python version + run: python3 --version - name: Install MySQL build dependencies run: | sudo apt-get update sudo apt-get install -y default-libmysqlclient-dev pkg-config - name: Install dependencies - run: pip install -r requirements-dev.txt + run: python3 -m pip install -r requirements-dev.txt - name: Check migrations working-directory: backend - run: python manage.py makemigrations --check --dry-run + run: python3 manage.py makemigrations --check --dry-run - name: Django checks working-directory: backend - run: python manage.py check + run: python3 manage.py check - name: ASGI import check working-directory: backend - run: python -c "from config.asgi import application; print(type(application).__name__)" + run: python3 -c "from config.asgi import application; print(type(application).__name__)" - name: Unit tests - run: pytest -q + run: python3 -m pytest -q - name: MySQL migrations and tests env: DATABASE_URL: mysql://root:ci-root-password@mysql:3306/hulumath run: | - python backend/manage.py check --database default - python backend/manage.py check_mysql - python backend/manage.py migrate --noinput - pytest -q + python3 backend/manage.py check --database default + python3 backend/manage.py check_mysql + python3 backend/manage.py migrate --noinput + python3 -m pytest -q - name: Build image run: docker build -t hulumath:${{ gitea.sha }} . diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 459626c..dcc57ae 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -28,15 +28,12 @@ jobs: --health-retries 20 steps: - name: 检出 main - uses: actions/checkout@v4 + uses: https://gitea.com/actions/checkout@v4 with: ref: main - - name: 配置 Python - uses: actions/setup-python@v5 - with: - python-version: "3.11" - cache: pip + - name: 显示 Python 版本 + run: python3 --version - name: 安装 MySQL 编译依赖 run: | @@ -44,31 +41,31 @@ jobs: sudo apt-get install -y default-libmysqlclient-dev pkg-config - name: 安装测试依赖 - run: pip install -r requirements-dev.txt + run: python3 -m pip install -r requirements-dev.txt - name: 检查迁移文件 working-directory: backend - run: python manage.py makemigrations --check --dry-run + run: python3 manage.py makemigrations --check --dry-run - name: Django 系统检查 working-directory: backend - run: python manage.py check + run: python3 manage.py check - name: ASGI 启动导入检查 working-directory: backend - run: python -c "from config.asgi import application; print(type(application).__name__)" + run: python3 -c "from config.asgi import application; print(type(application).__name__)" - name: 运行测试 - run: pytest -q + run: python3 -m pytest -q - name: MySQL 迁移与全量测试 env: DATABASE_URL: mysql://root:ci-root-password@mysql:3306/hulumath run: | - python backend/manage.py check --database default - python backend/manage.py check_mysql - python backend/manage.py migrate --noinput - pytest -q + python3 backend/manage.py check --database default + python3 backend/manage.py check_mysql + python3 backend/manage.py migrate --noinput + python3 -m pytest -q deploy: if: ${{ github.event.pull_request.merged == true }}