From dfb7c7bd75404cc56c04e67c785d7a005c4b09fa Mon Sep 17 00:00:00 2001 From: cogrow4 <116611842+cogrow4@users.noreply.github.com> Date: Mon, 13 Oct 2025 21:52:20 +1100 Subject: [PATCH 1/4] feat: add riscv64 build to docker --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index caf9889a..d17d4f4a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -222,7 +222,7 @@ jobs: uses: docker/build-push-action@v6 with: context: . - platforms: linux/amd64, linux/arm64 #,linux/arm + platforms: linux/amd64, linux/arm64, linux/riscv64 #,linux/arm push: true tags: ghcr.io/${{github.repository}}:${{format('{0}', github.ref_name)}}, ghcr.io/${{github.repository}}:latest labels: org.opencontainers.image.title=Docker From 772b23458e3624613396a3890dcebcefacc26176 Mon Sep 17 00:00:00 2001 From: cogrow4 <116611842+cogrow4@users.noreply.github.com> Date: Mon, 13 Oct 2025 21:56:30 +1100 Subject: [PATCH 2/4] feat(ci): add multi-arch docker build for riscv64 --- .github/workflows/build.yml | 5 ++++- Dockerfile | 8 +++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d17d4f4a..f913a558 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -193,8 +193,11 @@ jobs: - name: Checkout into repo uses: actions/checkout@v3 - - name: Download artifact + - name: Download client artifact uses: actions/download-artifact@v4 + with: + name: client + path: client - name: Set up QEMU uses: docker/setup-qemu-action@v1 diff --git a/Dockerfile b/Dockerfile index 82d34bce..aaf47875 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,8 @@ FROM python:3.11-slim WORKDIR /app/swingmusic -# Copy the files in the current dir into the container -# copy wheelhouse and client -COPY wheels wheels +# Copy source code and client +COPY . . COPY client /config/client @@ -16,7 +15,6 @@ RUN apt-get update && apt-get install -y gcc git libev-dev python3-dev ffmpeg li apt-get clean && \ rm -rf /var/lib/apt/lists/* -RUN pip install --no-cache-dir --find-links=wheels/ swingmusic -Run rm -rf /app/swingmusic/wheels +RUN pip install --no-cache-dir . ENTRYPOINT ["python", "-m", "swingmusic", "--host", "0.0.0.0", "--config", "/config", "--client", "/config/client"] From fa09170a4b07f5ef508ff1dbc703dce0aa01c1e7 Mon Sep 17 00:00:00 2001 From: Coen Greenleaf <116611842+cogrow4@users.noreply.github.com> Date: Fri, 24 Oct 2025 09:12:16 +1100 Subject: [PATCH 3/4] Refactor Dockerfile to improve dependency installation Updated Dockerfile to copy wheels directory and install dependencies from it. --- Dockerfile | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index aaf47875..522d35e4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,10 @@ FROM python:3.11-slim WORKDIR /app/swingmusic -# Copy source code and client -COPY . . + +# Copy the files in the current dir into the container +# copy wheelhouse and client +COPY wheels wheels COPY client /config/client @@ -15,6 +17,7 @@ RUN apt-get update && apt-get install -y gcc git libev-dev python3-dev ffmpeg li apt-get clean && \ rm -rf /var/lib/apt/lists/* -RUN pip install --no-cache-dir . +RUN pip install --no-cache-dir --find-links=wheels/ swingmusic +Run rm -rf /app/swingmusic/wheels ENTRYPOINT ["python", "-m", "swingmusic", "--host", "0.0.0.0", "--config", "/config", "--client", "/config/client"] From 88816214c490cc36ac73b916819f6bc66e223799 Mon Sep 17 00:00:00 2001 From: Coen Greenleaf <116611842+cogrow4@users.noreply.github.com> Date: Fri, 24 Oct 2025 09:15:04 +1100 Subject: [PATCH 4/4] Rename download step in build workflow --- .github/workflows/build.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f913a558..d17d4f4a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -193,11 +193,8 @@ jobs: - name: Checkout into repo uses: actions/checkout@v3 - - name: Download client artifact + - name: Download artifact uses: actions/download-artifact@v4 - with: - name: client - path: client - name: Set up QEMU uses: docker/setup-qemu-action@v1