From dcc9bb6dbf70ced5267e6f968d459ef1bfdd633d Mon Sep 17 00:00:00 2001 From: Alejandro Rosas Date: Thu, 23 Oct 2025 22:31:30 +0300 Subject: [PATCH] [ubuntu, macOS] Fix tools version extraction in Install Android SDK scripts (#12911) --- images/macos/scripts/build/install-android-sdk.sh | 6 +++--- images/ubuntu/scripts/build/install-android-sdk.sh | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/images/macos/scripts/build/install-android-sdk.sh b/images/macos/scripts/build/install-android-sdk.sh index 1cabb1c90..10854358e 100644 --- a/images/macos/scripts/build/install-android-sdk.sh +++ b/images/macos/scripts/build/install-android-sdk.sh @@ -12,9 +12,9 @@ add_filtered_installation_components() { local tools_array=("$@") for item in ${tools_array[@]}; do - # take the last argument after splitting string by ';'' and '-'' - version=$(echo "${item##*[-;]}") - if [[ "$(printf "${minimum_version}\n${version}\n" | sort -V | head -n1)" == "$minimum_version" ]]; then + # Take the last version number that appears after the last '-' or ';' + item_version=$(echo "$item" | grep -oE '[-;][0-9.]+' | grep -oE '[0-9.]+') + if [[ "$(printf "${minimum_version}\n${item_version}\n" | sort -V | head -n1)" == "$minimum_version" ]]; then components+=($item) fi done diff --git a/images/ubuntu/scripts/build/install-android-sdk.sh b/images/ubuntu/scripts/build/install-android-sdk.sh index b6928f1e2..78de3d6cb 100644 --- a/images/ubuntu/scripts/build/install-android-sdk.sh +++ b/images/ubuntu/scripts/build/install-android-sdk.sh @@ -15,8 +15,8 @@ add_filtered_installation_components() { local tools_array=("$@") for item in ${tools_array[@]}; do - # Take the last argument after splitting string by ';'' and '-'' - item_version=$(echo "${item##*[-;]}") + # Take the last version number that appears after the last '-' or ';' + item_version=$(echo "$item" | grep -oE '[-;][0-9.]+' | grep -oE '[0-9.]+') # Semver 'comparison'. Add item to components array, if item's version is greater than or equal to minimum version if [[ "$(printf "${minimum_version}\n${item_version}\n" | sort -V | head -n1)" == "$minimum_version" ]]; then