mirror of
https://github.com/actions/runner-images-sangeeth.git
synced 2026-01-06 18:17:26 +08:00
Add NDK 22 to macOS images (#2542)
* add env variables to docs, add extra ndk * add new header 4 * rename variable * add ndk to toolset as generic approach * grep latest version * install latest lts * improve function * rename function
This commit is contained in:
@@ -17,6 +17,13 @@ function filter_components_by_version {
|
|||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function get_full_ndk_version {
|
||||||
|
majorVersion=$1
|
||||||
|
ndkVersion=$(${SDKMANAGER} --list | grep "ndk;${majorVersion}.*" | awk '{gsub("ndk;", ""); print $1}' | sort -V | tail -n1)
|
||||||
|
|
||||||
|
echo "$ndkVersion"
|
||||||
|
}
|
||||||
|
|
||||||
components=()
|
components=()
|
||||||
|
|
||||||
ANDROID_PLATFORM=($(get_toolset_value '.android.platform_min_version'))
|
ANDROID_PLATFORM=($(get_toolset_value '.android.platform_min_version'))
|
||||||
@@ -24,7 +31,8 @@ ANDROID_BUILD_TOOL=($(get_toolset_value '.android.build_tools_min_version'))
|
|||||||
ANDROID_EXTRA_LIST=($(get_toolset_value '.android."extra-list"[]'))
|
ANDROID_EXTRA_LIST=($(get_toolset_value '.android."extra-list"[]'))
|
||||||
ANDROID_ADDON_LIST=($(get_toolset_value '.android."addon-list"[]'))
|
ANDROID_ADDON_LIST=($(get_toolset_value '.android."addon-list"[]'))
|
||||||
ANDROID_ADDITIONAL_TOOLS=($(get_toolset_value '.android."additional-tools"[]'))
|
ANDROID_ADDITIONAL_TOOLS=($(get_toolset_value '.android."additional-tools"[]'))
|
||||||
|
ANDROID_NDK_MAJOR_LTS=($(get_toolset_value '.android.ndk.lts'))
|
||||||
|
ANDROID_NDK_MAJOR_LATEST=($(get_toolset_value '.android.ndk.latest'))
|
||||||
# Get the latest command line tools from https://developer.android.com/studio/index.html
|
# Get the latest command line tools from https://developer.android.com/studio/index.html
|
||||||
# Release note: https://developer.android.com/studio/releases/sdk-tools.html
|
# Release note: https://developer.android.com/studio/releases/sdk-tools.html
|
||||||
ANDROID_OSX_SDK_LOCATION="https://dl.google.com/android/repository/sdk-tools-darwin-3859397.zip"
|
ANDROID_OSX_SDK_LOCATION="https://dl.google.com/android/repository/sdk-tools-darwin-3859397.zip"
|
||||||
@@ -65,11 +73,15 @@ echo "Installing latest CMake..."
|
|||||||
echo y | $SDKMANAGER "cmake;3.6.4111459"
|
echo y | $SDKMANAGER "cmake;3.6.4111459"
|
||||||
|
|
||||||
echo "Installing latest ndk..."
|
echo "Installing latest ndk..."
|
||||||
echo y | $SDKMANAGER "ndk;21.3.6528147"
|
ndkLtsLatest=$(get_full_ndk_version $ANDROID_NDK_MAJOR_LTS)
|
||||||
|
ndkLatest=$(get_full_ndk_version $ANDROID_NDK_MAJOR_LATEST)
|
||||||
|
echo y | $SDKMANAGER "ndk;$ndkLtsLatest" "ndk;$ndkLatest"
|
||||||
# This changes were added due to incompatibility with android ndk-bundle (ndk;22.0.7026061).
|
# This changes were added due to incompatibility with android ndk-bundle (ndk;22.0.7026061).
|
||||||
# Link issue virtual-environments: https://github.com/actions/virtual-environments/issues/2481
|
# Link issue virtual-environments: https://github.com/actions/virtual-environments/issues/2481
|
||||||
# Link issue xamarin-android: https://github.com/xamarin/xamarin-android/issues/5526
|
# Link issue xamarin-android: https://github.com/xamarin/xamarin-android/issues/5526
|
||||||
ln -s $ANDROID_HOME/ndk/21.3.6528147 $ANDROID_HOME/ndk-bundle
|
ln -s $ANDROID_HOME/ndk/$ndkLtsLatest $ANDROID_HOME/ndk-bundle
|
||||||
|
ANDROID_NDK_LATEST_HOME=$ANDROID_HOME/ndk/$ndkLatest
|
||||||
|
echo "export ANDROID_NDK_LATEST_HOME=$ANDROID_NDK_LATEST_HOME" >> "${HOME}/.bashrc"
|
||||||
|
|
||||||
availablePlatforms=($(${ANDROID_HOME}/tools/bin/sdkmanager --list | grep "platforms;android-" | cut -d"|" -f 1 | sort -u))
|
availablePlatforms=($(${ANDROID_HOME}/tools/bin/sdkmanager --list | grep "platforms;android-" | cut -d"|" -f 1 | sort -u))
|
||||||
filter_components_by_version $ANDROID_PLATFORM "${availablePlatforms[@]}"
|
filter_components_by_version $ANDROID_PLATFORM "${availablePlatforms[@]}"
|
||||||
|
|||||||
@@ -8,6 +8,10 @@ Describe "Android" {
|
|||||||
$androidSdkManagerPackages = Get-AndroidPackages
|
$androidSdkManagerPackages = Get-AndroidPackages
|
||||||
[int]$platformMinVersion = Get-ToolsetValue "android.platform_min_version"
|
[int]$platformMinVersion = Get-ToolsetValue "android.platform_min_version"
|
||||||
[version]$buildToolsMinVersion = Get-ToolsetValue "android.build_tools_min_version"
|
[version]$buildToolsMinVersion = Get-ToolsetValue "android.build_tools_min_version"
|
||||||
|
[string]$ndkLatestVersion = Get-ToolsetValue "android.ndk.latest"
|
||||||
|
[string]$ndkLtsVersion = Get-ToolsetValue "android.ndk.lts"
|
||||||
|
$ndkLatestFullVersion = (Get-ChildItem "$env:ANDROID_HOME/ndk/$ndkLatestVersion.*" | Select-Object -Last 1).Name
|
||||||
|
$ndkLtsFullVersion = (Get-ChildItem "$env:ANDROID_HOME/ndk/$ndkLtsVersion.*" | Select-Object -Last 1).Name
|
||||||
|
|
||||||
$platforms = (($androidSdkManagerPackages | Where-Object { "$_".StartsWith("platforms;") }) -replace 'platforms;', '' |
|
$platforms = (($androidSdkManagerPackages | Where-Object { "$_".StartsWith("platforms;") }) -replace 'platforms;', '' |
|
||||||
Where-Object { [int]$_.Split("-")[1] -ge $platformMinVersion } | Sort-Object { [int]$_.Split("-")[1] } -Unique |
|
Where-Object { [int]$_.Split("-")[1] -ge $platformMinVersion } | Sort-Object { [int]$_.Split("-")[1] } -Unique |
|
||||||
@@ -23,6 +27,8 @@ Describe "Android" {
|
|||||||
"tools/proguard",
|
"tools/proguard",
|
||||||
"ndk-bundle",
|
"ndk-bundle",
|
||||||
"cmake",
|
"cmake",
|
||||||
|
"ndk/$ndkLatestFullVersion",
|
||||||
|
"ndk/$ndkLtsFullVersion",
|
||||||
$platforms,
|
$platforms,
|
||||||
$buildTools,
|
$buildTools,
|
||||||
(Get-ToolsetValue "android.extra-list" | ForEach-Object { "extras/${_}" }),
|
(Get-ToolsetValue "android.extra-list" | ForEach-Object { "extras/${_}" }),
|
||||||
|
|||||||
@@ -189,7 +189,11 @@
|
|||||||
],
|
],
|
||||||
"addon-list": [
|
"addon-list": [
|
||||||
"addon-google_apis-google-24", "addon-google_apis-google-23", "addon-google_apis-google-22", "addon-google_apis-google-21"
|
"addon-google_apis-google-24", "addon-google_apis-google-23", "addon-google_apis-google-22", "addon-google_apis-google-21"
|
||||||
]
|
],
|
||||||
|
"ndk": {
|
||||||
|
"lts": "21",
|
||||||
|
"latest": "22"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"powershellModules": [
|
"powershellModules": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -212,7 +212,11 @@
|
|||||||
],
|
],
|
||||||
"additional-tools": [
|
"additional-tools": [
|
||||||
"cmdline-tools;latest"
|
"cmdline-tools;latest"
|
||||||
]
|
],
|
||||||
|
"ndk": {
|
||||||
|
"lts": "21",
|
||||||
|
"latest": "22"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"powershellModules": [
|
"powershellModules": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -150,7 +150,11 @@
|
|||||||
],
|
],
|
||||||
"additional-tools": [
|
"additional-tools": [
|
||||||
"cmdline-tools;latest"
|
"cmdline-tools;latest"
|
||||||
]
|
],
|
||||||
|
"ndk": {
|
||||||
|
"lts": "21",
|
||||||
|
"latest": "22"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"powershellModules": [
|
"powershellModules": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -83,7 +83,11 @@
|
|||||||
"addon-list": [],
|
"addon-list": [],
|
||||||
"additional-tools": [
|
"additional-tools": [
|
||||||
"cmdline-tools;latest"
|
"cmdline-tools;latest"
|
||||||
]
|
],
|
||||||
|
"ndk": {
|
||||||
|
"lts": "21",
|
||||||
|
"latest": "22"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"powershellModules": [
|
"powershellModules": [
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user