Delete .github
Browse files- .github/workflows/pullrequest-ci-run.yml +0 -53
- .github/workflows/release-webhook.yml +0 -108
- .github/workflows/ruff.yml +0 -23
- .github/workflows/stable-release.yml +0 -105
- .github/workflows/stale-issues.yml +0 -21
- .github/workflows/test-build.yml +0 -31
- .github/workflows/test-ci.yml +0 -96
- .github/workflows/test-launch.yml +0 -45
- .github/workflows/test-unit.yml +0 -30
- .github/workflows/update-api-stubs.yml +0 -56
- .github/workflows/update-version.yml +0 -58
- .github/workflows/windows_release_dependencies.yml +0 -71
- .github/workflows/windows_release_nightly_pytorch.yml +0 -93
- .github/workflows/windows_release_package.yml +0 -102
.github/workflows/pullrequest-ci-run.yml
DELETED
|
@@ -1,53 +0,0 @@
|
|
| 1 |
-
# This is the GitHub Workflow that drives full-GPU-enabled tests of pull requests to ComfyUI, when the 'Run-CI-Test' label is added
|
| 2 |
-
# Results are reported as checkmarks on the commits, as well as onto https://ci.comfy.org/
|
| 3 |
-
name: Pull Request CI Workflow Runs
|
| 4 |
-
on:
|
| 5 |
-
pull_request_target:
|
| 6 |
-
types: [labeled]
|
| 7 |
-
|
| 8 |
-
jobs:
|
| 9 |
-
pr-test-stable:
|
| 10 |
-
if: ${{ github.event.label.name == 'Run-CI-Test' }}
|
| 11 |
-
strategy:
|
| 12 |
-
fail-fast: false
|
| 13 |
-
matrix:
|
| 14 |
-
os: [macos, linux, windows]
|
| 15 |
-
python_version: ["3.9", "3.10", "3.11", "3.12"]
|
| 16 |
-
cuda_version: ["12.1"]
|
| 17 |
-
torch_version: ["stable"]
|
| 18 |
-
include:
|
| 19 |
-
- os: macos
|
| 20 |
-
runner_label: [self-hosted, macOS]
|
| 21 |
-
flags: "--use-pytorch-cross-attention"
|
| 22 |
-
- os: linux
|
| 23 |
-
runner_label: [self-hosted, Linux]
|
| 24 |
-
flags: ""
|
| 25 |
-
- os: windows
|
| 26 |
-
runner_label: [self-hosted, Windows]
|
| 27 |
-
flags: ""
|
| 28 |
-
runs-on: ${{ matrix.runner_label }}
|
| 29 |
-
steps:
|
| 30 |
-
- name: Test Workflows
|
| 31 |
-
uses: comfy-org/comfy-action@main
|
| 32 |
-
with:
|
| 33 |
-
os: ${{ matrix.os }}
|
| 34 |
-
python_version: ${{ matrix.python_version }}
|
| 35 |
-
torch_version: ${{ matrix.torch_version }}
|
| 36 |
-
google_credentials: ${{ secrets.GCS_SERVICE_ACCOUNT_JSON }}
|
| 37 |
-
comfyui_flags: ${{ matrix.flags }}
|
| 38 |
-
use_prior_commit: 'true'
|
| 39 |
-
comment:
|
| 40 |
-
if: ${{ github.event.label.name == 'Run-CI-Test' }}
|
| 41 |
-
runs-on: ubuntu-latest
|
| 42 |
-
permissions:
|
| 43 |
-
pull-requests: write
|
| 44 |
-
steps:
|
| 45 |
-
- uses: actions/github-script@v6
|
| 46 |
-
with:
|
| 47 |
-
script: |
|
| 48 |
-
github.rest.issues.createComment({
|
| 49 |
-
issue_number: context.issue.number,
|
| 50 |
-
owner: context.repo.owner,
|
| 51 |
-
repo: context.repo.repo,
|
| 52 |
-
body: '(Automated Bot Message) CI Tests are running, you can view the results at https://ci.comfy.org/?branch=${{ github.event.pull_request.number }}%2Fmerge'
|
| 53 |
-
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/release-webhook.yml
DELETED
|
@@ -1,108 +0,0 @@
|
|
| 1 |
-
name: Release Webhook
|
| 2 |
-
|
| 3 |
-
on:
|
| 4 |
-
release:
|
| 5 |
-
types: [published]
|
| 6 |
-
|
| 7 |
-
jobs:
|
| 8 |
-
send-webhook:
|
| 9 |
-
runs-on: ubuntu-latest
|
| 10 |
-
steps:
|
| 11 |
-
- name: Send release webhook
|
| 12 |
-
env:
|
| 13 |
-
WEBHOOK_URL: ${{ secrets.RELEASE_GITHUB_WEBHOOK_URL }}
|
| 14 |
-
WEBHOOK_SECRET: ${{ secrets.RELEASE_GITHUB_WEBHOOK_SECRET }}
|
| 15 |
-
run: |
|
| 16 |
-
# Generate UUID for delivery ID
|
| 17 |
-
DELIVERY_ID=$(uuidgen)
|
| 18 |
-
HOOK_ID="release-webhook-$(date +%s)"
|
| 19 |
-
|
| 20 |
-
# Create webhook payload matching GitHub release webhook format
|
| 21 |
-
PAYLOAD=$(cat <<EOF
|
| 22 |
-
{
|
| 23 |
-
"action": "published",
|
| 24 |
-
"release": {
|
| 25 |
-
"id": ${{ github.event.release.id }},
|
| 26 |
-
"node_id": "${{ github.event.release.node_id }}",
|
| 27 |
-
"url": "${{ github.event.release.url }}",
|
| 28 |
-
"html_url": "${{ github.event.release.html_url }}",
|
| 29 |
-
"assets_url": "${{ github.event.release.assets_url }}",
|
| 30 |
-
"upload_url": "${{ github.event.release.upload_url }}",
|
| 31 |
-
"tag_name": "${{ github.event.release.tag_name }}",
|
| 32 |
-
"target_commitish": "${{ github.event.release.target_commitish }}",
|
| 33 |
-
"name": ${{ toJSON(github.event.release.name) }},
|
| 34 |
-
"body": ${{ toJSON(github.event.release.body) }},
|
| 35 |
-
"draft": ${{ github.event.release.draft }},
|
| 36 |
-
"prerelease": ${{ github.event.release.prerelease }},
|
| 37 |
-
"created_at": "${{ github.event.release.created_at }}",
|
| 38 |
-
"published_at": "${{ github.event.release.published_at }}",
|
| 39 |
-
"author": {
|
| 40 |
-
"login": "${{ github.event.release.author.login }}",
|
| 41 |
-
"id": ${{ github.event.release.author.id }},
|
| 42 |
-
"node_id": "${{ github.event.release.author.node_id }}",
|
| 43 |
-
"avatar_url": "${{ github.event.release.author.avatar_url }}",
|
| 44 |
-
"url": "${{ github.event.release.author.url }}",
|
| 45 |
-
"html_url": "${{ github.event.release.author.html_url }}",
|
| 46 |
-
"type": "${{ github.event.release.author.type }}",
|
| 47 |
-
"site_admin": ${{ github.event.release.author.site_admin }}
|
| 48 |
-
},
|
| 49 |
-
"tarball_url": "${{ github.event.release.tarball_url }}",
|
| 50 |
-
"zipball_url": "${{ github.event.release.zipball_url }}",
|
| 51 |
-
"assets": ${{ toJSON(github.event.release.assets) }}
|
| 52 |
-
},
|
| 53 |
-
"repository": {
|
| 54 |
-
"id": ${{ github.event.repository.id }},
|
| 55 |
-
"node_id": "${{ github.event.repository.node_id }}",
|
| 56 |
-
"name": "${{ github.event.repository.name }}",
|
| 57 |
-
"full_name": "${{ github.event.repository.full_name }}",
|
| 58 |
-
"private": ${{ github.event.repository.private }},
|
| 59 |
-
"owner": {
|
| 60 |
-
"login": "${{ github.event.repository.owner.login }}",
|
| 61 |
-
"id": ${{ github.event.repository.owner.id }},
|
| 62 |
-
"node_id": "${{ github.event.repository.owner.node_id }}",
|
| 63 |
-
"avatar_url": "${{ github.event.repository.owner.avatar_url }}",
|
| 64 |
-
"url": "${{ github.event.repository.owner.url }}",
|
| 65 |
-
"html_url": "${{ github.event.repository.owner.html_url }}",
|
| 66 |
-
"type": "${{ github.event.repository.owner.type }}",
|
| 67 |
-
"site_admin": ${{ github.event.repository.owner.site_admin }}
|
| 68 |
-
},
|
| 69 |
-
"html_url": "${{ github.event.repository.html_url }}",
|
| 70 |
-
"clone_url": "${{ github.event.repository.clone_url }}",
|
| 71 |
-
"git_url": "${{ github.event.repository.git_url }}",
|
| 72 |
-
"ssh_url": "${{ github.event.repository.ssh_url }}",
|
| 73 |
-
"url": "${{ github.event.repository.url }}",
|
| 74 |
-
"created_at": "${{ github.event.repository.created_at }}",
|
| 75 |
-
"updated_at": "${{ github.event.repository.updated_at }}",
|
| 76 |
-
"pushed_at": "${{ github.event.repository.pushed_at }}",
|
| 77 |
-
"default_branch": "${{ github.event.repository.default_branch }}",
|
| 78 |
-
"fork": ${{ github.event.repository.fork }}
|
| 79 |
-
},
|
| 80 |
-
"sender": {
|
| 81 |
-
"login": "${{ github.event.sender.login }}",
|
| 82 |
-
"id": ${{ github.event.sender.id }},
|
| 83 |
-
"node_id": "${{ github.event.sender.node_id }}",
|
| 84 |
-
"avatar_url": "${{ github.event.sender.avatar_url }}",
|
| 85 |
-
"url": "${{ github.event.sender.url }}",
|
| 86 |
-
"html_url": "${{ github.event.sender.html_url }}",
|
| 87 |
-
"type": "${{ github.event.sender.type }}",
|
| 88 |
-
"site_admin": ${{ github.event.sender.site_admin }}
|
| 89 |
-
}
|
| 90 |
-
}
|
| 91 |
-
EOF
|
| 92 |
-
)
|
| 93 |
-
|
| 94 |
-
# Generate HMAC-SHA256 signature
|
| 95 |
-
SIGNATURE=$(echo -n "$PAYLOAD" | openssl dgst -sha256 -hmac "$WEBHOOK_SECRET" -hex | cut -d' ' -f2)
|
| 96 |
-
|
| 97 |
-
# Send webhook with required headers
|
| 98 |
-
curl -X POST "$WEBHOOK_URL" \
|
| 99 |
-
-H "Content-Type: application/json" \
|
| 100 |
-
-H "X-GitHub-Event: release" \
|
| 101 |
-
-H "X-GitHub-Delivery: $DELIVERY_ID" \
|
| 102 |
-
-H "X-GitHub-Hook-ID: $HOOK_ID" \
|
| 103 |
-
-H "X-Hub-Signature-256: sha256=$SIGNATURE" \
|
| 104 |
-
-H "User-Agent: GitHub-Actions-Webhook/1.0" \
|
| 105 |
-
-d "$PAYLOAD" \
|
| 106 |
-
--fail --silent --show-error
|
| 107 |
-
|
| 108 |
-
echo "✅ Release webhook sent successfully"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/ruff.yml
DELETED
|
@@ -1,23 +0,0 @@
|
|
| 1 |
-
name: Python Linting
|
| 2 |
-
|
| 3 |
-
on: [push, pull_request]
|
| 4 |
-
|
| 5 |
-
jobs:
|
| 6 |
-
ruff:
|
| 7 |
-
name: Run Ruff
|
| 8 |
-
runs-on: ubuntu-latest
|
| 9 |
-
|
| 10 |
-
steps:
|
| 11 |
-
- name: Checkout repository
|
| 12 |
-
uses: actions/checkout@v4
|
| 13 |
-
|
| 14 |
-
- name: Set up Python
|
| 15 |
-
uses: actions/setup-python@v2
|
| 16 |
-
with:
|
| 17 |
-
python-version: 3.x
|
| 18 |
-
|
| 19 |
-
- name: Install Ruff
|
| 20 |
-
run: pip install ruff
|
| 21 |
-
|
| 22 |
-
- name: Run Ruff
|
| 23 |
-
run: ruff check .
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/stable-release.yml
DELETED
|
@@ -1,105 +0,0 @@
|
|
| 1 |
-
|
| 2 |
-
name: "Release Stable Version"
|
| 3 |
-
|
| 4 |
-
on:
|
| 5 |
-
workflow_dispatch:
|
| 6 |
-
inputs:
|
| 7 |
-
git_tag:
|
| 8 |
-
description: 'Git tag'
|
| 9 |
-
required: true
|
| 10 |
-
type: string
|
| 11 |
-
cu:
|
| 12 |
-
description: 'CUDA version'
|
| 13 |
-
required: true
|
| 14 |
-
type: string
|
| 15 |
-
default: "128"
|
| 16 |
-
python_minor:
|
| 17 |
-
description: 'Python minor version'
|
| 18 |
-
required: true
|
| 19 |
-
type: string
|
| 20 |
-
default: "12"
|
| 21 |
-
python_patch:
|
| 22 |
-
description: 'Python patch version'
|
| 23 |
-
required: true
|
| 24 |
-
type: string
|
| 25 |
-
default: "10"
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
jobs:
|
| 29 |
-
package_comfy_windows:
|
| 30 |
-
permissions:
|
| 31 |
-
contents: "write"
|
| 32 |
-
packages: "write"
|
| 33 |
-
pull-requests: "read"
|
| 34 |
-
runs-on: windows-latest
|
| 35 |
-
steps:
|
| 36 |
-
- uses: actions/checkout@v4
|
| 37 |
-
with:
|
| 38 |
-
ref: ${{ inputs.git_tag }}
|
| 39 |
-
fetch-depth: 150
|
| 40 |
-
persist-credentials: false
|
| 41 |
-
- uses: actions/cache/restore@v4
|
| 42 |
-
id: cache
|
| 43 |
-
with:
|
| 44 |
-
path: |
|
| 45 |
-
cu${{ inputs.cu }}_python_deps.tar
|
| 46 |
-
update_comfyui_and_python_dependencies.bat
|
| 47 |
-
key: ${{ runner.os }}-build-cu${{ inputs.cu }}-${{ inputs.python_minor }}
|
| 48 |
-
- shell: bash
|
| 49 |
-
run: |
|
| 50 |
-
mv cu${{ inputs.cu }}_python_deps.tar ../
|
| 51 |
-
mv update_comfyui_and_python_dependencies.bat ../
|
| 52 |
-
cd ..
|
| 53 |
-
tar xf cu${{ inputs.cu }}_python_deps.tar
|
| 54 |
-
pwd
|
| 55 |
-
ls
|
| 56 |
-
|
| 57 |
-
- shell: bash
|
| 58 |
-
run: |
|
| 59 |
-
cd ..
|
| 60 |
-
cp -r ComfyUI ComfyUI_copy
|
| 61 |
-
curl https://www.python.org/ftp/python/3.${{ inputs.python_minor }}.${{ inputs.python_patch }}/python-3.${{ inputs.python_minor }}.${{ inputs.python_patch }}-embed-amd64.zip -o python_embeded.zip
|
| 62 |
-
unzip python_embeded.zip -d python_embeded
|
| 63 |
-
cd python_embeded
|
| 64 |
-
echo ${{ env.MINOR_VERSION }}
|
| 65 |
-
echo 'import site' >> ./python3${{ inputs.python_minor }}._pth
|
| 66 |
-
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
|
| 67 |
-
./python.exe get-pip.py
|
| 68 |
-
./python.exe -s -m pip install ../cu${{ inputs.cu }}_python_deps/*
|
| 69 |
-
sed -i '1i../ComfyUI' ./python3${{ inputs.python_minor }}._pth
|
| 70 |
-
cd ..
|
| 71 |
-
|
| 72 |
-
git clone --depth 1 https://github.com/comfyanonymous/taesd
|
| 73 |
-
cp taesd/*.safetensors ./ComfyUI_copy/models/vae_approx/
|
| 74 |
-
|
| 75 |
-
mkdir ComfyUI_windows_portable
|
| 76 |
-
mv python_embeded ComfyUI_windows_portable
|
| 77 |
-
mv ComfyUI_copy ComfyUI_windows_portable/ComfyUI
|
| 78 |
-
|
| 79 |
-
cd ComfyUI_windows_portable
|
| 80 |
-
|
| 81 |
-
mkdir update
|
| 82 |
-
cp -r ComfyUI/.ci/update_windows/* ./update/
|
| 83 |
-
cp -r ComfyUI/.ci/windows_base_files/* ./
|
| 84 |
-
cp ../update_comfyui_and_python_dependencies.bat ./update/
|
| 85 |
-
|
| 86 |
-
cd ..
|
| 87 |
-
|
| 88 |
-
"C:\Program Files\7-Zip\7z.exe" a -t7z -m0=lzma2 -mx=9 -mfb=128 -md=512m -ms=on -mf=BCJ2 ComfyUI_windows_portable.7z ComfyUI_windows_portable
|
| 89 |
-
mv ComfyUI_windows_portable.7z ComfyUI/ComfyUI_windows_portable_nvidia.7z
|
| 90 |
-
|
| 91 |
-
cd ComfyUI_windows_portable
|
| 92 |
-
python_embeded/python.exe -s ComfyUI/main.py --quick-test-for-ci --cpu
|
| 93 |
-
|
| 94 |
-
python_embeded/python.exe -s ./update/update.py ComfyUI/
|
| 95 |
-
|
| 96 |
-
ls
|
| 97 |
-
|
| 98 |
-
- name: Upload binaries to release
|
| 99 |
-
uses: svenstaro/upload-release-action@v2
|
| 100 |
-
with:
|
| 101 |
-
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
| 102 |
-
file: ComfyUI_windows_portable_nvidia.7z
|
| 103 |
-
tag: ${{ inputs.git_tag }}
|
| 104 |
-
overwrite: true
|
| 105 |
-
draft: true
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/stale-issues.yml
DELETED
|
@@ -1,21 +0,0 @@
|
|
| 1 |
-
name: 'Close stale issues'
|
| 2 |
-
on:
|
| 3 |
-
schedule:
|
| 4 |
-
# Run daily at 430 am PT
|
| 5 |
-
- cron: '30 11 * * *'
|
| 6 |
-
permissions:
|
| 7 |
-
issues: write
|
| 8 |
-
|
| 9 |
-
jobs:
|
| 10 |
-
stale:
|
| 11 |
-
runs-on: ubuntu-latest
|
| 12 |
-
steps:
|
| 13 |
-
- uses: actions/stale@v9
|
| 14 |
-
with:
|
| 15 |
-
stale-issue-message: "This issue is being marked stale because it has not had any activity for 30 days. Reply below within 7 days if your issue still isn't solved, and it will be left open. Otherwise, the issue will be closed automatically."
|
| 16 |
-
days-before-stale: 30
|
| 17 |
-
days-before-close: 7
|
| 18 |
-
stale-issue-label: 'Stale'
|
| 19 |
-
only-labels: 'User Support'
|
| 20 |
-
exempt-all-assignees: true
|
| 21 |
-
exempt-all-milestones: true
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/test-build.yml
DELETED
|
@@ -1,31 +0,0 @@
|
|
| 1 |
-
name: Build package
|
| 2 |
-
|
| 3 |
-
#
|
| 4 |
-
# This workflow is a test of the python package build.
|
| 5 |
-
# Install Python dependencies across different Python versions.
|
| 6 |
-
#
|
| 7 |
-
|
| 8 |
-
on:
|
| 9 |
-
push:
|
| 10 |
-
paths:
|
| 11 |
-
- "requirements.txt"
|
| 12 |
-
- ".github/workflows/test-build.yml"
|
| 13 |
-
|
| 14 |
-
jobs:
|
| 15 |
-
build:
|
| 16 |
-
name: Build Test
|
| 17 |
-
runs-on: ubuntu-latest
|
| 18 |
-
strategy:
|
| 19 |
-
fail-fast: false
|
| 20 |
-
matrix:
|
| 21 |
-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
| 22 |
-
steps:
|
| 23 |
-
- uses: actions/checkout@v4
|
| 24 |
-
- name: Set up Python ${{ matrix.python-version }}
|
| 25 |
-
uses: actions/setup-python@v4
|
| 26 |
-
with:
|
| 27 |
-
python-version: ${{ matrix.python-version }}
|
| 28 |
-
- name: Install dependencies
|
| 29 |
-
run: |
|
| 30 |
-
python -m pip install --upgrade pip
|
| 31 |
-
pip install -r requirements.txt
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/test-ci.yml
DELETED
|
@@ -1,96 +0,0 @@
|
|
| 1 |
-
# This is the GitHub Workflow that drives automatic full-GPU-enabled tests of all new commits to the master branch of ComfyUI
|
| 2 |
-
# Results are reported as checkmarks on the commits, as well as onto https://ci.comfy.org/
|
| 3 |
-
name: Full Comfy CI Workflow Runs
|
| 4 |
-
on:
|
| 5 |
-
push:
|
| 6 |
-
branches:
|
| 7 |
-
- master
|
| 8 |
-
paths-ignore:
|
| 9 |
-
- 'app/**'
|
| 10 |
-
- 'input/**'
|
| 11 |
-
- 'output/**'
|
| 12 |
-
- 'notebooks/**'
|
| 13 |
-
- 'script_examples/**'
|
| 14 |
-
- '.github/**'
|
| 15 |
-
- 'web/**'
|
| 16 |
-
workflow_dispatch:
|
| 17 |
-
|
| 18 |
-
jobs:
|
| 19 |
-
test-stable:
|
| 20 |
-
strategy:
|
| 21 |
-
fail-fast: false
|
| 22 |
-
matrix:
|
| 23 |
-
# os: [macos, linux, windows]
|
| 24 |
-
os: [macos, linux]
|
| 25 |
-
python_version: ["3.9", "3.10", "3.11", "3.12"]
|
| 26 |
-
cuda_version: ["12.1"]
|
| 27 |
-
torch_version: ["stable"]
|
| 28 |
-
include:
|
| 29 |
-
- os: macos
|
| 30 |
-
runner_label: [self-hosted, macOS]
|
| 31 |
-
flags: "--use-pytorch-cross-attention"
|
| 32 |
-
- os: linux
|
| 33 |
-
runner_label: [self-hosted, Linux]
|
| 34 |
-
flags: ""
|
| 35 |
-
# - os: windows
|
| 36 |
-
# runner_label: [self-hosted, Windows]
|
| 37 |
-
# flags: ""
|
| 38 |
-
runs-on: ${{ matrix.runner_label }}
|
| 39 |
-
steps:
|
| 40 |
-
- name: Test Workflows
|
| 41 |
-
uses: comfy-org/comfy-action@main
|
| 42 |
-
with:
|
| 43 |
-
os: ${{ matrix.os }}
|
| 44 |
-
python_version: ${{ matrix.python_version }}
|
| 45 |
-
torch_version: ${{ matrix.torch_version }}
|
| 46 |
-
google_credentials: ${{ secrets.GCS_SERVICE_ACCOUNT_JSON }}
|
| 47 |
-
comfyui_flags: ${{ matrix.flags }}
|
| 48 |
-
|
| 49 |
-
# test-win-nightly:
|
| 50 |
-
# strategy:
|
| 51 |
-
# fail-fast: true
|
| 52 |
-
# matrix:
|
| 53 |
-
# os: [windows]
|
| 54 |
-
# python_version: ["3.9", "3.10", "3.11", "3.12"]
|
| 55 |
-
# cuda_version: ["12.1"]
|
| 56 |
-
# torch_version: ["nightly"]
|
| 57 |
-
# include:
|
| 58 |
-
# - os: windows
|
| 59 |
-
# runner_label: [self-hosted, Windows]
|
| 60 |
-
# flags: ""
|
| 61 |
-
# runs-on: ${{ matrix.runner_label }}
|
| 62 |
-
# steps:
|
| 63 |
-
# - name: Test Workflows
|
| 64 |
-
# uses: comfy-org/comfy-action@main
|
| 65 |
-
# with:
|
| 66 |
-
# os: ${{ matrix.os }}
|
| 67 |
-
# python_version: ${{ matrix.python_version }}
|
| 68 |
-
# torch_version: ${{ matrix.torch_version }}
|
| 69 |
-
# google_credentials: ${{ secrets.GCS_SERVICE_ACCOUNT_JSON }}
|
| 70 |
-
# comfyui_flags: ${{ matrix.flags }}
|
| 71 |
-
|
| 72 |
-
test-unix-nightly:
|
| 73 |
-
strategy:
|
| 74 |
-
fail-fast: false
|
| 75 |
-
matrix:
|
| 76 |
-
os: [macos, linux]
|
| 77 |
-
python_version: ["3.11"]
|
| 78 |
-
cuda_version: ["12.1"]
|
| 79 |
-
torch_version: ["nightly"]
|
| 80 |
-
include:
|
| 81 |
-
- os: macos
|
| 82 |
-
runner_label: [self-hosted, macOS]
|
| 83 |
-
flags: "--use-pytorch-cross-attention"
|
| 84 |
-
- os: linux
|
| 85 |
-
runner_label: [self-hosted, Linux]
|
| 86 |
-
flags: ""
|
| 87 |
-
runs-on: ${{ matrix.runner_label }}
|
| 88 |
-
steps:
|
| 89 |
-
- name: Test Workflows
|
| 90 |
-
uses: comfy-org/comfy-action@main
|
| 91 |
-
with:
|
| 92 |
-
os: ${{ matrix.os }}
|
| 93 |
-
python_version: ${{ matrix.python_version }}
|
| 94 |
-
torch_version: ${{ matrix.torch_version }}
|
| 95 |
-
google_credentials: ${{ secrets.GCS_SERVICE_ACCOUNT_JSON }}
|
| 96 |
-
comfyui_flags: ${{ matrix.flags }}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/test-launch.yml
DELETED
|
@@ -1,45 +0,0 @@
|
|
| 1 |
-
name: Test server launches without errors
|
| 2 |
-
|
| 3 |
-
on:
|
| 4 |
-
push:
|
| 5 |
-
branches: [ main, master ]
|
| 6 |
-
pull_request:
|
| 7 |
-
branches: [ main, master ]
|
| 8 |
-
|
| 9 |
-
jobs:
|
| 10 |
-
test:
|
| 11 |
-
runs-on: ubuntu-latest
|
| 12 |
-
steps:
|
| 13 |
-
- name: Checkout ComfyUI
|
| 14 |
-
uses: actions/checkout@v4
|
| 15 |
-
with:
|
| 16 |
-
repository: "comfyanonymous/ComfyUI"
|
| 17 |
-
path: "ComfyUI"
|
| 18 |
-
- uses: actions/setup-python@v4
|
| 19 |
-
with:
|
| 20 |
-
python-version: '3.10'
|
| 21 |
-
- name: Install requirements
|
| 22 |
-
run: |
|
| 23 |
-
python -m pip install --upgrade pip
|
| 24 |
-
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
|
| 25 |
-
pip install -r requirements.txt
|
| 26 |
-
pip install wait-for-it
|
| 27 |
-
working-directory: ComfyUI
|
| 28 |
-
- name: Start ComfyUI server
|
| 29 |
-
run: |
|
| 30 |
-
python main.py --cpu 2>&1 | tee console_output.log &
|
| 31 |
-
wait-for-it --service 127.0.0.1:8188 -t 30
|
| 32 |
-
working-directory: ComfyUI
|
| 33 |
-
- name: Check for unhandled exceptions in server log
|
| 34 |
-
run: |
|
| 35 |
-
if grep -qE "Exception|Error" console_output.log; then
|
| 36 |
-
echo "Unhandled exception/error found in server log."
|
| 37 |
-
exit 1
|
| 38 |
-
fi
|
| 39 |
-
working-directory: ComfyUI
|
| 40 |
-
- uses: actions/upload-artifact@v4
|
| 41 |
-
if: always()
|
| 42 |
-
with:
|
| 43 |
-
name: console-output
|
| 44 |
-
path: ComfyUI/console_output.log
|
| 45 |
-
retention-days: 30
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/test-unit.yml
DELETED
|
@@ -1,30 +0,0 @@
|
|
| 1 |
-
name: Unit Tests
|
| 2 |
-
|
| 3 |
-
on:
|
| 4 |
-
push:
|
| 5 |
-
branches: [ main, master ]
|
| 6 |
-
pull_request:
|
| 7 |
-
branches: [ main, master ]
|
| 8 |
-
|
| 9 |
-
jobs:
|
| 10 |
-
test:
|
| 11 |
-
strategy:
|
| 12 |
-
matrix:
|
| 13 |
-
os: [ubuntu-latest, windows-latest, macos-latest]
|
| 14 |
-
runs-on: ${{ matrix.os }}
|
| 15 |
-
continue-on-error: true
|
| 16 |
-
steps:
|
| 17 |
-
- uses: actions/checkout@v4
|
| 18 |
-
- name: Set up Python
|
| 19 |
-
uses: actions/setup-python@v4
|
| 20 |
-
with:
|
| 21 |
-
python-version: '3.12'
|
| 22 |
-
- name: Install requirements
|
| 23 |
-
run: |
|
| 24 |
-
python -m pip install --upgrade pip
|
| 25 |
-
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
|
| 26 |
-
pip install -r requirements.txt
|
| 27 |
-
- name: Run Unit Tests
|
| 28 |
-
run: |
|
| 29 |
-
pip install -r tests-unit/requirements.txt
|
| 30 |
-
python -m pytest tests-unit
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/update-api-stubs.yml
DELETED
|
@@ -1,56 +0,0 @@
|
|
| 1 |
-
name: Generate Pydantic Stubs from api.comfy.org
|
| 2 |
-
|
| 3 |
-
on:
|
| 4 |
-
schedule:
|
| 5 |
-
- cron: '0 0 * * 1'
|
| 6 |
-
workflow_dispatch:
|
| 7 |
-
|
| 8 |
-
jobs:
|
| 9 |
-
generate-models:
|
| 10 |
-
runs-on: ubuntu-latest
|
| 11 |
-
|
| 12 |
-
steps:
|
| 13 |
-
- name: Checkout repository
|
| 14 |
-
uses: actions/checkout@v4
|
| 15 |
-
|
| 16 |
-
- name: Set up Python
|
| 17 |
-
uses: actions/setup-python@v4
|
| 18 |
-
with:
|
| 19 |
-
python-version: '3.10'
|
| 20 |
-
|
| 21 |
-
- name: Install dependencies
|
| 22 |
-
run: |
|
| 23 |
-
python -m pip install --upgrade pip
|
| 24 |
-
pip install 'datamodel-code-generator[http]'
|
| 25 |
-
npm install @redocly/cli
|
| 26 |
-
|
| 27 |
-
- name: Download OpenAPI spec
|
| 28 |
-
run: |
|
| 29 |
-
curl -o openapi.yaml https://api.comfy.org/openapi
|
| 30 |
-
|
| 31 |
-
- name: Filter OpenAPI spec with Redocly
|
| 32 |
-
run: |
|
| 33 |
-
npx @redocly/cli bundle openapi.yaml --output filtered-openapi.yaml --config comfy_api_nodes/redocly.yaml --remove-unused-components
|
| 34 |
-
|
| 35 |
-
- name: Generate API models
|
| 36 |
-
run: |
|
| 37 |
-
datamodel-codegen --use-subclass-enum --input filtered-openapi.yaml --output comfy_api_nodes/apis --output-model-type pydantic_v2.BaseModel
|
| 38 |
-
|
| 39 |
-
- name: Check for changes
|
| 40 |
-
id: git-check
|
| 41 |
-
run: |
|
| 42 |
-
git diff --exit-code comfy_api_nodes/apis || echo "changes=true" >> $GITHUB_OUTPUT
|
| 43 |
-
|
| 44 |
-
- name: Create Pull Request
|
| 45 |
-
if: steps.git-check.outputs.changes == 'true'
|
| 46 |
-
uses: peter-evans/create-pull-request@v5
|
| 47 |
-
with:
|
| 48 |
-
commit-message: 'chore: update API models from OpenAPI spec'
|
| 49 |
-
title: 'Update API models from api.comfy.org'
|
| 50 |
-
body: |
|
| 51 |
-
This PR updates the API models based on the latest api.comfy.org OpenAPI specification.
|
| 52 |
-
|
| 53 |
-
Generated automatically by the a Github workflow.
|
| 54 |
-
branch: update-api-stubs
|
| 55 |
-
delete-branch: true
|
| 56 |
-
base: master
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/update-version.yml
DELETED
|
@@ -1,58 +0,0 @@
|
|
| 1 |
-
name: Update Version File
|
| 2 |
-
|
| 3 |
-
on:
|
| 4 |
-
pull_request:
|
| 5 |
-
paths:
|
| 6 |
-
- "pyproject.toml"
|
| 7 |
-
branches:
|
| 8 |
-
- master
|
| 9 |
-
|
| 10 |
-
jobs:
|
| 11 |
-
update-version:
|
| 12 |
-
runs-on: ubuntu-latest
|
| 13 |
-
# Don't run on fork PRs
|
| 14 |
-
if: github.event.pull_request.head.repo.full_name == github.repository
|
| 15 |
-
permissions:
|
| 16 |
-
pull-requests: write
|
| 17 |
-
contents: write
|
| 18 |
-
|
| 19 |
-
steps:
|
| 20 |
-
- name: Checkout repository
|
| 21 |
-
uses: actions/checkout@v4
|
| 22 |
-
|
| 23 |
-
- name: Set up Python
|
| 24 |
-
uses: actions/setup-python@v4
|
| 25 |
-
with:
|
| 26 |
-
python-version: "3.11"
|
| 27 |
-
|
| 28 |
-
- name: Install dependencies
|
| 29 |
-
run: |
|
| 30 |
-
python -m pip install --upgrade pip
|
| 31 |
-
|
| 32 |
-
- name: Update comfyui_version.py
|
| 33 |
-
run: |
|
| 34 |
-
# Read version from pyproject.toml and update comfyui_version.py
|
| 35 |
-
python -c '
|
| 36 |
-
import tomllib
|
| 37 |
-
|
| 38 |
-
# Read version from pyproject.toml
|
| 39 |
-
with open("pyproject.toml", "rb") as f:
|
| 40 |
-
config = tomllib.load(f)
|
| 41 |
-
version = config["project"]["version"]
|
| 42 |
-
|
| 43 |
-
# Write version to comfyui_version.py
|
| 44 |
-
with open("comfyui_version.py", "w") as f:
|
| 45 |
-
f.write("# This file is automatically generated by the build process when version is\n")
|
| 46 |
-
f.write("# updated in pyproject.toml.\n")
|
| 47 |
-
f.write(f"__version__ = \"{version}\"\n")
|
| 48 |
-
'
|
| 49 |
-
|
| 50 |
-
- name: Commit changes
|
| 51 |
-
run: |
|
| 52 |
-
git config --local user.name "github-actions"
|
| 53 |
-
git config --local user.email "github-actions@github.com"
|
| 54 |
-
git fetch origin ${{ github.head_ref }}
|
| 55 |
-
git checkout -B ${{ github.head_ref }} origin/${{ github.head_ref }}
|
| 56 |
-
git add comfyui_version.py
|
| 57 |
-
git diff --quiet && git diff --staged --quiet || git commit -m "chore: Update comfyui_version.py to match pyproject.toml"
|
| 58 |
-
git push origin HEAD:${{ github.head_ref }}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/windows_release_dependencies.yml
DELETED
|
@@ -1,71 +0,0 @@
|
|
| 1 |
-
name: "Windows Release dependencies"
|
| 2 |
-
|
| 3 |
-
on:
|
| 4 |
-
workflow_dispatch:
|
| 5 |
-
inputs:
|
| 6 |
-
xformers:
|
| 7 |
-
description: 'xformers version'
|
| 8 |
-
required: false
|
| 9 |
-
type: string
|
| 10 |
-
default: ""
|
| 11 |
-
extra_dependencies:
|
| 12 |
-
description: 'extra dependencies'
|
| 13 |
-
required: false
|
| 14 |
-
type: string
|
| 15 |
-
default: ""
|
| 16 |
-
cu:
|
| 17 |
-
description: 'cuda version'
|
| 18 |
-
required: true
|
| 19 |
-
type: string
|
| 20 |
-
default: "128"
|
| 21 |
-
|
| 22 |
-
python_minor:
|
| 23 |
-
description: 'python minor version'
|
| 24 |
-
required: true
|
| 25 |
-
type: string
|
| 26 |
-
default: "12"
|
| 27 |
-
|
| 28 |
-
python_patch:
|
| 29 |
-
description: 'python patch version'
|
| 30 |
-
required: true
|
| 31 |
-
type: string
|
| 32 |
-
default: "10"
|
| 33 |
-
# push:
|
| 34 |
-
# branches:
|
| 35 |
-
# - master
|
| 36 |
-
|
| 37 |
-
jobs:
|
| 38 |
-
build_dependencies:
|
| 39 |
-
runs-on: windows-latest
|
| 40 |
-
steps:
|
| 41 |
-
- uses: actions/checkout@v4
|
| 42 |
-
- uses: actions/setup-python@v5
|
| 43 |
-
with:
|
| 44 |
-
python-version: 3.${{ inputs.python_minor }}.${{ inputs.python_patch }}
|
| 45 |
-
|
| 46 |
-
- shell: bash
|
| 47 |
-
run: |
|
| 48 |
-
echo "@echo off
|
| 49 |
-
call update_comfyui.bat nopause
|
| 50 |
-
echo -
|
| 51 |
-
echo This will try to update pytorch and all python dependencies.
|
| 52 |
-
echo -
|
| 53 |
-
echo If you just want to update normally, close this and run update_comfyui.bat instead.
|
| 54 |
-
echo -
|
| 55 |
-
pause
|
| 56 |
-
..\python_embeded\python.exe -s -m pip install --upgrade torch torchvision torchaudio ${{ inputs.xformers }} --extra-index-url https://download.pytorch.org/whl/cu${{ inputs.cu }} -r ../ComfyUI/requirements.txt pygit2
|
| 57 |
-
pause" > update_comfyui_and_python_dependencies.bat
|
| 58 |
-
|
| 59 |
-
python -m pip wheel --no-cache-dir torch torchvision torchaudio ${{ inputs.xformers }} ${{ inputs.extra_dependencies }} --extra-index-url https://download.pytorch.org/whl/cu${{ inputs.cu }} -r requirements.txt pygit2 -w ./temp_wheel_dir
|
| 60 |
-
python -m pip install --no-cache-dir ./temp_wheel_dir/*
|
| 61 |
-
echo installed basic
|
| 62 |
-
ls -lah temp_wheel_dir
|
| 63 |
-
mv temp_wheel_dir cu${{ inputs.cu }}_python_deps
|
| 64 |
-
tar cf cu${{ inputs.cu }}_python_deps.tar cu${{ inputs.cu }}_python_deps
|
| 65 |
-
|
| 66 |
-
- uses: actions/cache/save@v4
|
| 67 |
-
with:
|
| 68 |
-
path: |
|
| 69 |
-
cu${{ inputs.cu }}_python_deps.tar
|
| 70 |
-
update_comfyui_and_python_dependencies.bat
|
| 71 |
-
key: ${{ runner.os }}-build-cu${{ inputs.cu }}-${{ inputs.python_minor }}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/windows_release_nightly_pytorch.yml
DELETED
|
@@ -1,93 +0,0 @@
|
|
| 1 |
-
name: "Windows Release Nightly pytorch"
|
| 2 |
-
|
| 3 |
-
on:
|
| 4 |
-
workflow_dispatch:
|
| 5 |
-
inputs:
|
| 6 |
-
cu:
|
| 7 |
-
description: 'cuda version'
|
| 8 |
-
required: true
|
| 9 |
-
type: string
|
| 10 |
-
default: "129"
|
| 11 |
-
|
| 12 |
-
python_minor:
|
| 13 |
-
description: 'python minor version'
|
| 14 |
-
required: true
|
| 15 |
-
type: string
|
| 16 |
-
default: "13"
|
| 17 |
-
|
| 18 |
-
python_patch:
|
| 19 |
-
description: 'python patch version'
|
| 20 |
-
required: true
|
| 21 |
-
type: string
|
| 22 |
-
default: "5"
|
| 23 |
-
# push:
|
| 24 |
-
# branches:
|
| 25 |
-
# - master
|
| 26 |
-
|
| 27 |
-
jobs:
|
| 28 |
-
build:
|
| 29 |
-
permissions:
|
| 30 |
-
contents: "write"
|
| 31 |
-
packages: "write"
|
| 32 |
-
pull-requests: "read"
|
| 33 |
-
runs-on: windows-latest
|
| 34 |
-
steps:
|
| 35 |
-
- uses: actions/checkout@v4
|
| 36 |
-
with:
|
| 37 |
-
fetch-depth: 30
|
| 38 |
-
persist-credentials: false
|
| 39 |
-
- uses: actions/setup-python@v5
|
| 40 |
-
with:
|
| 41 |
-
python-version: 3.${{ inputs.python_minor }}.${{ inputs.python_patch }}
|
| 42 |
-
- shell: bash
|
| 43 |
-
run: |
|
| 44 |
-
cd ..
|
| 45 |
-
cp -r ComfyUI ComfyUI_copy
|
| 46 |
-
curl https://www.python.org/ftp/python/3.${{ inputs.python_minor }}.${{ inputs.python_patch }}/python-3.${{ inputs.python_minor }}.${{ inputs.python_patch }}-embed-amd64.zip -o python_embeded.zip
|
| 47 |
-
unzip python_embeded.zip -d python_embeded
|
| 48 |
-
cd python_embeded
|
| 49 |
-
echo 'import site' >> ./python3${{ inputs.python_minor }}._pth
|
| 50 |
-
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
|
| 51 |
-
./python.exe get-pip.py
|
| 52 |
-
python -m pip wheel torch torchvision torchaudio --pre --extra-index-url https://download.pytorch.org/whl/nightly/cu${{ inputs.cu }} -r ../ComfyUI/requirements.txt pygit2 -w ../temp_wheel_dir
|
| 53 |
-
ls ../temp_wheel_dir
|
| 54 |
-
./python.exe -s -m pip install --pre ../temp_wheel_dir/*
|
| 55 |
-
sed -i '1i../ComfyUI' ./python3${{ inputs.python_minor }}._pth
|
| 56 |
-
|
| 57 |
-
rm ./Lib/site-packages/torch/lib/dnnl.lib #I don't think this is actually used and I need the space
|
| 58 |
-
cd ..
|
| 59 |
-
|
| 60 |
-
git clone --depth 1 https://github.com/comfyanonymous/taesd
|
| 61 |
-
cp taesd/*.safetensors ./ComfyUI_copy/models/vae_approx/
|
| 62 |
-
|
| 63 |
-
mkdir ComfyUI_windows_portable_nightly_pytorch
|
| 64 |
-
mv python_embeded ComfyUI_windows_portable_nightly_pytorch
|
| 65 |
-
mv ComfyUI_copy ComfyUI_windows_portable_nightly_pytorch/ComfyUI
|
| 66 |
-
|
| 67 |
-
cd ComfyUI_windows_portable_nightly_pytorch
|
| 68 |
-
|
| 69 |
-
mkdir update
|
| 70 |
-
cp -r ComfyUI/.ci/update_windows/* ./update/
|
| 71 |
-
cp -r ComfyUI/.ci/windows_base_files/* ./
|
| 72 |
-
cp -r ComfyUI/.ci/windows_nightly_base_files/* ./
|
| 73 |
-
|
| 74 |
-
echo "call update_comfyui.bat nopause
|
| 75 |
-
..\python_embeded\python.exe -s -m pip install --upgrade --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/cu${{ inputs.cu }} -r ../ComfyUI/requirements.txt pygit2
|
| 76 |
-
pause" > ./update/update_comfyui_and_python_dependencies.bat
|
| 77 |
-
cd ..
|
| 78 |
-
|
| 79 |
-
"C:\Program Files\7-Zip\7z.exe" a -t7z -m0=lzma2 -mx=9 -mfb=128 -md=512m -ms=on -mf=BCJ2 ComfyUI_windows_portable_nightly_pytorch.7z ComfyUI_windows_portable_nightly_pytorch
|
| 80 |
-
mv ComfyUI_windows_portable_nightly_pytorch.7z ComfyUI/ComfyUI_windows_portable_nvidia_or_cpu_nightly_pytorch.7z
|
| 81 |
-
|
| 82 |
-
cd ComfyUI_windows_portable_nightly_pytorch
|
| 83 |
-
python_embeded/python.exe -s ComfyUI/main.py --quick-test-for-ci --cpu
|
| 84 |
-
|
| 85 |
-
ls
|
| 86 |
-
|
| 87 |
-
- name: Upload binaries to release
|
| 88 |
-
uses: svenstaro/upload-release-action@v2
|
| 89 |
-
with:
|
| 90 |
-
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
| 91 |
-
file: ComfyUI_windows_portable_nvidia_or_cpu_nightly_pytorch.7z
|
| 92 |
-
tag: "latest"
|
| 93 |
-
overwrite: true
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github/workflows/windows_release_package.yml
DELETED
|
@@ -1,102 +0,0 @@
|
|
| 1 |
-
name: "Windows Release packaging"
|
| 2 |
-
|
| 3 |
-
on:
|
| 4 |
-
workflow_dispatch:
|
| 5 |
-
inputs:
|
| 6 |
-
cu:
|
| 7 |
-
description: 'cuda version'
|
| 8 |
-
required: true
|
| 9 |
-
type: string
|
| 10 |
-
default: "128"
|
| 11 |
-
|
| 12 |
-
python_minor:
|
| 13 |
-
description: 'python minor version'
|
| 14 |
-
required: true
|
| 15 |
-
type: string
|
| 16 |
-
default: "12"
|
| 17 |
-
|
| 18 |
-
python_patch:
|
| 19 |
-
description: 'python patch version'
|
| 20 |
-
required: true
|
| 21 |
-
type: string
|
| 22 |
-
default: "10"
|
| 23 |
-
# push:
|
| 24 |
-
# branches:
|
| 25 |
-
# - master
|
| 26 |
-
|
| 27 |
-
jobs:
|
| 28 |
-
package_comfyui:
|
| 29 |
-
permissions:
|
| 30 |
-
contents: "write"
|
| 31 |
-
packages: "write"
|
| 32 |
-
pull-requests: "read"
|
| 33 |
-
runs-on: windows-latest
|
| 34 |
-
steps:
|
| 35 |
-
- uses: actions/cache/restore@v4
|
| 36 |
-
id: cache
|
| 37 |
-
with:
|
| 38 |
-
path: |
|
| 39 |
-
cu${{ inputs.cu }}_python_deps.tar
|
| 40 |
-
update_comfyui_and_python_dependencies.bat
|
| 41 |
-
key: ${{ runner.os }}-build-cu${{ inputs.cu }}-${{ inputs.python_minor }}
|
| 42 |
-
- shell: bash
|
| 43 |
-
run: |
|
| 44 |
-
mv cu${{ inputs.cu }}_python_deps.tar ../
|
| 45 |
-
mv update_comfyui_and_python_dependencies.bat ../
|
| 46 |
-
cd ..
|
| 47 |
-
tar xf cu${{ inputs.cu }}_python_deps.tar
|
| 48 |
-
pwd
|
| 49 |
-
ls
|
| 50 |
-
|
| 51 |
-
- uses: actions/checkout@v4
|
| 52 |
-
with:
|
| 53 |
-
fetch-depth: 150
|
| 54 |
-
persist-credentials: false
|
| 55 |
-
- shell: bash
|
| 56 |
-
run: |
|
| 57 |
-
cd ..
|
| 58 |
-
cp -r ComfyUI ComfyUI_copy
|
| 59 |
-
curl https://www.python.org/ftp/python/3.${{ inputs.python_minor }}.${{ inputs.python_patch }}/python-3.${{ inputs.python_minor }}.${{ inputs.python_patch }}-embed-amd64.zip -o python_embeded.zip
|
| 60 |
-
unzip python_embeded.zip -d python_embeded
|
| 61 |
-
cd python_embeded
|
| 62 |
-
echo 'import site' >> ./python3${{ inputs.python_minor }}._pth
|
| 63 |
-
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
|
| 64 |
-
./python.exe get-pip.py
|
| 65 |
-
./python.exe -s -m pip install ../cu${{ inputs.cu }}_python_deps/*
|
| 66 |
-
sed -i '1i../ComfyUI' ./python3${{ inputs.python_minor }}._pth
|
| 67 |
-
cd ..
|
| 68 |
-
|
| 69 |
-
git clone --depth 1 https://github.com/comfyanonymous/taesd
|
| 70 |
-
cp taesd/*.safetensors ./ComfyUI_copy/models/vae_approx/
|
| 71 |
-
|
| 72 |
-
mkdir ComfyUI_windows_portable
|
| 73 |
-
mv python_embeded ComfyUI_windows_portable
|
| 74 |
-
mv ComfyUI_copy ComfyUI_windows_portable/ComfyUI
|
| 75 |
-
|
| 76 |
-
cd ComfyUI_windows_portable
|
| 77 |
-
|
| 78 |
-
mkdir update
|
| 79 |
-
cp -r ComfyUI/.ci/update_windows/* ./update/
|
| 80 |
-
cp -r ComfyUI/.ci/windows_base_files/* ./
|
| 81 |
-
cp ../update_comfyui_and_python_dependencies.bat ./update/
|
| 82 |
-
|
| 83 |
-
cd ..
|
| 84 |
-
|
| 85 |
-
"C:\Program Files\7-Zip\7z.exe" a -t7z -m0=lzma2 -mx=9 -mfb=128 -md=512m -ms=on -mf=BCJ2 ComfyUI_windows_portable.7z ComfyUI_windows_portable
|
| 86 |
-
mv ComfyUI_windows_portable.7z ComfyUI/new_ComfyUI_windows_portable_nvidia_cu${{ inputs.cu }}_or_cpu.7z
|
| 87 |
-
|
| 88 |
-
cd ComfyUI_windows_portable
|
| 89 |
-
python_embeded/python.exe -s ComfyUI/main.py --quick-test-for-ci --cpu
|
| 90 |
-
|
| 91 |
-
python_embeded/python.exe -s ./update/update.py ComfyUI/
|
| 92 |
-
|
| 93 |
-
ls
|
| 94 |
-
|
| 95 |
-
- name: Upload binaries to release
|
| 96 |
-
uses: svenstaro/upload-release-action@v2
|
| 97 |
-
with:
|
| 98 |
-
repo_token: ${{ secrets.GITHUB_TOKEN }}
|
| 99 |
-
file: new_ComfyUI_windows_portable_nvidia_cu${{ inputs.cu }}_or_cpu.7z
|
| 100 |
-
tag: "latest"
|
| 101 |
-
overwrite: true
|
| 102 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|