From e332ca6577f2f40a2a3e5afb6630a539ea09c108 Mon Sep 17 00:00:00 2001 From: mauwii Date: Thu, 24 Nov 2022 22:37:19 +0100 Subject: [PATCH 1/7] fix workflow to reflect latest code changes --- .github/workflows/test-invoke-conda.yml | 36 ++++++++++++++----------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/.github/workflows/test-invoke-conda.yml b/.github/workflows/test-invoke-conda.yml index 41838ba565a..ddec884b5d5 100644 --- a/.github/workflows/test-invoke-conda.yml +++ b/.github/workflows/test-invoke-conda.yml @@ -4,6 +4,7 @@ on: branches: - 'main' - 'development' + - 'fix-gh-actions-fork' pull_request: branches: - 'main' @@ -37,6 +38,7 @@ jobs: runs-on: ${{ matrix.os }} env: CONDA_ENV_NAME: invokeai + INVOKEAI_ROOT: '${{ github.workspace }}/invokeai' defaults: run: shell: ${{ matrix.default-shell }} @@ -48,8 +50,10 @@ jobs: - name: create models.yaml from example run: cp configs/models.yaml.example configs/models.yaml - - name: create environment.yml - run: cp environments-and-requirements/${{ matrix.environment-file }} environment.yml + - name: create models.yaml from example + run: | + mkdir -p ${{ env.INVOKEAI_ROOT }}/configs + cp configs/models.yaml.example ${{ env.INVOKEAI_ROOT }}/configs/models.yaml - name: Use cached conda packages id: use-cached-conda-packages @@ -82,34 +86,34 @@ jobs: id: cache-sd-model uses: actions/cache@v3 env: - cache-name: cache-${{ matrix.stable-diffusion-model-switch }} + cache-name: cache-${{ matrix.stable-diffusion-model }} with: path: ${{ matrix.stable-diffusion-model-dl-path }} key: ${{ env.cache-name }} - - name: Download ${{ matrix.stable-diffusion-model-switch }} + - name: Download ${{ matrix.stable-diffusion-model }} id: download-stable-diffusion-model if: ${{ steps.cache-sd-model.outputs.cache-hit != 'true' }} run: | - [[ -d models/ldm/stable-diffusion-v1 ]] \ - || mkdir -p models/ldm/stable-diffusion-v1 + mkdir -p "${{ env.INVOKEAI_ROOT }}/${{ matrix.stable-diffusion-model-dl-path }}" curl \ -H "Authorization: Bearer ${{ secrets.HUGGINGFACE_TOKEN }}" \ - -o ${{ matrix.stable-diffusion-model-dl-path }} \ - -L ${{ matrix.stable-diffusion-model }} + -o "${{ env.INVOKEAI_ROOT }}/${{ matrix.stable-diffusion-model-dl-path }}/${{ matrix.stable-diffusion-model-dl-name }}" \ + -L ${{ matrix.stable-diffusion-model-url }} - - name: run preload_models.py + - name: run configure_invokeai.py id: run-preload-models run: | - python scripts/preload_models.py \ - --no-interactive + ${{ env.pythonLocation }}/bin/python scripts/configure_invokeai.py --no-interactive --yes - name: Run the tests id: run-tests run: | - time python scripts/invoke.py \ - --model ${{ matrix.stable-diffusion-model-switch }} \ - --from_file ${{ env.TEST_PROMPTS }} + time ${{ env.pythonLocation }}/bin/python scripts/invoke.py \ + --model ${{ matrix.stable-diffusion-model }} \ + --from_file ${{ env.TEST_PROMPTS }} \ + --root="${{ env.INVOKEAI_ROOT }}" \ + --outdir="${{ env.INVOKEAI_ROOT }}/outputs" - name: export conda env id: export-conda-env @@ -121,5 +125,5 @@ jobs: id: archive-results uses: actions/upload-artifact@v3 with: - name: results_${{ matrix.os }}_${{ matrix.stable-diffusion-model-switch }} - path: outputs/img-samples + name: results_${{ matrix.requirements-file }}_${{ matrix.python-version }} + path: ${{ env.INVOKEAI_ROOT }}/outputs/img-samples From 12bb25e71d82d2934cd72492e329909ddde0a618 Mon Sep 17 00:00:00 2001 From: mauwii Date: Thu, 24 Nov 2022 22:42:45 +0100 Subject: [PATCH 2/7] fix copy paste error --- .github/workflows/test-invoke-conda.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test-invoke-conda.yml b/.github/workflows/test-invoke-conda.yml index ddec884b5d5..0e9d4502e3e 100644 --- a/.github/workflows/test-invoke-conda.yml +++ b/.github/workflows/test-invoke-conda.yml @@ -31,9 +31,10 @@ jobs: # - stable-diffusion-model: https://huggingface.co/CompVis/stable-diffusion-v-1-4-original/resolve/main/sd-v1-4.ckpt # stable-diffusion-model-dl-path: models/ldm/stable-diffusion-v1/sd-v1-4.ckpt # stable-diffusion-model-switch: stable-diffusion-1.4 - - stable-diffusion-model: https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.ckpt - stable-diffusion-model-dl-path: models/ldm/stable-diffusion-v1/v1-5-pruned-emaonly.ckpt - stable-diffusion-model-switch: stable-diffusion-1.5 + - stable-diffusion-model: stable-diffusion-1.5 + stable-diffusion-model-url: https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.ckpt + stable-diffusion-model-dl-path: models/ldm/stable-diffusion-v1 + stable-diffusion-model-dl-name: v1-5-pruned-emaonly.ckpt name: ${{ matrix.os }} with ${{ matrix.stable-diffusion-model-switch }} runs-on: ${{ matrix.os }} env: @@ -47,14 +48,14 @@ jobs: id: checkout-sources uses: actions/checkout@v3 - - name: create models.yaml from example - run: cp configs/models.yaml.example configs/models.yaml - - name: create models.yaml from example run: | mkdir -p ${{ env.INVOKEAI_ROOT }}/configs cp configs/models.yaml.example ${{ env.INVOKEAI_ROOT }}/configs/models.yaml + - name: create environment.yml + run: cp environments-and-requirements/${{ matrix.environment-file }} environment.yml + - name: Use cached conda packages id: use-cached-conda-packages uses: actions/cache@v3 From 6ffd4d69018d28ff41d8dcc121ac9ed4667e3dfa Mon Sep 17 00:00:00 2001 From: mauwii Date: Thu, 24 Nov 2022 22:44:01 +0100 Subject: [PATCH 3/7] fix job name --- .github/workflows/test-invoke-conda.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-invoke-conda.yml b/.github/workflows/test-invoke-conda.yml index 0e9d4502e3e..f98e71d91ac 100644 --- a/.github/workflows/test-invoke-conda.yml +++ b/.github/workflows/test-invoke-conda.yml @@ -35,7 +35,7 @@ jobs: stable-diffusion-model-url: https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.ckpt stable-diffusion-model-dl-path: models/ldm/stable-diffusion-v1 stable-diffusion-model-dl-name: v1-5-pruned-emaonly.ckpt - name: ${{ matrix.os }} with ${{ matrix.stable-diffusion-model-switch }} + name: ${{ matrix.os }} with ${{ matrix.stable-diffusion-model }} runs-on: ${{ matrix.os }} env: CONDA_ENV_NAME: invokeai From d6fec554a2833931c33790a596a4d84f50bf5dc4 Mon Sep 17 00:00:00 2001 From: mauwii Date: Thu, 24 Nov 2022 22:46:57 +0100 Subject: [PATCH 4/7] fix matrix.stable-diffusion-model --- .github/workflows/test-invoke-conda.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/test-invoke-conda.yml b/.github/workflows/test-invoke-conda.yml index f98e71d91ac..f0e7301501c 100644 --- a/.github/workflows/test-invoke-conda.yml +++ b/.github/workflows/test-invoke-conda.yml @@ -16,8 +16,7 @@ jobs: fail-fast: false matrix: stable-diffusion-model: - # - 'https://huggingface.co/CompVis/stable-diffusion-v-1-4-original/resolve/main/sd-v1-4.ckpt' - - 'https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.ckpt' + - 'stable-diffusion-1.5' os: - ubuntu-latest - macOS-12 @@ -28,9 +27,6 @@ jobs: - os: macOS-12 environment-file: environment-mac.yml default-shell: bash -l {0} - # - stable-diffusion-model: https://huggingface.co/CompVis/stable-diffusion-v-1-4-original/resolve/main/sd-v1-4.ckpt - # stable-diffusion-model-dl-path: models/ldm/stable-diffusion-v1/sd-v1-4.ckpt - # stable-diffusion-model-switch: stable-diffusion-1.4 - stable-diffusion-model: stable-diffusion-1.5 stable-diffusion-model-url: https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.ckpt stable-diffusion-model-dl-path: models/ldm/stable-diffusion-v1 From be8027abc4fd3c908d3f8f85c44361650b5641da Mon Sep 17 00:00:00 2001 From: mauwii Date: Thu, 24 Nov 2022 23:08:11 +0100 Subject: [PATCH 5/7] restructure matrix --- .github/workflows/test-invoke-conda.yml | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/.github/workflows/test-invoke-conda.yml b/.github/workflows/test-invoke-conda.yml index f0e7301501c..806f6f17f8f 100644 --- a/.github/workflows/test-invoke-conda.yml +++ b/.github/workflows/test-invoke-conda.yml @@ -17,15 +17,19 @@ jobs: matrix: stable-diffusion-model: - 'stable-diffusion-1.5' - os: - - ubuntu-latest - - macOS-12 + environment-yaml: + - environment-lin-amd.yml + - environment-lin-cuda.yml + - environment-mac.yml include: - - os: ubuntu-latest - environment-file: environment-lin-cuda.yml + - environment-yaml: environment-lin-amd.yml + os: ubuntu-latest default-shell: bash -l {0} - - os: macOS-12 - environment-file: environment-mac.yml + - environment-yaml: environment-lin-cuda.yml + os: ubuntu-latest + default-shell: bash -l {0} + - environment-yaml: environment-mac.yml + os: macos-12 default-shell: bash -l {0} - stable-diffusion-model: stable-diffusion-1.5 stable-diffusion-model-url: https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.ckpt @@ -50,21 +54,21 @@ jobs: cp configs/models.yaml.example ${{ env.INVOKEAI_ROOT }}/configs/models.yaml - name: create environment.yml - run: cp environments-and-requirements/${{ matrix.environment-file }} environment.yml + run: cp environments-and-requirements/${{ matrix.environment-yaml }} environment.yml - name: Use cached conda packages id: use-cached-conda-packages uses: actions/cache@v3 with: path: ~/conda_pkgs_dir - key: conda-pkgs-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles(matrix.environment-file) }} + key: conda-pkgs-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles(matrix.environment-yaml) }} - name: Activate Conda Env id: activate-conda-env uses: conda-incubator/setup-miniconda@v2 with: activate-environment: ${{ env.CONDA_ENV_NAME }} - environment-file: environment.yml + environment-yaml: environment.yml miniconda-version: latest - name: set test prompt to main branch validation From e9d6585e03df7ee2c91ce3dcdbe173cbb7628191 Mon Sep 17 00:00:00 2001 From: mauwii Date: Thu, 24 Nov 2022 23:14:53 +0100 Subject: [PATCH 6/7] fix `activate conda env` step --- .github/workflows/test-invoke-conda.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-invoke-conda.yml b/.github/workflows/test-invoke-conda.yml index 806f6f17f8f..c04e7dcaedb 100644 --- a/.github/workflows/test-invoke-conda.yml +++ b/.github/workflows/test-invoke-conda.yml @@ -54,7 +54,7 @@ jobs: cp configs/models.yaml.example ${{ env.INVOKEAI_ROOT }}/configs/models.yaml - name: create environment.yml - run: cp environments-and-requirements/${{ matrix.environment-yaml }} environment.yml + run: cp "environments-and-requirements/${{ matrix.environment-yaml }}" environment.yml - name: Use cached conda packages id: use-cached-conda-packages @@ -68,7 +68,7 @@ jobs: uses: conda-incubator/setup-miniconda@v2 with: activate-environment: ${{ env.CONDA_ENV_NAME }} - environment-yaml: environment.yml + environment-file: environment.yml miniconda-version: latest - name: set test prompt to main branch validation From 601526f1410391618cc059c9c58fb22472b89ffd Mon Sep 17 00:00:00 2001 From: mauwii Date: Thu, 24 Nov 2022 23:32:42 +0100 Subject: [PATCH 7/7] update the environment yamls use same 4 git packages as for pip --- environments-and-requirements/environment-lin-amd.yml | 4 ++-- environments-and-requirements/environment-lin-cuda.yml | 4 ++-- environments-and-requirements/environment-mac.yml | 5 ++--- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/environments-and-requirements/environment-lin-amd.yml b/environments-and-requirements/environment-lin-amd.yml index 15a8b9b0db4..a06c8110c07 100644 --- a/environments-and-requirements/environment-lin-amd.yml +++ b/environments-and-requirements/environment-lin-amd.yml @@ -40,7 +40,7 @@ dependencies: - torchvision - transformers==4.21.3 - git+https://github.com/openai/CLIP.git@main#egg=clip - - git+https://github.com/Birch-san/k-diffusion.git@mps#egg=k_diffusion + - git+https://github.com/Birch-san/k-diffusion.git@mps#egg=k-diffusion - git+https://github.com/invoke-ai/clipseg.git@relaxed-python-requirement#egg=clipseg - - git+https://github.com/invoke-ai/GFPGAN#egg=gfpgan + - git+https://github.com/invoke-ai/GFPGAN@basicsr-1.4.2#egg=gfpgan - -e . diff --git a/environments-and-requirements/environment-lin-cuda.yml b/environments-and-requirements/environment-lin-cuda.yml index b1926831f17..895515d43ae 100644 --- a/environments-and-requirements/environment-lin-cuda.yml +++ b/environments-and-requirements/environment-lin-cuda.yml @@ -40,7 +40,7 @@ dependencies: - torchmetrics==0.7.0 - transformers==4.21.3 - git+https://github.com/openai/CLIP.git@main#egg=clip - - git+https://github.com/Birch-san/k-diffusion.git@mps#egg=k_diffusion + - git+https://github.com/Birch-san/k-diffusion.git@mps#egg=k-diffusion - git+https://github.com/invoke-ai/clipseg.git@relaxed-python-requirement#egg=clipseg - - git+https://github.com/invoke-ai/GFPGAN#egg=gfpgan + - git+https://github.com/invoke-ai/GFPGAN@basicsr-1.4.2#egg=gfpgan - -e . diff --git a/environments-and-requirements/environment-mac.yml b/environments-and-requirements/environment-mac.yml index 4fe79d453a2..9bf8e279521 100644 --- a/environments-and-requirements/environment-mac.yml +++ b/environments-and-requirements/environment-mac.yml @@ -56,10 +56,9 @@ dependencies: - taming-transformers-rom1504 - test-tube==0.7.5 - git+https://github.com/openai/CLIP.git@main#egg=clip - - git+https://github.com/invoke-ai/k-diffusion.git@mps#egg=k_diffusion - - git+https://github.com/invoke-ai/Real-ESRGAN.git#egg=realesrgan - - git+https://github.com/invoke-ai/GFPGAN.git#egg=gfpgan + - git+https://github.com/Birch-san/k-diffusion.git@mps#egg=k-diffusion - git+https://github.com/invoke-ai/clipseg.git@relaxed-python-requirement#egg=clipseg + - git+https://github.com/invoke-ai/GFPGAN@basicsr-1.4.2#egg=gfpgan - -e . variables: PYTORCH_ENABLE_MPS_FALLBACK: 1