Skip to content

Commit 72a2ab2

Browse files
account for partially installed sdks
1 parent a27b4ea commit 72a2ab2

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

.github/workflows/scripts/install-and-build-with-sdk.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,26 @@ swift_sdk_install_with_retry() {
5959
local attempt=1
6060
local retry_delay=$SDK_INSTALL_INITIAL_RETRY_DELAY
6161

62+
# Extract SDK name from URL for checking if already installed
63+
local sdk_filename
64+
sdk_filename=$(basename "$sdk_url")
65+
local sdk_name="${sdk_filename%.tar.gz}"
66+
6267
while [ $attempt -le $SDK_INSTALL_MAX_RETRIES ]; do
6368
if [ $attempt -gt 1 ]; then
6469
log "Retry attempt $attempt of $SDK_INSTALL_MAX_RETRIES for ${sdk_type} SDK installation after ${retry_delay}s delay..."
70+
71+
# Before retrying, check if SDK was partially installed and remove it
72+
log "Checking for partially installed SDK..."
73+
if "$swift_executable" sdk list 2>/dev/null | grep -q "^${sdk_name}"; then
74+
log "Found partially installed SDK, attempting to remove it..."
75+
if "$swift_executable" sdk remove "$sdk_name" 2>/dev/null; then
76+
log "Successfully removed partially installed SDK"
77+
else
78+
log "Warning: Failed to remove partially installed SDK, continuing anyway..."
79+
fi
80+
fi
81+
6582
sleep $retry_delay
6683
fi
6784

0 commit comments

Comments
 (0)