diff --git a/.github/conda-environments/mac-environment.yml b/.github/conda-environments/mac-environment.yml new file mode 100644 index 00000000000..33832b85422 --- /dev/null +++ b/.github/conda-environments/mac-environment.yml @@ -0,0 +1,26 @@ +name: comfyui +channels: + - pytorch-nightly + - defaults +dependencies: + - python>=3.9 + - pytorch-nightly::pytorch + - torchvision + - torchaudio + - pip: + - pip + # comfyui requirements + - einops + - transformers>=4.25.1 + - safetensors>=0.4.2 + - aiohttp + - pyyaml + - Pillow + - scipy + - tqdm + - psutil + # comfy-action requirements + - requests + - google-cloud-storage + - comfy-cli + - charset-normalizer diff --git a/.github/workflows/mac-integration-test.yml b/.github/workflows/mac-integration-test.yml new file mode 100644 index 00000000000..6a0482b1b3e --- /dev/null +++ b/.github/workflows/mac-integration-test.yml @@ -0,0 +1,50 @@ +name: (macOS) ComfyUI Integration Tests +on: + push: + branches: + - master + paths-ignore: + - 'app/**' + - 'input/**' + - 'output/**' + - 'model/**' + - 'notebook/**' + - 'script_example/**' + - 'tests/**' + - 'tests-ui/**' + - '.github/**' + - '.ci/**' + - 'web/**' + workflow_dispatch: + pull_request: + branches: + - master + paths-ignore: + - 'app/**' + - 'input/**' + - 'output/**' + - 'model/**' + - 'notebook/**' + - 'script_example/**' + - 'tests/**' + - 'tests-ui/**' + - '.github/**' + - '.ci/**' + - 'web/**' + +jobs: + test-workflows: + runs-on: [self-hosted, m2] + steps: + - name: Test ComfyUI Workflows + uses: comfy-org/comfy-action@main + with: + os: mac + models-json: '{"v1-5-pruned-emaonly.ckpt": {"url": "https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.ckpt", "directory": "checkpoints"}}' + workflow_filenames: "default.json" + gcs_bucket_name: 'comfy-ci-results' + google_credentials: ${{ secrets.GCS_SERVICE_ACCOUNT_JSON }} + output_prefix: 'ComfyUI' + conda_env_file: '.github/conda-environments/mac-environment.yml' + timeout: 50 +