Add registry layer cache and fix Dockerfile cache order
Some checks failed
Build ROCm Image / build (push) Failing after 19m47s
Some checks failed
Build ROCm Image / build (push) Failing after 19m47s
- CI: cache-from/cache-to with mode=max stores all intermediate layers in the registry so subsequent builds skip unchanged layers (especially the slow ROCm PyTorch download) - Dockerfile: move COPY perth_stub.py below pip install layers so a stub change doesn't bust the cache for everything above it Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -31,3 +31,5 @@ jobs:
|
|||||||
tags: |
|
tags: |
|
||||||
git.sdgarren.com/scott/rocm-chatterbox-whisper:latest
|
git.sdgarren.com/scott/rocm-chatterbox-whisper:latest
|
||||||
git.sdgarren.com/scott/rocm-chatterbox-whisper:${{ gitea.sha }}
|
git.sdgarren.com/scott/rocm-chatterbox-whisper:${{ gitea.sha }}
|
||||||
|
cache-from: type=registry,ref=git.sdgarren.com/scott/rocm-chatterbox-whisper:buildcache
|
||||||
|
cache-to: type=registry,ref=git.sdgarren.com/scott/rocm-chatterbox-whisper:buildcache,mode=max
|
||||||
|
|||||||
@@ -17,8 +17,6 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
COPY perth_stub.py .
|
|
||||||
|
|
||||||
# Step 1: Install ROCm-compatible PyTorch stack first.
|
# Step 1: Install ROCm-compatible PyTorch stack first.
|
||||||
# This must happen before anything else to prevent pip from pulling CPU wheels.
|
# This must happen before anything else to prevent pip from pulling CPU wheels.
|
||||||
COPY requirements-rocm-init.txt .
|
COPY requirements-rocm-init.txt .
|
||||||
@@ -32,7 +30,8 @@ RUN pip3 install -r requirements-rocm.txt
|
|||||||
RUN pip3 install --no-deps chatterbox-tts
|
RUN pip3 install --no-deps chatterbox-tts
|
||||||
|
|
||||||
# Stub out resemble-perth (audio watermarking, unnecessary for self-hosted use).
|
# Stub out resemble-perth (audio watermarking, unnecessary for self-hosted use).
|
||||||
# Install as 'perth' module to satisfy chatterbox's import.
|
# Placed after pip layers so changes to the stub don't bust the cache above.
|
||||||
|
COPY perth_stub.py .
|
||||||
RUN python3 -c "import site; print(site.getsitepackages()[0])" | \
|
RUN python3 -c "import site; print(site.getsitepackages()[0])" | \
|
||||||
xargs -I{} cp /app/perth_stub.py {}/perth.py
|
xargs -I{} cp /app/perth_stub.py {}/perth.py
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user