From d7fcfc59799708fa1808d0c8e6e0fdab00e9ef72 Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Tue, 29 Sep 2020 18:19:26 +0300 Subject: [PATCH 1/7] install dynamic for macOS --- .../macos/provision/core/android-toolsets.sh | 38 ++++++++++++------- .../SoftwareReport.Android.psm1 | 5 +++ images/macos/tests/Android.Tests.ps1 | 17 ++++++--- images/macos/toolsets/toolset-10.13.json | 8 +--- images/macos/toolsets/toolset-10.14.json | 8 +--- images/macos/toolsets/toolset-10.15.json | 16 +++----- images/macos/toolsets/toolset-11.0.json | 12 ++---- 7 files changed, 56 insertions(+), 48 deletions(-) diff --git a/images/macos/provision/core/android-toolsets.sh b/images/macos/provision/core/android-toolsets.sh index a3b8aa97f..3fb0e2f97 100755 --- a/images/macos/provision/core/android-toolsets.sh +++ b/images/macos/provision/core/android-toolsets.sh @@ -1,8 +1,25 @@ #!/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 install_android_packages { + minimumVersion=$( echo "$1" | sed 's/\.//g' ) + shift + toolsArr=("$@") + + for item in ${toolsArr[@]} + do + version=$(echo "${item##*[-;]}" | sed 's/\.//g') + echo "version is $version" + if (( $version >= $minimumVersion )) + then + echo "Start installing $item" + echo "y" | ${ANDROID_HOME}/tools/bin/sdkmanager $item + fi + done +} + +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"[]')) @@ -47,18 +64,13 @@ echo y | $SDKMANAGER "cmake;3.6.4111459" echo "Installing latest ndk..." echo y | $SDKMANAGER "ndk-bundle" +platforms=$(${ANDROID_HOME}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android" | sed -E "s/[[:space:]]+//g" | sed -E "s/\|.*//g") +platformsArr=(${platforms}) +install_android_packages $ANDROID_PLATFORM_LIST "${platformsArr[@]}" -for platform_name in "${ANDROID_PLATFORM_LIST[@]}" -do - echo "Installing platform $platform_name ..." - echo y | $SDKMANAGER "platforms;$platform_name" -done - -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 +buildTools=$(${ANDROID_HOME}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "build-tools;" | sed -E "s/[[:space:]]+//g" | sed -E "s/\|.*//g") +buildToolsArr=(${buildTools}) +install_android_packages $ANDROID_BUILD_TOOL "${buildToolsArr[@]}" for extra_name in "${ANDROID_EXTRA_LIST[@]}" do diff --git a/images/macos/software-report/SoftwareReport.Android.psm1 b/images/macos/software-report/SoftwareReport.Android.psm1 index 75f1d9f86..ca4fcc208 100644 --- a/images/macos/software-report/SoftwareReport.Android.psm1 +++ b/images/macos/software-report/SoftwareReport.Android.psm1 @@ -28,6 +28,11 @@ function Get-AndroidInstalledPackages { return $androidInstalledPackages } +function Get-AndroidPackages { + $androidSDKManagerPath = Get-AndroidSDKManagerPath + $androidPackages = & $androidSDKManagerPath --list --verbose + return $androidPackages +} function Build-AndroidTable { Write-Host "Build-AndroidTable" diff --git a/images/macos/tests/Android.Tests.ps1 b/images/macos/tests/Android.Tests.ps1 index a7420b23e..da905e8cb 100644 --- a/images/macos/tests/Android.Tests.ps1 +++ b/images/macos/tests/Android.Tests.ps1 @@ -5,6 +5,9 @@ $os = Get-OSVersion Describe "Android" { $androidNdkToolchains = @("mips64el-linux-android-4.9", "mipsel-linux-android-4.9") + $androidSdkManagerPackages = Get-AndroidPackages + [int]$platformMinVersion = Get-ToolsetValue "android.platform_min_version" + [version]$buildToolsMinVersion = Get-ToolsetValue "android.build_tools_min_version" $androidPackages = @( "tools", @@ -12,8 +15,12 @@ Describe "Android" { "tools/proguard", "ndk-bundle", "cmake", - (Get-ToolsetValue "android.platform-list" | ForEach-Object { "platforms/${_}" }), - (Get-ToolsetValue "android.build-tools" | ForEach-Object { "build-tools/${_}" }), + ($androidSdkManagerPackages | Where-Object { "$_".StartsWith("platforms;") } | + Where-Object { [int]$_.Split("-")[1] -ge $platformMinVersion } | Sort-Object { [int]$_.Split("-")[1] } -Unique | + ForEach-Object { "platforms/${_}" }), + ($androidSdkManagerPackages | Where-Object { "$_".StartsWith("build-tools;") } | + Where-Object { [version]$_.Split(";")[1] -ge $buildToolsMinVersion } | Sort-Object { [version]$_.Split(";")[1] } -Unique | + ForEach-Object { "build-tools/${_}" }), (Get-ToolsetValue "android.extra-list" | ForEach-Object { "extras/${_}" }), (Get-ToolsetValue "android.addon-list" | ForEach-Object { "add-ons/${_}" }) ) | ForEach-Object { $_ } @@ -26,7 +33,7 @@ Describe "Android" { [Parameter(Mandatory=$true)] [string]$PackageName ) - + # Convert 'm2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta1' -> # 'm2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-beta1' $PackageName = $PackageName.Replace(";", "/") @@ -62,14 +69,14 @@ Describe "Android" { $rawContent = Get-Content $ndkBundlePath -Raw $rawContent | Should -BeLikeExactly "*Revision = 21.*" } - + It "Android NDK version r18b is installed" { $ndk18BundlePath = Join-Path $ANDROID_SDK_DIR "ndk" "18.1.5063045" "source.properties" $rawContent = Get-Content $ndk18BundlePath -Raw $rawContent | Should -BeLikeExactly "*Revision = 18.*" } } - + It "HAXM is installed" { $haxmPath = Join-Path $ANDROID_SDK_DIR "extras" "intel" "Hardware_Accelerated_Execution_Manager" "silent_install.sh" "$haxmPath -v" | Should -ReturnZeroExitCode diff --git a/images/macos/toolsets/toolset-10.13.json b/images/macos/toolsets/toolset-10.13.json index fdb14d084..6c12251b8 100644 --- a/images/macos/toolsets/toolset-10.13.json +++ b/images/macos/toolsets/toolset-10.13.json @@ -170,12 +170,8 @@ ] }, "android": { - "platform-list": [ - "android-30", "android-29", "android-28", "android-27", "android-26", "android-25", "android-24", "android-23", "android-22", "android-21", "android-20", "android-19", "android-18", "android-17", "android-16", "android-15" - ], - "build-tools": [ - "30.0.1", "30.0.0", "29.0.3", "29.0.2", "29.0.1", "29.0.0", "28.0.3", "28.0.2", "28.0.1", "28.0.0", "27.0.3", "27.0.2", "27.0.1", "27.0.0", "26.0.3", "26.0.2", "26.0.1", "26.0.0", "25.0.3", "25.0.2", "25.0.1", "25.0.0", "24.0.3", "24.0.2", "24.0.1", "24.0.0", "23.0.3", "23.0.2", "23.0.1", "23.0.0", "22.0.1", "21.1.2", "20.0.0", "19.1.0", "17.0.0" - ], + "platform_min_version": "15", + "build_tools_min_version": "17.0.0", "extra-list": [ "android;m2repository", "google;m2repository", "google;google_play_services", "intel;Hardware_Accelerated_Execution_Manager", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta1", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta2", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta3", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta4", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta5", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.1", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.2", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta1", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta2", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta3", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta4", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta5", "m2repository;com;android;support;constraint;constraint-layout;1.0.0", "m2repository;com;android;support;constraint;constraint-layout;1.0.1", "m2repository;com;android;support;constraint;constraint-layout;1.0.2" ], diff --git a/images/macos/toolsets/toolset-10.14.json b/images/macos/toolsets/toolset-10.14.json index e868f7699..2cf67d719 100644 --- a/images/macos/toolsets/toolset-10.14.json +++ b/images/macos/toolsets/toolset-10.14.json @@ -191,12 +191,8 @@ ] }, "android": { - "platform-list": [ - "android-30", "android-29", "android-28", "android-27", "android-26", "android-25", "android-24", "android-23", "android-22", "android-21", "android-20", "android-19", "android-18", "android-17", "android-16", "android-15" - ], - "build-tools": [ - "30.0.2", "30.0.1", "30.0.0", "29.0.3", "29.0.2", "29.0.1", "29.0.0", "28.0.3", "28.0.2", "28.0.1", "28.0.0", "27.0.3", "27.0.2", "27.0.1", "27.0.0", "26.0.3", "26.0.2", "26.0.1", "26.0.0", "25.0.3", "25.0.2", "25.0.1", "25.0.0", "24.0.3", "24.0.2", "24.0.1", "24.0.0", "23.0.3", "23.0.2", "23.0.1", "23.0.0", "22.0.1", "21.1.2", "20.0.0", "19.1.0", "17.0.0" - ], + "platform_min_version": "15", + "build_tools_min_version": "17.0.0", "extra-list": [ "android;m2repository", "google;m2repository", "google;google_play_services", "intel;Hardware_Accelerated_Execution_Manager", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta1", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta2", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta3", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta4", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta5", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.1", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.2", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta1", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta2", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta3", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta4", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta5", "m2repository;com;android;support;constraint;constraint-layout;1.0.0", "m2repository;com;android;support;constraint;constraint-layout;1.0.1", "m2repository;com;android;support;constraint;constraint-layout;1.0.2" ], diff --git a/images/macos/toolsets/toolset-10.15.json b/images/macos/toolsets/toolset-10.15.json index 8497a7100..d56d91777 100644 --- a/images/macos/toolsets/toolset-10.15.json +++ b/images/macos/toolsets/toolset-10.15.json @@ -26,28 +26,28 @@ "mono":"6.12", "ios": "14.0", "mac": "6.20", - "android": "11.0" + "android": "11.0" }, { "symlink": "6_12_0", "mono":"6.12", "ios": "13.20", "mac": "6.20", - "android": "11.0" + "android": "11.0" }, { "symlink": "6_10_0", "mono":"6.10", "ios": "13.18", "mac": "6.18", - "android": "10.3" + "android": "10.3" }, { "symlink": "6_8_1", "mono":"6.8", "ios": "13.16", "mac": "6.16", - "android": "10.2" + "android": "10.2" }, { "symlink": "6_8_0", @@ -100,12 +100,8 @@ ] }, "android": { - "platform-list": [ - "android-30", "android-29", "android-28", "android-27", "android-26", "android-25", "android-24" - ], - "build-tools": [ - "30.0.2", "30.0.1", "30.0.0", "29.0.3", "29.0.2", "29.0.1", "29.0.0", "28.0.3", "28.0.2", "28.0.1", "28.0.0", "27.0.3", "27.0.2", "27.0.1", "27.0.0", "26.0.3", "26.0.2", "26.0.1", "26.0.0", "25.0.3", "25.0.2", "25.0.1", "25.0.0", "24.0.3", "24.0.2", "24.0.1", "24.0.0" - ], + "platform_min_version": "24", + "build_tools_min_version": "24.0.0", "extra-list": [ "android;m2repository", "google;m2repository", "google;google_play_services", "intel;Hardware_Accelerated_Execution_Manager", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta1", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta2", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta3", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta4", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-beta5", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.1", "m2repository;com;android;support;constraint;constraint-layout-solver;1.0.2", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta1", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta2", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta3", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta4", "m2repository;com;android;support;constraint;constraint-layout;1.0.0-beta5", "m2repository;com;android;support;constraint;constraint-layout;1.0.0", "m2repository;com;android;support;constraint;constraint-layout;1.0.1", "m2repository;com;android;support;constraint;constraint-layout;1.0.2" ], diff --git a/images/macos/toolsets/toolset-11.0.json b/images/macos/toolsets/toolset-11.0.json index 725da2188..b50f03828 100644 --- a/images/macos/toolsets/toolset-11.0.json +++ b/images/macos/toolsets/toolset-11.0.json @@ -26,14 +26,14 @@ "mono":"6.12", "ios": "14.0", "mac": "6.20", - "android": "11.0" + "android": "11.0" }, { "symlink": "6_12_0", "mono":"6.12", "ios": "13.20", "mac": "6.20", - "android": "11.0" + "android": "11.0" } ] }, @@ -44,12 +44,8 @@ ] }, "android": { - "platform-list": [ - "android-30", "android-29", "android-28", "android-27" - ], - "build-tools": [ - "30.0.2", "30.0.1", "30.0.0", "29.0.3", "29.0.2", "29.0.1", "29.0.0", "28.0.3", "28.0.2", "28.0.1", "28.0.0", "27.0.3", "27.0.2", "27.0.1", "27.0.0" - ], + "platform_min_version": "27", + "build_tools_min_version": "27.0.0", "extra-list": [ "android;m2repository", "google;m2repository", "google;google_play_services", "intel;Hardware_Accelerated_Execution_Manager" ], From 28b4f38d98339e4a4c5d06a0ea079edb1956c01a Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Wed, 30 Sep 2020 11:56:42 +0300 Subject: [PATCH 2/7] fix pass variable --- images/macos/provision/core/android-toolsets.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/images/macos/provision/core/android-toolsets.sh b/images/macos/provision/core/android-toolsets.sh index 3fb0e2f97..f44b33f1f 100755 --- a/images/macos/provision/core/android-toolsets.sh +++ b/images/macos/provision/core/android-toolsets.sh @@ -9,7 +9,6 @@ function install_android_packages { for item in ${toolsArr[@]} do version=$(echo "${item##*[-;]}" | sed 's/\.//g') - echo "version is $version" if (( $version >= $minimumVersion )) then echo "Start installing $item" @@ -66,7 +65,7 @@ echo "Installing latest ndk..." echo y | $SDKMANAGER "ndk-bundle" platforms=$(${ANDROID_HOME}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android" | sed -E "s/[[:space:]]+//g" | sed -E "s/\|.*//g") platformsArr=(${platforms}) -install_android_packages $ANDROID_PLATFORM_LIST "${platformsArr[@]}" +install_android_packages $ANDROID_PLATFORM "${platformsArr[@]}" buildTools=$(${ANDROID_HOME}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "build-tools;" | sed -E "s/[[:space:]]+//g" | sed -E "s/\|.*//g") buildToolsArr=(${buildTools}) From 156764e42be145592912ed81feae3abdfda7acb6 Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Mon, 5 Oct 2020 10:57:58 +0300 Subject: [PATCH 3/7] add functions --- .../macos/provision/core/android-toolsets.sh | 28 +++++++++++-------- images/macos/provision/utils/utils.sh | 5 ++++ 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/images/macos/provision/core/android-toolsets.sh b/images/macos/provision/core/android-toolsets.sh index f44b33f1f..969d2e320 100755 --- a/images/macos/provision/core/android-toolsets.sh +++ b/images/macos/provision/core/android-toolsets.sh @@ -1,22 +1,24 @@ #!/bin/bash -e source ~/utils/utils.sh -function install_android_packages { - minimumVersion=$( echo "$1" | sed 's/\.//g' ) +function filter_components_by_version { + minimumVersion=$1 shift toolsArr=("$@") for item in ${toolsArr[@]} do - version=$(echo "${item##*[-;]}" | sed 's/\.//g') - if (( $version >= $minimumVersion )) + # take the last argument after spliting string by ';'' and '-'' + version=$(echo "${item##*[-;]}") + if verlte $minimumVersion $version then - echo "Start installing $item" - echo "y" | ${ANDROID_HOME}/tools/bin/sdkmanager $item + 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"[]')) @@ -63,13 +65,15 @@ echo y | $SDKMANAGER "cmake;3.6.4111459" echo "Installing latest ndk..." echo y | $SDKMANAGER "ndk-bundle" -platforms=$(${ANDROID_HOME}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android" | sed -E "s/[[:space:]]+//g" | sed -E "s/\|.*//g") -platformsArr=(${platforms}) -install_android_packages $ANDROID_PLATFORM "${platformsArr[@]}" -buildTools=$(${ANDROID_HOME}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "build-tools;" | sed -E "s/[[:space:]]+//g" | sed -E "s/\|.*//g") -buildToolsArr=(${buildTools}) -install_android_packages $ANDROID_BUILD_TOOL "${buildToolsArr[@]}" +availablePlatforms=($(${ANDROID_HOME}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android-" | cut -d"|" -f 1)) +filter_components_by_version $ANDROID_PLATFORM "${availablePlatforms[@]}" + +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 diff --git a/images/macos/provision/utils/utils.sh b/images/macos/provision/utils/utils.sh index 6a924e03d..85881c7e3 100755 --- a/images/macos/provision/utils/utils.sh +++ b/images/macos/provision/utils/utils.sh @@ -91,4 +91,9 @@ get_latest_xcode_from_toolset() { get_default_xcode_from_toolset() { echo $(get_toolset_value '.xcode.default') +} + +verlte() { + sortedVersion=$(echo -e "$1\n$2" | sort -V | head -n1) + [ "$1" = "$sortedVersion" ] } \ No newline at end of file From cde29c1bc61bc9336f7810b3e81a22907369f097 Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Tue, 6 Oct 2020 10:27:47 +0300 Subject: [PATCH 4/7] fix add import --- images/macos/tests/Android.Tests.ps1 | 1 + 1 file changed, 1 insertion(+) diff --git a/images/macos/tests/Android.Tests.ps1 b/images/macos/tests/Android.Tests.ps1 index da905e8cb..7c96429ba 100644 --- a/images/macos/tests/Android.Tests.ps1 +++ b/images/macos/tests/Android.Tests.ps1 @@ -1,5 +1,6 @@ Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1" Import-Module "$PSScriptRoot/../helpers/Tests.Helpers.psm1" +Import-Module "$PSScriptRoot/../software-report/SoftwareReport.Android.psm1" $os = Get-OSVersion From b6b4f9f36cad535aff5afef945cfe48f574ece63 Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Tue, 6 Oct 2020 10:29:26 +0300 Subject: [PATCH 5/7] fix function for taking all platforms --- images/macos/provision/core/android-toolsets.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images/macos/provision/core/android-toolsets.sh b/images/macos/provision/core/android-toolsets.sh index 969d2e320..093a133ce 100755 --- a/images/macos/provision/core/android-toolsets.sh +++ b/images/macos/provision/core/android-toolsets.sh @@ -66,7 +66,7 @@ echo y | $SDKMANAGER "cmake;3.6.4111459" echo "Installing latest ndk..." echo y | $SDKMANAGER "ndk-bundle" -availablePlatforms=($(${ANDROID_HOME}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android-" | cut -d"|" -f 1)) +availablePlatforms=($(${ANDROID_HOME}/tools/bin/sdkmanager --list | grep "platforms;android-" | cut -d"|" -f 1 | sort -u)) filter_components_by_version $ANDROID_PLATFORM "${availablePlatforms[@]}" allBuildTools=($(${ANDROID_HOME}/tools/bin/sdkmanager --list --include_obsolete | grep "build-tools;" | cut -d"|" -f 1 | sort -u)) From 0a2873ae032e3171fb47bd0a643c3219526cf8c2 Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Wed, 7 Oct 2020 00:19:13 +0300 Subject: [PATCH 6/7] fixing tests --- images/macos/tests/Android.Tests.ps1 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/images/macos/tests/Android.Tests.ps1 b/images/macos/tests/Android.Tests.ps1 index 7c96429ba..d7ef2ce07 100644 --- a/images/macos/tests/Android.Tests.ps1 +++ b/images/macos/tests/Android.Tests.ps1 @@ -16,11 +16,11 @@ Describe "Android" { "tools/proguard", "ndk-bundle", "cmake", - ($androidSdkManagerPackages | Where-Object { "$_".StartsWith("platforms;") } | + (($androidSdkManagerPackages | Where-Object { "$_".StartsWith("platforms;") }) -replace 'platforms;', '' | Where-Object { [int]$_.Split("-")[1] -ge $platformMinVersion } | Sort-Object { [int]$_.Split("-")[1] } -Unique | ForEach-Object { "platforms/${_}" }), - ($androidSdkManagerPackages | Where-Object { "$_".StartsWith("build-tools;") } | - Where-Object { [version]$_.Split(";")[1] -ge $buildToolsMinVersion } | Sort-Object { [version]$_.Split(";")[1] } -Unique | + (($androidSdkManagerPackages | Where-Object { "$_".StartsWith("build-tools;") }) -replace 'build-tools;', '' | + Where-Object { [version]$_ -ge $buildToolsMinVersion } | Sort-Object { [version]$_ } -Unique | ForEach-Object { "build-tools/${_}" }), (Get-ToolsetValue "android.extra-list" | ForEach-Object { "extras/${_}" }), (Get-ToolsetValue "android.addon-list" | ForEach-Object { "add-ons/${_}" }) From be156d1ec46df6d8d959833cfd219f8e7e4afa88 Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Thu, 8 Oct 2020 13:20:08 +0300 Subject: [PATCH 7/7] change to seperate variables --- images/macos/tests/Android.Tests.ps1 | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/images/macos/tests/Android.Tests.ps1 b/images/macos/tests/Android.Tests.ps1 index d7ef2ce07..c14a02c5e 100644 --- a/images/macos/tests/Android.Tests.ps1 +++ b/images/macos/tests/Android.Tests.ps1 @@ -10,18 +10,22 @@ Describe "Android" { [int]$platformMinVersion = Get-ToolsetValue "android.platform_min_version" [version]$buildToolsMinVersion = Get-ToolsetValue "android.build_tools_min_version" + $platforms = (($androidSdkManagerPackages | Where-Object { "$_".StartsWith("platforms;") }) -replace 'platforms;', '' | + Where-Object { [int]$_.Split("-")[1] -ge $platformMinVersion } | Sort-Object { [int]$_.Split("-")[1] } -Unique | + ForEach-Object { "platforms/${_}" }) + + $buildTools = (($androidSdkManagerPackages | Where-Object { "$_".StartsWith("build-tools;") }) -replace 'build-tools;', '' | + Where-Object { [version]$_ -ge $buildToolsMinVersion } | Sort-Object { [version]$_ } -Unique | + ForEach-Object { "build-tools/${_}" }) + $androidPackages = @( "tools", "platform-tools", "tools/proguard", "ndk-bundle", "cmake", - (($androidSdkManagerPackages | Where-Object { "$_".StartsWith("platforms;") }) -replace 'platforms;', '' | - Where-Object { [int]$_.Split("-")[1] -ge $platformMinVersion } | Sort-Object { [int]$_.Split("-")[1] } -Unique | - ForEach-Object { "platforms/${_}" }), - (($androidSdkManagerPackages | Where-Object { "$_".StartsWith("build-tools;") }) -replace 'build-tools;', '' | - Where-Object { [version]$_ -ge $buildToolsMinVersion } | Sort-Object { [version]$_ } -Unique | - ForEach-Object { "build-tools/${_}" }), + $platforms, + $buildTools, (Get-ToolsetValue "android.extra-list" | ForEach-Object { "extras/${_}" }), (Get-ToolsetValue "android.addon-list" | ForEach-Object { "add-ons/${_}" }) ) | ForEach-Object { $_ }