diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a523692..c2b39c9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,6 +43,14 @@ jobs: with: node-version: ${{ env.NODE_VERSION }} + - name: Cache pnpm store + uses: actions/cache@v4 + continue-on-error: true + with: + path: ~/.local/share/pnpm/store + key: pnpm-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }} + restore-keys: pnpm-${{ runner.os }}- + - name: Install dependencies run: pnpm install --frozen-lockfile @@ -77,6 +85,14 @@ jobs: with: node-version: ${{ env.NODE_VERSION }} + - name: Cache pnpm store + uses: actions/cache@v4 + continue-on-error: true + with: + path: ~/.local/share/pnpm/store + key: pnpm-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }} + restore-keys: pnpm-${{ runner.os }}- + - name: Install dependencies run: pnpm install --frozen-lockfile @@ -107,6 +123,14 @@ jobs: with: node-version: ${{ env.NODE_VERSION }} + - name: Cache pnpm store + uses: actions/cache@v4 + continue-on-error: true + with: + path: ~/.local/share/pnpm/store + key: pnpm-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }} + restore-keys: pnpm-${{ runner.os }}- + - name: Install dependencies run: pnpm install --frozen-lockfile @@ -132,6 +156,14 @@ jobs: with: node-version: ${{ env.NODE_VERSION }} + - name: Cache pnpm store + uses: actions/cache@v4 + continue-on-error: true + with: + path: ~/.local/share/pnpm/store + key: pnpm-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }} + restore-keys: pnpm-${{ runner.os }}- + - name: Install dependencies run: pnpm install --frozen-lockfile @@ -196,6 +228,14 @@ jobs: with: node-version: ${{ env.NODE_VERSION }} + - name: Cache pnpm store + uses: actions/cache@v4 + continue-on-error: true + with: + path: ~/.local/share/pnpm/store + key: pnpm-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }} + restore-keys: pnpm-${{ runner.os }}- + - name: Install dependencies run: pnpm install --frozen-lockfile @@ -251,6 +291,14 @@ jobs: with: node-version: ${{ env.NODE_VERSION }} + - name: Cache pnpm store + uses: actions/cache@v4 + continue-on-error: true + with: + path: ~/.local/share/pnpm/store + key: pnpm-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }} + restore-keys: pnpm-${{ runner.os }}- + - name: Install dependencies run: pnpm install --frozen-lockfile @@ -347,6 +395,14 @@ jobs: with: node-version: ${{ env.NODE_VERSION }} + - name: Cache pnpm store + uses: actions/cache@v4 + continue-on-error: true + with: + path: ~/.local/share/pnpm/store + key: pnpm-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }} + restore-keys: pnpm-${{ runner.os }}- + - name: Install dependencies run: pnpm install --frozen-lockfile @@ -493,6 +549,10 @@ jobs: sleep 3 done + - name: Pre-pull Docker base image + run: docker pull node:20-bookworm-slim + continue-on-error: true + - name: Build and start app (full profile) run: docker compose -f docker-compose.yml -f docker-compose.ci.yml --profile full up -d --build app @@ -509,7 +569,7 @@ jobs: # the act_runner job can reach). No DNS, no guessing. run: | set -e - for i in $(seq 1 36); do + for i in $(seq 1 60); do CID=$(docker compose -f docker-compose.yml -f docker-compose.ci.yml ps -q app || true) if [ -n "$CID" ]; then APP_IP=$(docker inspect -f '{{range $k,$v := .NetworkSettings.Networks}}{{if eq $k "gitea_gitea"}}{{$v.IPAddress}}{{end}}{{end}}' "$CID") diff --git a/apps/web/playwright.config.ts b/apps/web/playwright.config.ts index cd6eaa3..f982162 100644 --- a/apps/web/playwright.config.ts +++ b/apps/web/playwright.config.ts @@ -24,6 +24,6 @@ export default defineConfig({ command: "node ./e2e/test-server.mjs", url: e2eBaseUrl, reuseExistingServer: false, - timeout: 180000, + timeout: 300000, }, });