mirror of
https://github.com/actions/runner-images.git
synced 2026-01-06 18:19:54 +08:00
Merge pull request #1701 from dmitry-shibanov/v-dmshib/android-tools-dynamic-macOS
[macOS] Retrieve the list of Android packages for installing dynamically
This commit is contained in:
@@ -1,8 +1,26 @@
|
||||
#!/bin/bash -e
|
||||
source ~/utils/utils.sh
|
||||
|
||||
ANDROID_PLATFORM_LIST=($(get_toolset_value '.android."platform-list"[]'))
|
||||
ANDROID_BUILD_TOOLS=($(get_toolset_value '.android."build-tools"[]'))
|
||||
function filter_components_by_version {
|
||||
minimumVersion=$1
|
||||
shift
|
||||
toolsArr=("$@")
|
||||
|
||||
for item in ${toolsArr[@]}
|
||||
do
|
||||
# take the last argument after spliting string by ';'' and '-''
|
||||
version=$(echo "${item##*[-;]}")
|
||||
if verlte $minimumVersion $version
|
||||
then
|
||||
components+=($item)
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
components=()
|
||||
|
||||
ANDROID_PLATFORM=($(get_toolset_value '.android.platform_min_version'))
|
||||
ANDROID_BUILD_TOOL=($(get_toolset_value '.android.build_tools_min_version'))
|
||||
ANDROID_EXTRA_LIST=($(get_toolset_value '.android."extra-list"[]'))
|
||||
ANDROID_ADDON_LIST=($(get_toolset_value '.android."addon-list"[]'))
|
||||
|
||||
@@ -48,17 +66,14 @@ echo y | $SDKMANAGER "cmake;3.6.4111459"
|
||||
echo "Installing latest ndk..."
|
||||
echo y | $SDKMANAGER "ndk-bundle"
|
||||
|
||||
for platform_name in "${ANDROID_PLATFORM_LIST[@]}"
|
||||
do
|
||||
echo "Installing platform $platform_name ..."
|
||||
echo y | $SDKMANAGER "platforms;$platform_name"
|
||||
done
|
||||
availablePlatforms=($(${ANDROID_HOME}/tools/bin/sdkmanager --list | grep "platforms;android-" | cut -d"|" -f 1 | sort -u))
|
||||
filter_components_by_version $ANDROID_PLATFORM "${availablePlatforms[@]}"
|
||||
|
||||
for build_tools_version in "${ANDROID_BUILD_TOOLS[@]}"
|
||||
do
|
||||
echo "Installing build tools $build_tools_version ..."
|
||||
echo y | $SDKMANAGER "build-tools;$build_tools_version"
|
||||
done
|
||||
allBuildTools=($(${ANDROID_HOME}/tools/bin/sdkmanager --list --include_obsolete | grep "build-tools;" | cut -d"|" -f 1 | sort -u))
|
||||
availableBuildTools=$(echo ${allBuildTools[@]//*rc[0-9]/})
|
||||
filter_components_by_version $ANDROID_BUILD_TOOL "${availableBuildTools[@]}"
|
||||
|
||||
echo "y" | ${ANDROID_HOME}/tools/bin/sdkmanager ${components[@]}
|
||||
|
||||
for extra_name in "${ANDROID_EXTRA_LIST[@]}"
|
||||
do
|
||||
|
||||
Reference in New Issue
Block a user