This is an automated email from the ASF dual-hosted git repository. jimjag pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/openoffice-devtools.git
commit 05dd7232d95a21fa1f3762cb8937b9c164d94954 Author: Jim Jagielski <[email protected]> AuthorDate: Fri Sep 25 08:33:27 2026 -0400 macosx-remote-sign.sh: retry hdiutil detach on EBUSY A freshly validated image is often briefly busy, which aborted the run after notarization and left the dmg unsigned. --- release-scripts/macosx-remote-sign.sh | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/release-scripts/macosx-remote-sign.sh b/release-scripts/macosx-remote-sign.sh index 023c98f..39a5a9e 100755 --- a/release-scripts/macosx-remote-sign.sh +++ b/release-scripts/macosx-remote-sign.sh @@ -135,12 +135,22 @@ if [ "$SRC_DMG" -ef "$OUT_DMG" ]; then exit 2 fi +# A just-validated image is often still busy for a few seconds (EBUSY). +detach_with_retry() { + local mount_point="$1" try + for try in 1 2 3 4 5; do + hdiutil detach "$mount_point" -quiet 2>/dev/null && return 0 + sleep 3 + done + hdiutil detach "$mount_point" -force -quiet +} + MOUNT_POINT="" STAGING_DIR="" TEMP_DIR="" cleanup() { if [ -n "$MOUNT_POINT" ]; then - hdiutil detach "$MOUNT_POINT" -quiet 2>/dev/null || true + detach_with_retry "$MOUNT_POINT" 2>/dev/null || true rmdir "$MOUNT_POINT" 2>/dev/null || true fi [ -z "$STAGING_DIR" ] || rm -rf "$STAGING_DIR" @@ -159,7 +169,7 @@ mount_readonly() { detach_mounted() { local mount_point="$MOUNT_POINT" - hdiutil detach "$mount_point" -quiet + detach_with_retry "$mount_point" rmdir "$mount_point" 2>/dev/null || true MOUNT_POINT="" }
