Simplify Gitea Actions workflow
CI and Deploy / ci-gate (push) Waiting to run
CI and Deploy / build-and-deploy (push) Blocked by required conditions
CI and Deploy / full-e2e (push) Blocked by required conditions

This commit is contained in:
2026-06-01 16:58:03 +08:00
parent 9f27e4db51
commit 59c947f2e0
+14 -40
View File
@@ -9,61 +9,39 @@ on:
description: 'Run full E2E tests after deploy'
type: boolean
default: false
run_coverage:
description: 'Run coverage tests'
type: boolean
default: false
jobs:
ci-gate:
runs-on: ubuntu-latest
container:
image: mcr.microsoft.com/playwright:v1.51.1-jammy
options: -v /var/run/docker.sock:/var/run/docker.sock --ipc=host
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
- name: Install Node
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Cache npm
uses: actions/cache@v4
with:
path: ~/.npm
key: npm-${{ hashFiles('package-lock.json') }}
restore-keys: npm-
- name: Install dependencies
run: npm ci
- name: Generate Prisma client
run: npx prisma generate
run: |
npm config set registry https://registry.npmmirror.com
npm ci
- name: Lint
run: npm run lint
- name: Unit tests
run: |
if [ "${{ inputs.run_coverage }}" = "true" ]; then
npm run test:coverage
else
npm run test
fi
run: npm run test
- name: Smoke E2E tests
run: |
npx playwright install chromium
npx playwright install chromium 2>/dev/null || true
npm run test:e2e:smoke
build-and-deploy:
needs: ci-gate
runs-on: ubuntu-latest
container:
options: -v /var/run/docker.sock:/var/run/docker.sock
steps:
- name: Checkout
@@ -73,16 +51,13 @@ jobs:
run: |
docker build \
--build-arg NEXT_PUBLIC_AMAP_API_KEY="${{ secrets.AMAP_API_KEY }}" \
-t no-whatever:latest \
-t no-whatever:${{ github.sha }} \
.
-t no-whatever:latest .
- name: Deploy
run: |
docker stop no-whatever || true
docker rm no-whatever || true
mkdir -p /data/no-whatever
chown 1001:1001 /data/no-whatever
mkdir -p /data/no-whatever && chown 1001:1001 /data/no-whatever
docker run -d \
--name no-whatever \
--network nginx \
@@ -98,24 +73,23 @@ jobs:
needs: build-and-deploy
if: ${{ inputs.run_full_e2e }}
runs-on: ubuntu-latest
container:
image: mcr.microsoft.com/playwright:v1.51.1-jammy
options: --ipc=host
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
- name: Install Node
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
run: npm ci
run: |
npm config set registry https://registry.npmmirror.com
npm ci
- name: Full E2E tests
- name: Full E2E
run: |
npx prisma generate
npx playwright install chromium
npx playwright install chromium 2>/dev/null || true
npm run test:e2e