美化 报错页面 #58
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: PR E2E MVP | |
| on: | |
| pull_request: | |
| branches: [master] | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| jobs: | |
| e2e-mvp: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 40 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup JDK 21 | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: temurin | |
| java-version: '21' | |
| cache: maven | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20' | |
| cache: 'npm' | |
| cache-dependency-path: tests/e2e/package-lock.json | |
| - name: Setup Python 3.11 | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.11' | |
| - name: Install LibreOffice + archive tools | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y libreoffice zip p7zip-full | |
| - name: Setup Python deps for office fixtures | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -r tests/e2e/requirements.txt | |
| - name: Build kkFileView | |
| run: mvn -q -pl server -DskipTests package | |
| - name: Install E2E deps | |
| working-directory: tests/e2e | |
| run: | | |
| npm install | |
| npx playwright install --with-deps chromium | |
| - name: Start fixture server | |
| run: | | |
| cd tests/e2e/fixtures | |
| python3 -m http.server 18080 > /tmp/fixture-server.log 2>&1 & | |
| - name: Start kkFileView | |
| run: | | |
| JAR_PATH=$(ls server/target/kkFileView-*.jar | head -n 1) | |
| nohup env KK_TRUST_HOST='*' KK_NOT_TRUST_HOST='10.*,172.16.*,192.168.*' java -jar "$JAR_PATH" > /tmp/kkfileview.log 2>&1 & | |
| - name: Wait for services | |
| run: | | |
| for i in {1..60}; do | |
| curl -fsS http://127.0.0.1:18080/sample.txt >/dev/null && break | |
| sleep 1 | |
| done | |
| for i in {1..120}; do | |
| curl -fsS http://127.0.0.1:8012/ >/dev/null && break | |
| sleep 1 | |
| done | |
| - name: Run E2E | |
| working-directory: tests/e2e | |
| env: | |
| KK_BASE_URL: http://127.0.0.1:8012 | |
| FIXTURE_BASE_URL: http://127.0.0.1:18080 | |
| run: npm test | |
| - name: Upload Playwright report | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: playwright-report | |
| path: tests/e2e/playwright-report | |
| - name: Upload service logs | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: e2e-service-logs | |
| path: | | |
| /tmp/kkfileview.log | |
| /tmp/fixture-server.log |