mirror of
https://github.com/comfyanonymous/ComfyUI.git
synced 2026-07-03 13:19:23 +08:00
Bump CI matrix to Python 3.14-3.11, PyTorch 2.12, CUDA 13.2
Replace the trigger-policy change with the version-matrix bump requested by Comfy: test on Python 3.14/3.13/3.12/3.11 against PyTorch 2.12 on CUDA 13.2. - pass cuda_version through to comfy-action (was defaulting to 12.1) - pin torch 2.12 + torchvision from the cu132 wheel index via the action's 'specific' install path (requires the Linux 'specific' branch in comfy-action) - torchaudio omitted: no cu132 build for these Python versions
This commit is contained in:
parent
1ff6f32545
commit
0d4f4d0972
95
.github/workflows/test-ci.yml
vendored
95
.github/workflows/test-ci.yml
vendored
@ -1,9 +1,5 @@
|
|||||||
# This is the GitHub Workflow that drives full-GPU-enabled tests of ComfyUI.
|
# This is the GitHub Workflow that drives automatic full-GPU-enabled tests of all new commits to the master branch of ComfyUI
|
||||||
# Results are reported as checkmarks on the commits, as well as onto https://ci.comfy.org/
|
# Results are reported as checkmarks on the commits, as well as onto https://ci.comfy.org/
|
||||||
#
|
|
||||||
# Trigger policy:
|
|
||||||
# push to master/release -> a lightweight "smoke" run (one stable config) for a fast per-commit signal
|
|
||||||
# workflow_dispatch -> operator-selected scope; "full" runs the complete supported matrix on demand
|
|
||||||
name: Full Comfy CI Workflow Runs
|
name: Full Comfy CI Workflow Runs
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
@ -19,73 +15,70 @@ on:
|
|||||||
- '.github/**'
|
- '.github/**'
|
||||||
- 'web/**'
|
- 'web/**'
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
inputs:
|
|
||||||
scope:
|
|
||||||
description: "Test scope: 'smoke' = one stable config, 'full' = all supported Python versions + nightly"
|
|
||||||
type: choice
|
|
||||||
options:
|
|
||||||
- smoke
|
|
||||||
- full
|
|
||||||
default: full
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
# Resolve the test scope from the trigger:
|
|
||||||
# push -> smoke (cheap per-commit signal on master)
|
|
||||||
# workflow_dispatch -> the scope chosen by the operator (defaults to full)
|
|
||||||
# Expanding coverage later (new Python versions, etc.) is a one-line edit to the JSON below.
|
|
||||||
prepare:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
outputs:
|
|
||||||
stable_python: ${{ steps.scope.outputs.stable_python }}
|
|
||||||
run_nightly: ${{ steps.scope.outputs.run_nightly }}
|
|
||||||
steps:
|
|
||||||
- name: Resolve scope
|
|
||||||
id: scope
|
|
||||||
shell: bash
|
|
||||||
run: |
|
|
||||||
SCOPE="${{ github.event_name == 'workflow_dispatch' && inputs.scope || 'smoke' }}"
|
|
||||||
echo "Trigger=${{ github.event_name }} resolved scope=$SCOPE"
|
|
||||||
if [ "$SCOPE" = "full" ]; then
|
|
||||||
echo 'stable_python=["3.10", "3.11", "3.12"]' >> "$GITHUB_OUTPUT"
|
|
||||||
echo 'run_nightly=true' >> "$GITHUB_OUTPUT"
|
|
||||||
else
|
|
||||||
echo 'stable_python=["3.12"]' >> "$GITHUB_OUTPUT"
|
|
||||||
echo 'run_nightly=false' >> "$GITHUB_OUTPUT"
|
|
||||||
fi
|
|
||||||
|
|
||||||
test-stable:
|
test-stable:
|
||||||
needs: prepare
|
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
# os: [macos, linux, windows] # mac/windows self-hosted runners currently disabled
|
# os: [macos, linux, windows]
|
||||||
python_version: ${{ fromJSON(needs.prepare.outputs.stable_python) }}
|
os: [linux]
|
||||||
# CUDA is the comfy-action default (12.1); bump alongside the matrix-expansion PR.
|
python_version: ["3.14", "3.13", "3.12", "3.11"]
|
||||||
runs-on: [self-hosted, Linux]
|
cuda_version: ["13.2"]
|
||||||
|
torch_version: ["specific"]
|
||||||
|
include:
|
||||||
|
# - os: macos
|
||||||
|
# runner_label: [self-hosted, macOS]
|
||||||
|
# flags: "--use-pytorch-cross-attention"
|
||||||
|
- os: linux
|
||||||
|
runner_label: [self-hosted, Linux]
|
||||||
|
flags: ""
|
||||||
|
# - os: windows
|
||||||
|
# runner_label: [self-hosted, Windows]
|
||||||
|
# flags: ""
|
||||||
|
runs-on: ${{ matrix.runner_label }}
|
||||||
steps:
|
steps:
|
||||||
- name: Test Workflows
|
- name: Test Workflows
|
||||||
uses: comfy-org/comfy-action@main
|
uses: comfy-org/comfy-action@main
|
||||||
with:
|
with:
|
||||||
os: linux
|
os: ${{ matrix.os }}
|
||||||
python_version: ${{ matrix.python_version }}
|
python_version: ${{ matrix.python_version }}
|
||||||
torch_version: stable
|
cuda_version: ${{ matrix.cuda_version }}
|
||||||
|
torch_version: ${{ matrix.torch_version }}
|
||||||
|
# Pin PyTorch 2.12 on CUDA 13.2 (cu132 wheel index). torchaudio is omitted
|
||||||
|
# on purpose: cu132 has no torchaudio build for these Python versions
|
||||||
|
# (it stops at 2.2.0/cp312). requirements.txt still lists torchaudio, so
|
||||||
|
# validate that leg once a runner exists — it may need to be made optional.
|
||||||
|
# NOTE: requires comfy-action to honor `torch_version: specific` on Linux
|
||||||
|
# (today macOS-only). Companion PR in comfy-org/comfy-action is required.
|
||||||
|
specific_torch_install: "pip install torch==2.12.* torchvision --index-url https://download.pytorch.org/whl/cu132"
|
||||||
google_credentials: ${{ secrets.GCS_SERVICE_ACCOUNT_JSON }}
|
google_credentials: ${{ secrets.GCS_SERVICE_ACCOUNT_JSON }}
|
||||||
comfyui_flags: ""
|
comfyui_flags: ${{ matrix.flags }}
|
||||||
|
|
||||||
test-unix-nightly:
|
test-unix-nightly:
|
||||||
needs: prepare
|
|
||||||
if: ${{ needs.prepare.outputs.run_nightly == 'true' }}
|
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
|
# os: [macos, linux]
|
||||||
|
os: [linux]
|
||||||
python_version: ["3.11"]
|
python_version: ["3.11"]
|
||||||
runs-on: [self-hosted, Linux]
|
cuda_version: ["13.2"]
|
||||||
|
torch_version: ["nightly"]
|
||||||
|
include:
|
||||||
|
# - os: macos
|
||||||
|
# runner_label: [self-hosted, macOS]
|
||||||
|
# flags: "--use-pytorch-cross-attention"
|
||||||
|
- os: linux
|
||||||
|
runner_label: [self-hosted, Linux]
|
||||||
|
flags: ""
|
||||||
|
runs-on: ${{ matrix.runner_label }}
|
||||||
steps:
|
steps:
|
||||||
- name: Test Workflows
|
- name: Test Workflows
|
||||||
uses: comfy-org/comfy-action@main
|
uses: comfy-org/comfy-action@main
|
||||||
with:
|
with:
|
||||||
os: linux
|
os: ${{ matrix.os }}
|
||||||
python_version: ${{ matrix.python_version }}
|
python_version: ${{ matrix.python_version }}
|
||||||
torch_version: nightly
|
cuda_version: ${{ matrix.cuda_version }}
|
||||||
|
torch_version: ${{ matrix.torch_version }}
|
||||||
google_credentials: ${{ secrets.GCS_SERVICE_ACCOUNT_JSON }}
|
google_credentials: ${{ secrets.GCS_SERVICE_ACCOUNT_JSON }}
|
||||||
comfyui_flags: ""
|
comfyui_flags: ${{ matrix.flags }}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user