From 289dae0d823e6d256875801156ce2d864d678a38 Mon Sep 17 00:00:00 2001
From: dd
Date: Mon, 25 May 2026 11:08:41 +0800
Subject: [PATCH] fix: use find instead of mv glob for artifact collection in
release workflow
Multi-path artifact uploads preserve directory structure, causing
flat mv globs to fail. Use find -exec to handle nested paths.
Co-Authored-By: Claude Opus 4.6
---
.github/workflows/release.yml | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 0baceeaa..3d8b85f8 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -261,16 +261,16 @@ jobs:
- name: List and move all Artifacts
run: |
mkdir -p /tmp/artifacts/final
- mv /tmp/artifacts/release-Android/*.apk /tmp/artifacts/final/
- mv /tmp/artifacts/release-Android/*.aab /tmp/artifacts/final/
- mv /tmp/artifacts/release-Windows/*.zip /tmp/artifacts/final/
- mv /tmp/artifacts/release-Windows/*.exe /tmp/artifacts/final/
- mv /tmp/artifacts/release-Linux/*.deb /tmp/artifacts/final/
- mv /tmp/artifacts/release-Linux/*.tar.gz /tmp/artifacts/final/
- # mv /tmp/artifacts/release-Linux-arm/*.deb /tmp/artifacts/final/
- # mv /tmp/artifacts/release-Linux-arm/*.tar.gz /tmp/artifacts/final/
- mv /tmp/artifacts/release-iOS/*.ipa /tmp/artifacts/final/ 2>/dev/null || true
- mv /tmp/artifacts/release-macOS/*.dmg /tmp/artifacts/final/ 2>/dev/null || true
+ find /tmp/artifacts/release-Android -name '*.apk' -exec mv {} /tmp/artifacts/final/ \;
+ find /tmp/artifacts/release-Android -name '*.aab' -exec mv {} /tmp/artifacts/final/ \;
+ find /tmp/artifacts/release-Windows -name '*.zip' -exec mv {} /tmp/artifacts/final/ \;
+ find /tmp/artifacts/release-Windows -name '*.exe' -exec mv {} /tmp/artifacts/final/ \;
+ find /tmp/artifacts/release-Linux -name '*.deb' -exec mv {} /tmp/artifacts/final/ \;
+ find /tmp/artifacts/release-Linux -name '*.tar.gz' -exec mv {} /tmp/artifacts/final/ \;
+ # find /tmp/artifacts/release-Linux-arm -name '*.deb' -exec mv {} /tmp/artifacts/final/ \;
+ # find /tmp/artifacts/release-Linux-arm -name '*.tar.gz' -exec mv {} /tmp/artifacts/final/ \;
+ find /tmp/artifacts/release-iOS -name '*.ipa' -exec mv {} /tmp/artifacts/final/ \; 2>/dev/null || true
+ find /tmp/artifacts/release-macOS -name '*.dmg' -exec mv {} /tmp/artifacts/final/ \; 2>/dev/null || true
cd /tmp/artifacts/final
for file in *; do