From 3d08a4f78f98449d66228628a123d7306c81dfde Mon Sep 17 00:00:00 2001 From: kolaente Date: Tue, 14 Apr 2026 12:25:43 +0200 Subject: [PATCH] fix(ci): update s3-action to skip directories during upload The s3-action glob matched directories causing EISDIR errors. Fixed the action to filter with fs.statSync().isFile(). Updated all s3-action references to the new version. --- .github/workflows/release.yml | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 31f31b33c..fe5fee5ca 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -119,7 +119,7 @@ jobs: gpg -v --default-key 7D061A4AA61436B40713D42EFF054DACD908493A -b --batch --yes --passphrase "${{ secrets.RELEASE_GPG_PASSPHRASE }}" --pinentry-mode loopback --sign "$file" done - name: Upload - uses: kolaente/s3-action@41963184b524ccac734ea4d8c964ac74b5b1af89 # v1.2.1 + uses: kolaente/s3-action@89a9be2f8d91dfea6e059a9dbb2b1e29eb5a09c7 # v1.2.2 with: s3-access-key-id: ${{ secrets.S3_ACCESS_KEY }} s3-secret-access-key: ${{ secrets.S3_SECRET_KEY }} @@ -194,7 +194,7 @@ jobs: target: ./dist/os-packages/vikunja-${{ github.ref_type == 'tag' && steps.ghd.outputs.describe || 'unstable' }}-${{ matrix.arch.pkg }}.${{ matrix.package }} config: ./nfpm.yaml - name: Upload - uses: kolaente/s3-action@41963184b524ccac734ea4d8c964ac74b5b1af89 # v1.2.1 + uses: kolaente/s3-action@89a9be2f8d91dfea6e059a9dbb2b1e29eb5a09c7 # v1.2.2 with: s3-access-key-id: ${{ secrets.S3_ACCESS_KEY }} s3-secret-access-key: ${{ secrets.S3_SECRET_KEY }} @@ -350,15 +350,13 @@ jobs: - name: Debug - repo output structure run: find dist/repo-output -type f 2>/dev/null || ls -laR dist/repo-output/ || true - - name: Remove directories and internal db from repo output + - name: Clean up repo output run: | - # Remove reprepro internal database (not needed for serving) + # Remove reprepro internal state (not needed for serving) rm -rf dist/repo-output/apt/db dist/repo-output/apt/conf 2>/dev/null || true - # Remove symlinks to directories that confuse the S3 upload - find dist/repo-output -type l -exec sh -c 'test -d "$1" && rm "$1"' _ {} \; 2>/dev/null || true - - name: Upload repo metadata to R2 - uses: kolaente/s3-action@41963184b524ccac734ea4d8c964ac74b5b1af89 # v1.2.1 + - name: Upload to R2 + uses: kolaente/s3-action@89a9be2f8d91dfea6e059a9dbb2b1e29eb5a09c7 # v1.2.2 with: s3-access-key-id: ${{ secrets.S3_ACCESS_KEY }} s3-secret-access-key: ${{ secrets.S3_SECRET_KEY }} @@ -385,7 +383,7 @@ jobs: chmod +x ./mage-static ./mage-static generate:config-yaml 1 - name: Upload to S3 - uses: kolaente/s3-action@41963184b524ccac734ea4d8c964ac74b5b1af89 # v1.2.1 + uses: kolaente/s3-action@89a9be2f8d91dfea6e059a9dbb2b1e29eb5a09c7 # v1.2.2 with: s3-access-key-id: ${{ secrets.S3_ACCESS_KEY }} s3-secret-access-key: ${{ secrets.S3_SECRET_KEY }} @@ -435,7 +433,7 @@ jobs: pnpm install --frozen-lockfile --prefer-offline --fetch-timeout 100000 node build.js "${{ steps.ghd.outputs.describe }}" ${{ github.ref_type == 'tag' }} - name: Upload to S3 - uses: kolaente/s3-action@41963184b524ccac734ea4d8c964ac74b5b1af89 # v1.2.1 + uses: kolaente/s3-action@89a9be2f8d91dfea6e059a9dbb2b1e29eb5a09c7 # v1.2.2 with: s3-access-key-id: ${{ secrets.S3_ACCESS_KEY }} s3-secret-access-key: ${{ secrets.S3_SECRET_KEY }}