mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-03-14 09:27:41 +00:00
## Problem The lint/format CI workflow was broken for fork PRs in two ways: ### 1. Node version mismatch in setup-frontend action The `setup-frontend` shared action (created in #8377) was missed when Node version was standardized to `.nvmrc` in #9521. It still used `node-version: 'lts/*'` instead of `node-version-file: '.nvmrc'`. ### 2. Fork PRs with lint issues silently passed CI Fork PRs with auto-fixable lint/format issues got a **green checkmark** despite having unfixed issues: 1. Auto-fix steps (`lint:fix`, `format`) fix issues in the workspace 2. `Commit changes` is correctly skipped for forks (can't push to fork branches) 3. `Final validation` passes because it runs on the already-fixed workspace 4. The `Comment on PR about manual fix needed` step tries to post a comment via `actions/github-script`, but fork PRs have a read-only `GITHUB_TOKEN` — the comment silently fails (`continue-on-error: true`) 5. **Result**: workflow reports success, contributor thinks their code is clean ## Fix - **setup-frontend**: Use `node-version-file: '.nvmrc'` instead of `node-version: 'lts/*'` - **ci-lint-format**: Replace the broken fork comment step with an explicit `exit 1` that fails CI and prints clear fix instructions in the log. This follows the principle from `.github/AGENTS.md`: fork PRs can't post comments, so don't try. ## Testing - [ ] Verify fork PRs with clean code still pass - [ ] Verify fork PRs with lint issues now properly fail (instead of silently passing) ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-9846-fix-restore-fork-PR-lint-format-CI-workflow-3226d73d3650811cb5bfe9f1f989cc0c) by [Unito](https://www.unito.io)
34 lines
1017 B
YAML
34 lines
1017 B
YAML
name: Setup ComfyUI Frontend
|
|
description: 'Install nodejs/pnpm/dependencies and optionally build ComfyUI_frontend'
|
|
inputs:
|
|
include_build_step:
|
|
description: 'Include the build step to build the frontend. Set to true for workflows that need a built frontend'
|
|
required: false
|
|
default: 'false'
|
|
runs:
|
|
using: 'composite'
|
|
steps:
|
|
# Note: this workflow assume frontend repo is checked out in the root of the workspace
|
|
|
|
# Install pnpm, Node.js, build frontend
|
|
- name: Install pnpm
|
|
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
|
|
with:
|
|
version: 10
|
|
|
|
- name: Setup Node.js
|
|
uses: actions/setup-node@v6
|
|
with:
|
|
node-version-file: '.nvmrc'
|
|
cache: 'pnpm'
|
|
cache-dependency-path: './pnpm-lock.yaml'
|
|
|
|
- name: Install dependencies
|
|
shell: bash
|
|
run: pnpm install --frozen-lockfile
|
|
|
|
- name: Build ComfyUI_frontend
|
|
if: ${{ inputs.include_build_step == 'true' }}
|
|
shell: bash
|
|
run: pnpm build
|