From 449bf52923896236ed645da2ff05aadbf2b0d536 Mon Sep 17 00:00:00 2001 From: Robin Huang Date: Thu, 27 Jun 2024 13:08:26 -0700 Subject: [PATCH] Add integration test for Linux with Nvidia GPU. #3884 (#3895) * Add linux integration test. * Fix directory path. * Add paths ignore. * Fix conda env directory path. --- .../conda-environments/linux-environment.yml | 28 +++++++++++ .github/workflows/linux-integration-test.yml | 50 +++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 .github/conda-environments/linux-environment.yml create mode 100644 .github/workflows/linux-integration-test.yml diff --git a/.github/conda-environments/linux-environment.yml b/.github/conda-environments/linux-environment.yml new file mode 100644 index 00000000..c9ebd640 --- /dev/null +++ b/.github/conda-environments/linux-environment.yml @@ -0,0 +1,28 @@ +name: comfyui +channels: + - pytorch + - nvidia + - defaults +dependencies: + - python>=3.9 + - pip + - pytorch + - torchvision + - torchaudio + - pytorch-cuda=12.1 + - 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 \ No newline at end of file diff --git a/.github/workflows/linux-integration-test.yml b/.github/workflows/linux-integration-test.yml new file mode 100644 index 00000000..eed84a77 --- /dev/null +++ b/.github/workflows/linux-integration-test.yml @@ -0,0 +1,50 @@ +name: (Linux) 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, Linux, t4] + steps: + - name: Test ComfyUI Workflows + uses: comfy-org/comfy-action@main + with: + os: linux + cuda_version: 12.1 + 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/linux-environment.yml' + timeout: 50