mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-03-02 19:49:58 +00:00
This refactoring improves the CI/CD workflow structure by: - Split the monolithic setup-frontend action into two focused actions: - setup-frontend: Now only handles frontend dependency installation and building - setup-comfyui-server: New action for ComfyUI server setup and launch - Simplified workflow structure with better separation of concerns: - Frontend and server setup are now independent and reusable - Each action has clearer responsibilities and inputs - Removed duplicate setup code across workflows - Improved tests-ci.yaml workflow: - Uses cache/save and cache/restore for the entire workspace - Test jobs now restore cached build instead of rebuilding - Reduced redundant setup steps in each test shard - Better parallelization with faster test execution - Updated all locale update workflows to use new action structure - Made setup-playwright a standalone reusable action Benefits: - Faster CI runs by reducing redundant builds - More maintainable with DRY principle - Easier to debug individual components - Better action reusability across workflows
41 lines
1.5 KiB
YAML
41 lines
1.5 KiB
YAML
name: Setup Playwright
|
|
description: Cache and install Playwright browsers with dependencies
|
|
runs:
|
|
using: composite
|
|
steps:
|
|
- name: Detect Playwright version
|
|
id: detect-version
|
|
shell: bash
|
|
run: |
|
|
PLAYWRIGHT_VERSION=$(pnpm ls @playwright/test --json | jq --raw-output '.[0].devDependencies["@playwright/test"].version')
|
|
echo "playwright-version=$PLAYWRIGHT_VERSION" >> $GITHUB_OUTPUT
|
|
|
|
- name: Cache Playwright Browsers
|
|
uses: actions/cache@v4
|
|
id: cache-playwright-browsers
|
|
with:
|
|
path: '~/.cache/ms-playwright'
|
|
key: ${{ runner.os }}-playwright-browsers-${{ steps.detect-version.outputs.playwright-version }}
|
|
|
|
- name: Install Playwright Browsers
|
|
if: steps.cache-playwright-browsers.outputs.cache-hit != 'true'
|
|
shell: bash
|
|
run: pnpm exec playwright install chromium --with-deps
|
|
|
|
- name: Install Playwright Browsers (operating system dependencies)
|
|
if: steps.cache-playwright-browsers.outputs.cache-hit == 'true'
|
|
shell: bash
|
|
run: pnpm exec playwright install-deps
|
|
|
|
- name: Cache tool outputs
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: |
|
|
./.cache
|
|
./tsconfig.tsbuildinfo
|
|
key: playwright-setup-cache-${{ runner.os }}-${{ hashFiles('./pnpm-lock.yaml') }}-${{ hashFiles('./src/**/*.{ts,vue,js}', './*.config.*') }}
|
|
restore-keys: |
|
|
playwright-setup-cache-${{ runner.os }}-${{ hashFiles('./pnpm-lock.yaml') }}-
|
|
playwright-setup-cache-${{ runner.os }}-
|
|
playwright-tools-cache-${{ runner.os }}-
|