From 4577d9f6b99c45d4a9fe1e59909349d703faf8fc Mon Sep 17 00:00:00 2001 From: Daniel Dybing Date: Wed, 11 Mar 2026 14:22:21 +0100 Subject: [PATCH] Workflow: Use unique container names to avoid build conflicts --- .gitea/workflows/build.yml | 27 ++++++++++++++++----------- .gitea/workflows/release.yml | 14 ++++++++------ 2 files changed, 24 insertions(+), 17 deletions(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index f7c72fb..2f3bff6 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -40,23 +40,28 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Build Windows executable via Docker (Stable) + - name: Build Windows executable via Docker (Unique Names) run: | - # Use a standard Wine-based PyInstaller image - docker create --name builder cdrx/pyinstaller-windows + # Ensure unique container name for this run + CONTAINER_NAME="builder-${{ github.run_id }}" - # Copy source code into the container - docker cp . builder:/src + # Clean up any existing container with this name just in case + docker rm -f $CONTAINER_NAME || true - # Run the build using the image's internal logic but specifying our requirements - # Most of these images default to running 'pyinstaller' on the /src folder - docker start -a builder + # Create container + docker create --name $CONTAINER_NAME cdrx/pyinstaller-windows - # Copy the results back - docker cp builder:/src/dist . + # Copy source code + docker cp . $CONTAINER_NAME:/src + + # Run build + docker start -a $CONTAINER_NAME + + # Copy results + docker cp $CONTAINER_NAME:/src/dist . # Clean up - docker rm builder + docker rm $CONTAINER_NAME - name: Debug - List output files run: ls -R dist/ diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index fe1fd95..3bd9928 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -34,13 +34,15 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - name: Build Windows executable via Docker (Stable) + - name: Build Windows executable via Docker (Unique Names) run: | - docker create --name release_builder cdrx/pyinstaller-windows - docker cp . release_builder:/src - docker start -a release_builder - docker cp release_builder:/src/dist . - docker rm release_builder + CONTAINER_NAME="rel-builder-${{ github.run_id }}" + docker rm -f $CONTAINER_NAME || true + docker create --name $CONTAINER_NAME cdrx/pyinstaller-windows + docker cp . $CONTAINER_NAME:/src + docker start -a $CONTAINER_NAME + docker cp $CONTAINER_NAME:/src/dist . + docker rm $CONTAINER_NAME - name: Debug - List output files run: ls -R dist/ - name: Rename for release