test #5
This file contains 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
# Inspired by: https://github.com/Comfy-Org/ComfyUI_frontend/blob/57701f6145f622bf17237410c165966fb4aecc75/.github/workflows/test-ui.yaml | |
name: Browser Tests | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- master | |
# TODO: when bizyair_frontend is ready, change to push and PR to dev_bbs | |
jobs: | |
browser_tests: | |
runs-on: ubuntu-latest | |
steps: | |
# Ref: https://github.com/orgs/community/discussions/25199#discussioncomment-3246802 | |
- name: Get latest ComfyUI release with tag | |
id: latestrelease | |
run: | | |
echo "comfy_latest_release=$(curl -s https://api.github.com/repos/comfyanonymous/ComfyUI/releases/latest | jq '.tag_name' | sed 's/\"//g')" >> $GITHUB_OUTPUT | |
- name: Checkout ComfyUI | |
uses: actions/checkout@v4 | |
with: | |
repository: comfyanonymous/ComfyUI | |
ref: ${{ steps.latestrelease.outputs.comfy_latest_release }} | |
path: ComfyUI | |
- name: Checkout BizyAir | |
uses: actions/checkout@v4 | |
with: | |
repository: siliconflow/BizyAir | |
ref: master | |
path: ComfyUI/custom_nodes/BizyAir | |
- name: Checkout bizyair_frontend | |
uses: actions/checkout@v4 | |
with: | |
repository: siliconflow/bizyair_frontend | |
ref: dev_bbs | |
path: ComfyUI/custom_nodes/BizyAir/bizyair_frontend | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: '3.12' | |
cache: 'pip' | |
cache-dependency-path: | | |
ComfyUI/requirements.txt | |
ComfyUI/custom_nodes/BizyAir/requirements.txt | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: '20.9.0' | |
cache: 'npm' | |
cache-dependency-path: | | |
ComfyUI/custom_nodes/BizyAir/browser_tests/package-lock.json | |
ComfyUI/custom_nodes/BizyAir/bizyair_frontend/package-lock.json | |
- name: Install dependencies | |
run: | | |
pip install -r ComfyUI/requirements.txt | |
pip install -r ComfyUI/custom_nodes/BizyAir/requirements.txt | |
pip install wait-for-it | |
- name: Install playwright | |
run: | | |
npm install | |
npx playwright install chromium --with-deps | |
working-directory: ComfyUI/custom_nodes/BizyAir/browser_tests | |
- name: Install bizyair_frontend dependencies | |
run: | | |
npm install | |
working-directory: ComfyUI/custom_nodes/BizyAir/bizyair_frontend | |
- name: Copy over test workflows | |
run: | | |
mkdir -p ComfyUI/user/default | |
cp -r ComfyUI/custom_nodes/BizyAir/browser_tests/workflows ComfyUI/user/default | |
- name: Update bizyair_frontend.js | |
run: | | |
npx vite-tsc -b | |
npx vite build | |
working-directory: ComfyUI/custom_nodes/BizyAir/bizyair_frontend | |
- name: Start ComfyUI server | |
run: | | |
python main.py --cpu & | |
wait-for-it --service 127.0.0.1:8188 -t 600 | |
working-directory: ComfyUI | |
- name: Run Tests | |
run: | | |
npx playwright test --project chromium chromium-2x | |
working-directory: ComfyUI/custom_nodes/BizyAir/browser_tests | |
- uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: playwright-report | |
path: ComfyUI/custom_nodes/BizyAir/browser_tests/playwright-report/ | |
retention-days: 30 |