| name: "Windows Release packaging" |
|
|
| on: |
| workflow_dispatch: |
| inputs: |
| cu: |
| description: 'cuda version' |
| required: true |
| type: string |
| default: "129" |
|
|
| python_minor: |
| description: 'python minor version' |
| required: true |
| type: string |
| default: "13" |
|
|
| python_patch: |
| description: 'python patch version' |
| required: true |
| type: string |
| default: "6" |
| |
| |
| |
|
|
| jobs: |
| package_comfyui: |
| permissions: |
| contents: "write" |
| packages: "write" |
| pull-requests: "read" |
| runs-on: windows-latest |
| steps: |
| - uses: actions/cache/restore@v4 |
| id: cache |
| with: |
| path: | |
| cu${{ inputs.cu }}_python_deps.tar |
| update_comfyui_and_python_dependencies.bat |
| key: ${{ runner.os }}-build-cu${{ inputs.cu }}-${{ inputs.python_minor }} |
| - shell: bash |
| run: | |
| mv cu${{ inputs.cu }}_python_deps.tar ../ |
| mv update_comfyui_and_python_dependencies.bat ../ |
| cd .. |
| tar xf cu${{ inputs.cu }}_python_deps.tar |
| pwd |
| ls |
| |
| - uses: actions/checkout@v4 |
| with: |
| fetch-depth: 150 |
| persist-credentials: false |
| - shell: bash |
| run: | |
| cd .. |
| cp -r ComfyUI ComfyUI_copy |
| 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 |
| unzip python_embeded.zip -d python_embeded |
| cd python_embeded |
| echo 'import site' >> ./python3${{ inputs.python_minor }}._pth |
| curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py |
| ./python.exe get-pip.py |
| ./python.exe -s -m pip install ../cu${{ inputs.cu }}_python_deps/* |
| sed -i '1i../ComfyUI' ./python3${{ inputs.python_minor }}._pth |
| |
| rm ./Lib/site-packages/torch/lib/dnnl.lib |
| rm ./Lib/site-packages/torch/lib/libprotoc.lib |
| rm ./Lib/site-packages/torch/lib/libprotobuf.lib |
| cd .. |
|
|
| git clone --depth 1 https://github.com/comfyanonymous/taesd |
| cp taesd/*.safetensors ./ComfyUI_copy/models/vae_approx/ |
|
|
| mkdir ComfyUI_windows_portable |
| mv python_embeded ComfyUI_windows_portable |
| mv ComfyUI_copy ComfyUI_windows_portable/ComfyUI |
|
|
| cd ComfyUI_windows_portable |
|
|
| mkdir update |
| cp -r ComfyUI/.ci/update_windows/* ./update/ |
| cp -r ComfyUI/.ci/windows_nvidia_base_files/* ./ |
| cp ../update_comfyui_and_python_dependencies.bat ./update/ |
|
|
| cd .. |
|
|
| "C:\Program Files\7-Zip\7z.exe" a -t7z -m0=lzma2 -mx=9 -mfb=128 -md=768m -ms=on -mf=BCJ2 ComfyUI_windows_portable.7z ComfyUI_windows_portable |
| mv ComfyUI_windows_portable.7z ComfyUI/new_ComfyUI_windows_portable_nvidia_cu${{ inputs.cu }}_or_cpu.7z |
|
|
| cd ComfyUI_windows_portable |
| python_embeded/python.exe -s ComfyUI/main.py --quick-test-for-ci --cpu |
|
|
| python_embeded/python.exe -s ./update/update.py ComfyUI/ |
|
|
| ls |
|
|
| - name: Upload binaries to release |
| uses: svenstaro/upload-release-action@v2 |
| with: |
| repo_token: ${{ secrets.GITHUB_TOKEN }} |
| file: new_ComfyUI_windows_portable_nvidia_cu${{ inputs.cu }}_or_cpu.7z |
| tag: "latest" |
| overwrite: true |
|
|
|
|