mirror of
https://github.com/actions/runner-images.git
synced 2025-12-10 11:07:02 +00:00
Merge branch 'main' into lg/require-pinned
This commit is contained in:
1
.github/ISSUE_TEMPLATE/announcement.yml
vendored
1
.github/ISSUE_TEMPLATE/announcement.yml
vendored
@@ -39,7 +39,6 @@ body:
|
||||
- label: Ubuntu 20.04
|
||||
- label: Ubuntu 22.04
|
||||
- label: Ubuntu 24.04
|
||||
- label: macOS 12
|
||||
- label: macOS 13
|
||||
- label: macOS 13 Arm64
|
||||
- label: macOS 14
|
||||
|
||||
1
.github/ISSUE_TEMPLATE/bug-report.yml
vendored
1
.github/ISSUE_TEMPLATE/bug-report.yml
vendored
@@ -22,7 +22,6 @@ body:
|
||||
- label: Ubuntu 20.04
|
||||
- label: Ubuntu 22.04
|
||||
- label: Ubuntu 24.04
|
||||
- label: macOS 12
|
||||
- label: macOS 13
|
||||
- label: macOS 13 Arm64
|
||||
- label: macOS 14
|
||||
|
||||
1
.github/ISSUE_TEMPLATE/tool-request.yml
vendored
1
.github/ISSUE_TEMPLATE/tool-request.yml
vendored
@@ -60,7 +60,6 @@ body:
|
||||
- label: Ubuntu 20.04
|
||||
- label: Ubuntu 22.04
|
||||
- label: Ubuntu 24.04
|
||||
- label: macOS 12
|
||||
- label: macOS 13
|
||||
- label: macOS 13 Arm64
|
||||
- label: macOS 14
|
||||
|
||||
2
.github/workflows/codeql-analysis.yml
vendored
2
.github/workflows/codeql-analysis.yml
vendored
@@ -34,7 +34,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
language: [ 'python', 'ruby' ]
|
||||
language: [ 'python' ]
|
||||
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
|
||||
# Learn more about CodeQL language support at https://git.io/codeql-language-support
|
||||
|
||||
|
||||
2
LICENSE
2
LICENSE
@@ -1,6 +1,6 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2024 GitHub
|
||||
Copyright (c) 2025 GitHub
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
@@ -29,7 +29,6 @@ To build a VM machine from this repo's source, see the [instructions](docs/creat
|
||||
| macOS 14 Arm64 |`macos-latest`, `macos-14`, `macos-latest-xlarge` or `macos-14-xlarge`| [macOS-14-arm64] |  |
|
||||
| macOS 13 | `macos-13` or `macos-13-large` | [macOS-13] |  |
|
||||
| macOS 13 Arm64 | `macos-13-xlarge` | [macOS-13-arm64] |  |
|
||||
| macOS 12 <sup>deprecated</sup> | `macos-12` or `macos-12-large`| [macOS-12] |  |
|
||||
| Windows Server 2025 <sup>beta</sup> | `windows-2025` | [windows-2025] |  |
|
||||
| Windows Server 2022 | `windows-latest` or `windows-2022` | [windows-2022] |  |
|
||||
| Windows Server 2019 | `windows-2019` | [windows-2019] |  |
|
||||
@@ -45,7 +44,6 @@ To build a VM machine from this repo's source, see the [instructions](docs/creat
|
||||
[windows-2025]: https://github.com/actions/runner-images/blob/main/images/windows/Windows2025-Readme.md
|
||||
[windows-2022]: https://github.com/actions/runner-images/blob/main/images/windows/Windows2022-Readme.md
|
||||
[windows-2019]: https://github.com/actions/runner-images/blob/main/images/windows/Windows2019-Readme.md
|
||||
[macOS-12]: https://github.com/actions/runner-images/blob/main/images/macos/macos-12-Readme.md
|
||||
[macOS-13]: https://github.com/actions/runner-images/blob/main/images/macos/macos-13-Readme.md
|
||||
[macOS-13-arm64]: https://github.com/actions/runner-images/blob/main/images/macos/macos-13-arm64-Readme.md
|
||||
[macOS-14]: https://github.com/actions/runner-images/blob/main/images/macos/macos-14-Readme.md
|
||||
|
||||
@@ -98,7 +98,7 @@ Finally, run the `GenerateResourcesAndImage` function, setting the mandatory arg
|
||||
- `SubscriptionId` - your Azure Subscription ID;
|
||||
- `ResourceGroupName` - the name of the resource group that will be created within your subscription (e.g., "imagegen-test");
|
||||
- `AzureLocation` - the location where resources will be created (e.g., "East US");
|
||||
- `ImageType` - the type of image to build (we suggest choosing "UbuntuMinimal" here; other valid options are "Windows2019", "Windows2022", "Ubuntu2004", "Ubuntu2204").
|
||||
- `ImageType` - the type of image to build (we suggest choosing "UbuntuMinimal" here; other valid options are "Windows2019", "Windows2022", "Windows2025", "Ubuntu2004", "Ubuntu2204", "Ubuntu2404").
|
||||
|
||||
This function automatically creates all required Azure resources and initiates the Packer image generation for the selected image type.
|
||||
|
||||
|
||||
@@ -3,10 +3,11 @@ $ErrorActionPreference = 'Stop'
|
||||
enum ImageType {
|
||||
Windows2019 = 1
|
||||
Windows2022 = 2
|
||||
Ubuntu2004 = 3
|
||||
Ubuntu2204 = 4
|
||||
Ubuntu2404 = 5
|
||||
UbuntuMinimal = 6
|
||||
Windows2025 = 3
|
||||
Ubuntu2004 = 4
|
||||
Ubuntu2204 = 5
|
||||
Ubuntu2404 = 6
|
||||
UbuntuMinimal = 7
|
||||
}
|
||||
|
||||
Function Get-PackerTemplatePath {
|
||||
@@ -25,6 +26,9 @@ Function Get-PackerTemplatePath {
|
||||
([ImageType]::Windows2022) {
|
||||
$relativeTemplatePath = Join-Path (Join-Path "windows" "templates") "windows-2022.pkr.hcl"
|
||||
}
|
||||
([ImageType]::Windows2025) {
|
||||
$relativeTemplatePath = Join-Path (Join-Path "windows" "templates") "windows-2025.pkr.hcl"
|
||||
}
|
||||
([ImageType]::Ubuntu2004) {
|
||||
$relativeTemplatePath = Join-Path (Join-Path "ubuntu" "templates") "ubuntu-20.04.pkr.hcl"
|
||||
}
|
||||
@@ -81,7 +85,7 @@ Function GenerateResourcesAndImage {
|
||||
.PARAMETER ResourceGroupName
|
||||
The name of the resource group to create the Azure resources in.
|
||||
.PARAMETER ImageType
|
||||
The type of image to generate. Valid values are: Windows2019, Windows2022, Ubuntu2004, Ubuntu2204, UbuntuMinimal.
|
||||
The type of image to generate. Valid values are: Windows2019, Windows2022, Windows2025, Ubuntu2004, Ubuntu2204, Ubuntu2404, UbuntuMinimal.
|
||||
.PARAMETER ManagedImageName
|
||||
The name of the managed image to create. The default is "Runner-Image-{{ImageType}}".
|
||||
.PARAMETER AzureLocation
|
||||
|
||||
@@ -11,7 +11,8 @@ param(
|
||||
[String] [Parameter (Mandatory=$false)] $VirtualNetworkName,
|
||||
[String] [Parameter (Mandatory=$false)] $VirtualNetworkRG,
|
||||
[String] [Parameter (Mandatory=$false)] $VirtualNetworkSubnet,
|
||||
[String] [Parameter (Mandatory=$false)] $AllowedInboundIpAddresses = "[]"
|
||||
[String] [Parameter (Mandatory=$false)] $AllowedInboundIpAddresses = "[]",
|
||||
[hashtable] [Parameter (Mandatory=$False)] $Tags = @{}
|
||||
)
|
||||
|
||||
if (-not (Test-Path $TemplatePath))
|
||||
@@ -33,6 +34,8 @@ $SensitiveData = @(
|
||||
': ->'
|
||||
)
|
||||
|
||||
$azure_tags = ($Tags.GetEnumerator() | ForEach-Object { "{0}={1}" -f $_.Key, $_.Value }) -join ","
|
||||
|
||||
Write-Host "Show Packer Version"
|
||||
packer --version
|
||||
|
||||
@@ -56,6 +59,7 @@ packer build -var "client_id=$ClientId" `
|
||||
-var "virtual_network_resource_group_name=$VirtualNetworkRG" `
|
||||
-var "virtual_network_subnet_name=$VirtualNetworkSubnet" `
|
||||
-var "allowed_inbound_ip_addresses=$($AllowedInboundIpAddresses)" `
|
||||
-var "azure_tags={$azure_tags}" `
|
||||
-color=false `
|
||||
$TemplatePath `
|
||||
| Where-Object {
|
||||
|
||||
@@ -110,9 +110,7 @@ function Get-MacOSIPSWInstaller {
|
||||
[bool] $BetaSearch = $false
|
||||
)
|
||||
|
||||
if ($MacOSVersion -eq [version] "12.0") {
|
||||
$MacOSName = "macOS Monterey"
|
||||
} elseif ($MacOSVersion -eq [version] "13.0") {
|
||||
if ($MacOSVersion -eq [version] "13.0") {
|
||||
$MacOSName = "macOS Ventura"
|
||||
} elseif ($MacOSVersion -eq [version] "14.0") {
|
||||
$MacOSName = "macOS Sonoma"
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
# Select any Xamarin SDK versions as the default ones independently by specifying only those versions that need to be changed.
|
||||
# Examples:
|
||||
# 1. Change all versions: $VM_ASSETS/select-xamarin-sdkv-v2.sh --mono=6.12 --ios=14.8 --android=10.2 --mac=7.8
|
||||
# 2. Change default Mono and iOS only: $VM_ASSETS/select-xamarin-sdkv-v2.sh --mono=6.12 --ios=14.8
|
||||
# 3. Change default Android only: $VM_ASSETS/select-xamarin-sdkv-v2.sh --android=11.1
|
||||
|
||||
get_framework_path() {
|
||||
case $1 in
|
||||
--mono) echo '/Library/Frameworks/Mono.framework/Versions' ;;
|
||||
--ios) echo '/Library/Frameworks/Xamarin.iOS.framework/Versions' ;;
|
||||
--android) echo '/Library/Frameworks/Xamarin.Android.framework/Versions' ;;
|
||||
--mac) echo '/Library/Frameworks/Xamarin.Mac.framework/Versions' ;;
|
||||
*) ;;
|
||||
esac
|
||||
}
|
||||
|
||||
change_framework_version() {
|
||||
local framework=$1
|
||||
local version=$2
|
||||
|
||||
echo "Select $framework $version"
|
||||
|
||||
local countDigit=$(echo "${version}" | grep -o "\." | grep -c "\.")
|
||||
|
||||
if [[ countDigit -gt 1 ]]; then
|
||||
echo "[WARNING] It is not recommended to specify the exact framework version because your build can be broken with the next patch update. Consider using "major.minor" only format."
|
||||
fi
|
||||
|
||||
local framework_path=$(get_framework_path "$framework")
|
||||
|
||||
if [ -d "${framework_path}/${version}" ]; then
|
||||
sudo rm -f ${framework_path}/Current
|
||||
sudo ln -s "${framework_path}/${version}" "${framework_path}/Current"
|
||||
else
|
||||
echo "Invalid framework version ${framework_path}/${version}"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
for arg in "$@"; do
|
||||
key=$(echo $arg | cut -f1 -d=)
|
||||
value=$(echo $arg | cut -f2 -d=)
|
||||
|
||||
case $key in
|
||||
--mono | --ios | --android | --mac) change_framework_version $key $value ;;
|
||||
*)
|
||||
echo "Invalid parameter <${key}>"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
@@ -1,22 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
if [ -z "$1" ]; then
|
||||
echo "No Xamarin SDK specified."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
XAMARIN_SDK=$1
|
||||
|
||||
echo "Set Xamarin SDK to ${XAMARIN_SDK}"
|
||||
FOLDERS_LIST=(
|
||||
'/Library/Frameworks/Mono.framework/Versions'
|
||||
'/Library/Frameworks/Xamarin.iOS.framework/Versions'
|
||||
'/Library/Frameworks/Xamarin.Android.framework/Versions'
|
||||
'/Library/Frameworks/Xamarin.Mac.framework/Versions'
|
||||
)
|
||||
|
||||
for FOLDER in "${FOLDERS_LIST[@]}"
|
||||
do
|
||||
echo "Set Current folder for ${FOLDER}"
|
||||
sudo rm -f ${FOLDER}/Current
|
||||
sudo ln -s ${FOLDER}/${XAMARIN_SDK} ${FOLDER}/Current
|
||||
done
|
||||
@@ -1,378 +0,0 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [macOS 15 (Sequoia) is now available as a public beta in GitHub Actions](https://github.com/actions/runner-images/issues/10686) |
|
||||
| [[Macos 13 and 14] Android NDK versions <=25 will be removed from images on October 07,2024](https://github.com/actions/runner-images/issues/10614) |
|
||||
| [[Macos 13 and 14] Go version 1.20.0 will be removed on October 07,2024.](https://github.com/actions/runner-images/issues/10612) |
|
||||
***
|
||||
# macOS 12
|
||||
- OS Version: macOS 12.7.6 (21H1320)
|
||||
- Kernel Version: Darwin 21.6.0
|
||||
- Image Version: 20240926.174
|
||||
|
||||
## Installed Software
|
||||
|
||||
### Language and Runtime
|
||||
- .NET Core SDK: 6.0.425, 7.0.102, 7.0.202, 7.0.306, 7.0.410, 8.0.101, 8.0.204, 8.0.303, 8.0.402
|
||||
- Bash 3.2.57(1)-release
|
||||
- Clang/LLVM 14.0.0
|
||||
- Clang/LLVM (Homebrew) 15.0.7 - available on `$(brew --prefix llvm@15)/bin/clang`
|
||||
- GCC 12 (Homebrew GCC 12.4.0) - available by `gcc-12` alias
|
||||
- GCC 13 (Homebrew GCC 13.3.0) - available by `gcc-13` alias
|
||||
- GCC 14 (Homebrew GCC 14.2.0) - available by `gcc-14` alias
|
||||
- GNU Fortran 12 (Homebrew GCC 12.4.0) - available by `gfortran-12` alias
|
||||
- GNU Fortran 13 (Homebrew GCC 13.3.0) - available by `gfortran-13` alias
|
||||
- GNU Fortran 14 (Homebrew GCC 14.2.0) - available by `gfortran-14` alias
|
||||
- Julia 1.10.5
|
||||
- Kotlin 2.0.20-release-360
|
||||
- Go 1.21.13
|
||||
- Mono 6.12.0.188
|
||||
- Node.js 18.20.4
|
||||
- MSBuild 16.10.1.51301 (Mono 6.12.0.188)
|
||||
- NVM 0.39.7
|
||||
- NVM - Cached node versions: 16.20.2, 18.20.4, 20.17.0
|
||||
- Perl 5.38.2
|
||||
- PHP 8.3.11
|
||||
- Python 2.7.18
|
||||
- Python3 3.12.6
|
||||
- R 4.4.1
|
||||
- Ruby 3.0.7p220
|
||||
|
||||
### Package Management
|
||||
- Bundler 2.5.20
|
||||
- Carthage 0.40.0
|
||||
- CocoaPods 1.15.2
|
||||
- Composer 2.7.9
|
||||
- Homebrew 4.3.24
|
||||
- Miniconda 24.7.1
|
||||
- NPM 10.7.0
|
||||
- NuGet 6.3.1.1
|
||||
- Pip 20.3.4 (python 2.7)
|
||||
- Pip3 24.2 (python 3.12)
|
||||
- Pipx 1.7.1
|
||||
- RubyGems 3.5.20
|
||||
- Vcpkg 2024 (build from commit 3d8959985)
|
||||
- Yarn 1.22.22
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
| ----------------------- | ---------------------- |
|
||||
| CONDA | /usr/local/miniconda |
|
||||
| VCPKG_INSTALLATION_ROOT | /usr/local/share/vcpkg |
|
||||
|
||||
### Project Management
|
||||
- Apache Ant 1.10.15
|
||||
- Apache Maven 3.9.9
|
||||
- Gradle 8.10.2
|
||||
- Sbt 1.10.2
|
||||
|
||||
### Utilities
|
||||
- 7-Zip 17.05
|
||||
- aria2 1.37.0
|
||||
- azcopy 10.26.0
|
||||
- bazel 7.3.1
|
||||
- bazelisk 1.21.0
|
||||
- bsdtar 3.5.1 - available by 'tar' alias
|
||||
- Curl 8.10.1
|
||||
- Git 2.46.2
|
||||
- Git LFS 3.5.1
|
||||
- GitHub CLI 2.57.0
|
||||
- GNU Tar 1.35 - available by 'gtar' alias
|
||||
- GNU Wget 1.24.5
|
||||
- gpg (GnuPG) 2.4.5
|
||||
- ImageMagick 7.1.1-38
|
||||
- jq 1.7.1
|
||||
- mongo 5.0.29
|
||||
- mongod 5.0.29
|
||||
- OpenSSL 1.1.1w 11 Sep 2023
|
||||
- Packer 1.9.4
|
||||
- pkg-config 0.29.2
|
||||
- PostgreSQL 14.13 (Homebrew)
|
||||
- psql (PostgreSQL) 14.13 (Homebrew)
|
||||
- Sox 14.4.2
|
||||
- Subversion (SVN) 1.14.3
|
||||
- Switchaudio-osx 1.2.2
|
||||
- Vagrant 2.4.1
|
||||
- VirtualBox 6.1.38r153438
|
||||
- yq 4.44.3
|
||||
- zstd 1.5.6
|
||||
|
||||
### Tools
|
||||
- App Center CLI 3.0.1
|
||||
- AWS CLI 2.17.59
|
||||
- AWS SAM CLI 1.124.0
|
||||
- AWS Session Manager CLI 1.2.650.0
|
||||
- Azure CLI 2.64.0
|
||||
- Azure CLI (azure-devops) 1.0.1
|
||||
- Bicep CLI 0.30.23
|
||||
- Cabal 3.10.3.0
|
||||
- Cmake 3.30.3
|
||||
- CodeQL Action Bundle 2.19.0
|
||||
- Colima 0.7.5
|
||||
- Fastlane 2.222.0
|
||||
- GHC 9.10.1
|
||||
- GHCup 0.1.30.0
|
||||
- Jazzy 0.15.2
|
||||
- Stack 3.1.1
|
||||
- SwiftFormat 0.54.5
|
||||
- Swig 4.2.1
|
||||
- Xcbeautify 1.6.0
|
||||
- Xcode Command Line Tools 14.2.0.0.1.1668646533
|
||||
- Xcodes 1.5.0
|
||||
|
||||
### Linters
|
||||
- SwiftLint 0.53.0
|
||||
- Yamllint 1.35.1
|
||||
|
||||
### Browsers
|
||||
- Safari 17.6 (17618.3.11.11.7)
|
||||
- SafariDriver 17.6 (17618.3.11.11.7)
|
||||
- Google Chrome 129.0.6668.71
|
||||
- Google Chrome for Testing 129.0.6668.70
|
||||
- ChromeDriver 129.0.6668.70
|
||||
- Microsoft Edge 129.0.2792.52
|
||||
- Microsoft Edge WebDriver 129.0.2792.46
|
||||
- Mozilla Firefox 130.0.1
|
||||
- geckodriver 0.35.0
|
||||
- Selenium server 4.25.0
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
| --------------- | ------------------------------------- |
|
||||
| CHROMEWEBDRIVER | /usr/local/share/chromedriver-mac-x64 |
|
||||
| EDGEWEBDRIVER | /usr/local/share/edge_driver |
|
||||
| GECKOWEBDRIVER | /usr/local/opt/geckodriver/bin |
|
||||
|
||||
### Java
|
||||
| Version | Environment Variable |
|
||||
| --------------------- | -------------------- |
|
||||
| 8.0.422+5.1 (default) | JAVA_HOME_8_X64 |
|
||||
| 11.0.24+8 | JAVA_HOME_11_X64 |
|
||||
| 17.0.12+7 | JAVA_HOME_17_X64 |
|
||||
| 21.0.4+7.0 | JAVA_HOME_21_X64 |
|
||||
|
||||
### Cached Tools
|
||||
|
||||
#### PyPy
|
||||
- 2.7.18 [PyPy 7.3.17]
|
||||
- 3.7.13 [PyPy 7.3.9]
|
||||
- 3.8.16 [PyPy 7.3.11]
|
||||
- 3.9.19 [PyPy 7.3.16]
|
||||
- 3.10.14 [PyPy 7.3.17]
|
||||
|
||||
#### Ruby
|
||||
- 3.0.7
|
||||
- 3.1.6
|
||||
- 3.2.5
|
||||
- 3.3.5
|
||||
|
||||
#### Python
|
||||
- 3.7.17
|
||||
- 3.8.18
|
||||
- 3.9.20
|
||||
- 3.10.15
|
||||
- 3.11.9
|
||||
- 3.12.6
|
||||
|
||||
#### Node.js
|
||||
- 16.20.2
|
||||
- 18.20.4
|
||||
- 20.17.0
|
||||
|
||||
#### Go
|
||||
- 1.20.14
|
||||
- 1.21.13
|
||||
- 1.22.7
|
||||
- 1.23.1
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.81.0
|
||||
- Rust 1.81.0
|
||||
- Rustdoc 1.81.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- Bindgen 0.70.1
|
||||
- Cargo-audit 0.20.1
|
||||
- Cargo-outdated 0.15.0
|
||||
- Cbindgen 0.27.0
|
||||
- Clippy 0.1.81
|
||||
- Rustfmt 1.7.1-stable
|
||||
|
||||
### PowerShell Tools
|
||||
- PowerShell 7.4.5
|
||||
|
||||
#### PowerShell Modules
|
||||
- Az: 12.3.0
|
||||
- MarkdownPS: 1.10
|
||||
- Pester: 5.6.1
|
||||
- PSScriptAnalyzer: 1.22.0
|
||||
|
||||
### Web Servers
|
||||
| Name | Version | ConfigFile | ServiceStatus | ListenPort |
|
||||
| ----- | ------- | ------------------------------- | ------------- | ---------- |
|
||||
| httpd | 2.4.62 | /usr/local/etc/httpd/httpd.conf | none | 80 |
|
||||
| nginx | 1.27.1 | /usr/local/etc/nginx/nginx.conf | none | 80 |
|
||||
|
||||
### Xamarin
|
||||
|
||||
#### Visual Studio for Mac
|
||||
| Version | Build | Path |
|
||||
| -------------- | ----------- | ------------------------------------ |
|
||||
| 2019 | 8.10.25.2 | /Applications/Visual Studio 2019.app |
|
||||
| 2022 (default) | 17.6.14.413 | /Applications/Visual Studio.app |
|
||||
|
||||
##### Notes
|
||||
```
|
||||
To use Visual Studio 2019 by default rename the app:
|
||||
mv "/Applications/Visual Studio.app" "/Applications/Visual Studio 2022.app"
|
||||
mv "/Applications/Visual Studio 2019.app" "/Applications/Visual Studio.app"
|
||||
```
|
||||
|
||||
#### Xamarin bundles
|
||||
| symlink | Xamarin.Mono | Xamarin.iOS | Xamarin.Mac | Xamarin.Android |
|
||||
| ----------------- | ------------ | ----------- | ----------- | --------------- |
|
||||
| 6_12_25 | 6.12 | 16.4 | 9.3 | 13.2 |
|
||||
| 6_12_24 | 6.12 | 16.2 | 9.1 | 13.2 |
|
||||
| 6_12_23 | 6.12 | 16.2 | 9.1 | 13.1 |
|
||||
| 6_12_22 | 6.12 | 16.1 | 9.0 | 13.1 |
|
||||
| 6_12_21 (default) | 6.12 | 16.0 | 8.12 | 13.1 |
|
||||
| 6_12_20 | 6.12 | 16.0 | 8.12 | 13.0 |
|
||||
| 6_12_19 | 6.12 | 15.12 | 8.12 | 13.0 |
|
||||
| 6_12_18 | 6.12 | 15.10 | 8.10 | 12.3 |
|
||||
| 6_12_17 | 6.12 | 15.10 | 8.10 | 12.2 |
|
||||
| 6_12_16 | 6.12 | 15.8 | 8.8 | 12.2 |
|
||||
| 6_12_15 | 6.12 | 15.8 | 8.8 | 12.1 |
|
||||
| 6_12_14 | 6.12 | 15.8 | 8.8 | 12.0 |
|
||||
| 6_12_13 | 6.12 | 15.6 | 8.6 | 12.0 |
|
||||
| 6_12_12 | 6.12 | 15.4 | 8.4 | 12.0 |
|
||||
| 6_12_11 | 6.12 | 15.2 | 8.2 | 12.0 |
|
||||
| 6_12_10 | 6.12 | 15.0 | 7.14 | 11.3 |
|
||||
|
||||
#### Unit Test Framework
|
||||
- NUnit 3.6.1
|
||||
|
||||
### Xcode
|
||||
| Version | Build | Path |
|
||||
| -------------- | -------- | ------------------------------ |
|
||||
| 14.2 (default) | 14C18 | /Applications/Xcode_14.2.app |
|
||||
| 14.1 | 14B47b | /Applications/Xcode_14.1.app |
|
||||
| 14.0.1 | 14A400 | /Applications/Xcode_14.0.1.app |
|
||||
| 13.4.1 | 13F100 | /Applications/Xcode_13.4.1.app |
|
||||
| 13.3.1 | 13E500a | /Applications/Xcode_13.3.1.app |
|
||||
| 13.2.1 | 13C100 | /Applications/Xcode_13.2.1.app |
|
||||
| 13.1 | 13A1030d | /Applications/Xcode_13.1.app |
|
||||
|
||||
#### Xcode Support Tools
|
||||
- xcpretty 0.3.0
|
||||
- xcversion 2.8.1
|
||||
|
||||
#### Installed SDKs
|
||||
| SDK | SDK Name | Xcode Version |
|
||||
| ----------------------- | -------------------- | ---------------------- |
|
||||
| macOS 12.0 | macosx12.0 | 13.1 |
|
||||
| macOS 12.1 | macosx12.1 | 13.2.1 |
|
||||
| macOS 12.3 | macosx12.3 | 13.3.1, 13.4.1, 14.0.1 |
|
||||
| macOS 13.0 | macosx13.0 | 14.1 |
|
||||
| macOS 13.1 | macosx13.1 | 14.2 |
|
||||
| iOS 15.0 | iphoneos15.0 | 13.1 |
|
||||
| iOS 15.2 | iphoneos15.2 | 13.2.1 |
|
||||
| iOS 15.4 | iphoneos15.4 | 13.3.1 |
|
||||
| iOS 15.5 | iphoneos15.5 | 13.4.1 |
|
||||
| iOS 16.0 | iphoneos16.0 | 14.0.1 |
|
||||
| iOS 16.1 | iphoneos16.1 | 14.1 |
|
||||
| iOS 16.2 | iphoneos16.2 | 14.2 |
|
||||
| Simulator - iOS 15.0 | iphonesimulator15.0 | 13.1 |
|
||||
| Simulator - iOS 15.2 | iphonesimulator15.2 | 13.2.1 |
|
||||
| Simulator - iOS 15.4 | iphonesimulator15.4 | 13.3.1 |
|
||||
| Simulator - iOS 15.5 | iphonesimulator15.5 | 13.4.1 |
|
||||
| Simulator - iOS 16.0 | iphonesimulator16.0 | 14.0.1 |
|
||||
| Simulator - iOS 16.1 | iphonesimulator16.1 | 14.1 |
|
||||
| Simulator - iOS 16.2 | iphonesimulator16.2 | 14.2 |
|
||||
| tvOS 15.0 | appletvos15.0 | 13.1 |
|
||||
| tvOS 15.2 | appletvos15.2 | 13.2.1 |
|
||||
| tvOS 15.4 | appletvos15.4 | 13.3.1, 13.4.1 |
|
||||
| tvOS 16.0 | appletvos16.0 | 14.0.1 |
|
||||
| tvOS 16.1 | appletvos16.1 | 14.1, 14.2 |
|
||||
| Simulator - tvOS 15.0 | appletvsimulator15.0 | 13.1 |
|
||||
| Simulator - tvOS 15.2 | appletvsimulator15.2 | 13.2.1 |
|
||||
| Simulator - tvOS 15.4 | appletvsimulator15.4 | 13.3.1, 13.4.1 |
|
||||
| Simulator - tvOS 16.0 | appletvsimulator16.0 | 14.0.1 |
|
||||
| Simulator - tvOS 16.1 | appletvsimulator16.1 | 14.1, 14.2 |
|
||||
| watchOS 8.0 | watchos8.0 | 13.1 |
|
||||
| watchOS 8.3 | watchos8.3 | 13.2.1 |
|
||||
| watchOS 8.5 | watchos8.5 | 13.3.1, 13.4.1 |
|
||||
| watchOS 9.0 | watchos9.0 | 14.0.1 |
|
||||
| watchOS 9.1 | watchos9.1 | 14.1, 14.2 |
|
||||
| Simulator - watchOS 8.0 | watchsimulator8.0 | 13.1 |
|
||||
| Simulator - watchOS 8.3 | watchsimulator8.3 | 13.2.1 |
|
||||
| Simulator - watchOS 8.5 | watchsimulator8.5 | 13.3.1, 13.4.1 |
|
||||
| Simulator - watchOS 9.0 | watchsimulator9.0 | 14.0.1 |
|
||||
| Simulator - watchOS 9.1 | watchsimulator9.1 | 14.1, 14.2 |
|
||||
| DriverKit 21.0.1 | driverkit21.0.1 | 13.1 |
|
||||
| DriverKit 21.2 | driverkit21.2 | 13.2.1 |
|
||||
| DriverKit 21.4 | driverkit21.4 | 13.3.1, 13.4.1, 14.0.1 |
|
||||
| DriverKit 22.1 | driverkit22.1 | 14.1 |
|
||||
| DriverKit 22.2 | driverkit22.2 | 14.2 |
|
||||
|
||||
#### Installed Simulators
|
||||
| OS | Simulators |
|
||||
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| iOS 15.0 | iPod touch (7th generation)<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 12<br>iPhone 12 mini<br>iPhone 12 Pro<br>iPhone 12 Pro Max<br>iPhone 13<br>iPhone 13 mini<br>iPhone 13 Pro<br>iPhone 13 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (9th generation)<br>iPad Air (4th generation)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (3rd generation)<br>iPad Pro (12.9-inch) (5th generation)<br>iPad Pro (9.7-inch) |
|
||||
| iOS 15.2 | iPod touch (7th generation)<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 12<br>iPhone 12 mini<br>iPhone 12 Pro<br>iPhone 12 Pro Max<br>iPhone 13<br>iPhone 13 mini<br>iPhone 13 Pro<br>iPhone 13 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (9th generation)<br>iPad Air (4th generation)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (3rd generation)<br>iPad Pro (12.9-inch) (5th generation)<br>iPad Pro (9.7-inch) |
|
||||
| iOS 15.4 | iPod touch (7th generation)<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 12<br>iPhone 12 mini<br>iPhone 12 Pro<br>iPhone 12 Pro Max<br>iPhone 13<br>iPhone 13 mini<br>iPhone 13 Pro<br>iPhone 13 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPhone SE (3rd generation)<br>iPad (9th generation)<br>iPad Air (4th generation)<br>iPad Air (5th generation)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (3rd generation)<br>iPad Pro (12.9-inch) (5th generation)<br>iPad Pro (9.7-inch) |
|
||||
| iOS 15.5 | iPod touch (7th generation)<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 12<br>iPhone 12 mini<br>iPhone 12 Pro<br>iPhone 12 Pro Max<br>iPhone 13<br>iPhone 13 mini<br>iPhone 13 Pro<br>iPhone 13 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPhone SE (3rd generation)<br>iPad (9th generation)<br>iPad Air (4th generation)<br>iPad Air (5th generation)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (3rd generation)<br>iPad Pro (12.9-inch) (5th generation)<br>iPad Pro (9.7-inch) |
|
||||
| iOS 16.0 | iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 12<br>iPhone 12 mini<br>iPhone 12 Pro<br>iPhone 12 Pro Max<br>iPhone 13<br>iPhone 13 mini<br>iPhone 13 Pro<br>iPhone 13 Pro Max<br>iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPhone SE (3rd generation)<br>iPad (9th generation)<br>iPad Air (4th generation)<br>iPad Air (5th generation)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (3rd generation)<br>iPad Pro (12.9-inch) (5th generation)<br>iPad Pro (9.7-inch) |
|
||||
| iOS 16.1 | iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 12<br>iPhone 12 mini<br>iPhone 12 Pro<br>iPhone 12 Pro Max<br>iPhone 13<br>iPhone 13 mini<br>iPhone 13 Pro<br>iPhone 13 Pro Max<br>iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad (9th generation)<br>iPad Air (4th generation)<br>iPad Air (5th generation)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (3rd generation)<br>iPad Pro (11-inch) (4th generation)<br>iPad Pro (12.9-inch) (5th generation)<br>iPad Pro (12.9-inch) (6th generation)<br>iPad Pro (9.7-inch) |
|
||||
| iOS 16.2 | iPod touch (7th generation)<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 12<br>iPhone 12 mini<br>iPhone 12 Pro<br>iPhone 12 Pro Max<br>iPhone 13<br>iPhone 13 mini<br>iPhone 13 Pro<br>iPhone 13 Pro Max<br>iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad (9th generation)<br>iPad Air (4th generation)<br>iPad Air (5th generation)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (3rd generation)<br>iPad Pro (11-inch) (4th generation)<br>iPad Pro (12.9-inch) (5th generation)<br>iPad Pro (12.9-inch) (6th generation)<br>iPad Pro (9.7-inch) |
|
||||
| tvOS 15.0 | Apple TV<br>Apple TV 4K (2nd generation)<br>Apple TV 4K (at 1080p) (2nd generation) |
|
||||
| tvOS 15.2 | Apple TV<br>Apple TV 4K (2nd generation)<br>Apple TV 4K (at 1080p) (2nd generation) |
|
||||
| tvOS 15.4 | Apple TV<br>Apple TV 4K (2nd generation)<br>Apple TV 4K (at 1080p) (2nd generation) |
|
||||
| tvOS 16.0 | Apple TV<br>Apple TV 4K (2nd generation)<br>Apple TV 4K (at 1080p) (2nd generation) |
|
||||
| tvOS 16.1 | Apple TV<br>Apple TV 4K (2nd generation)<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p)<br>Apple TV 4K (at 1080p) (2nd generation) |
|
||||
| watchOS 8.0 | Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm<br>Apple Watch Series 6 - 40mm<br>Apple Watch Series 6 - 44mm<br>Apple Watch Series 7 - 41mm<br>Apple Watch Series 7 - 45mm |
|
||||
| watchOS 8.3 | Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm<br>Apple Watch Series 6 - 40mm<br>Apple Watch Series 6 - 44mm<br>Apple Watch Series 7 - 41mm<br>Apple Watch Series 7 - 45mm |
|
||||
| watchOS 8.5 | Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm<br>Apple Watch Series 6 - 40mm<br>Apple Watch Series 6 - 44mm<br>Apple Watch Series 7 - 41mm<br>Apple Watch Series 7 - 45mm |
|
||||
| watchOS 9.0 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 5 (40mm)<br>Apple Watch Series 5 (44mm)<br>Apple Watch Series 6 (40mm)<br>Apple Watch Series 6 (44mm)<br>Apple Watch Series 7 (41mm)<br>Apple Watch Series 7 (45mm)<br>Apple Watch Series 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Ultra (49mm) |
|
||||
| watchOS 9.1 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 5 (40mm)<br>Apple Watch Series 5 (44mm)<br>Apple Watch Series 6 (40mm)<br>Apple Watch Series 6 (44mm)<br>Apple Watch Series 7 (41mm)<br>Apple Watch Series 7 (45mm)<br>Apple Watch Series 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Ultra (49mm) |
|
||||
|
||||
### Android
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 8.0 |
|
||||
| Android Emulator | 35.1.21 |
|
||||
| Android SDK Build-tools | 35.0.0<br>34.0.0<br>33.0.0 33.0.1 33.0.2 33.0.3<br>32.0.0<br>31.0.0 |
|
||||
| Android SDK Platforms | android-35 (rev 1)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3)<br>android-32 (rev 1)<br>android-31 (rev 1) |
|
||||
| Android SDK Platform-Tools | 35.0.2 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| CMake | 3.18.1<br>3.22.1 |
|
||||
| Google Play services | 49 |
|
||||
| Google Repository | 58 |
|
||||
| NDK | 24.0.8215888<br>25.2.9519653 (default)<br>26.3.11579264<br>27.1.12297006 |
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
| ----------------------- | --------------------------------------------------- |
|
||||
| ANDROID_HOME | /Users/runner/Library/Android/sdk |
|
||||
| ANDROID_NDK | /Users/runner/Library/Android/sdk/ndk/25.2.9519653 |
|
||||
| ANDROID_NDK_HOME | /Users/runner/Library/Android/sdk/ndk/25.2.9519653 |
|
||||
| ANDROID_NDK_LATEST_HOME | /Users/runner/Library/Android/sdk/ndk/27.1.12297006 |
|
||||
| ANDROID_NDK_ROOT | /Users/runner/Library/Android/sdk/ndk/25.2.9519653 |
|
||||
| ANDROID_SDK_ROOT | /Users/runner/Library/Android/sdk |
|
||||
|
||||
### Miscellaneous
|
||||
- libXext 1.3.6
|
||||
- libXft 2.3.8
|
||||
- Tcl/Tk 8.6.15
|
||||
- Zlib 1.3.1
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
| ----------------- | ----------------------------------------------------------------------------------------- |
|
||||
| PARALLELS_DMG_URL | https://download.parallels.com/desktop/v20/20.0.1-55659/ParallelsDesktop-20.0.1-55659.dmg |
|
||||
|
||||
##### Notes
|
||||
```
|
||||
If you want to use Parallels Desktop you should download a package from URL stored in
|
||||
PARALLELS_DMG_URL environment variable. A system extension is allowed for this version.
|
||||
```
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[macOS 14] Xcode 16.0 will be replaced by Xcode 16.2 in macOS-14 images on January 6, 2025](https://github.com/actions/runner-images/issues/11203) |
|
||||
| [[macOS] Ruby version 3.0 will be removed from the images on Feb 10, 2025 and 3.3 will be set as default. ](https://github.com/actions/runner-images/issues/11345) |
|
||||
| [[macOS] The macOS 12 Actions runner image will begin deprecation on 10/7/24 and will be fully unsupported by 12/3/24 for GitHub and by 01/13/25 for ADO](https://github.com/actions/runner-images/issues/10721) |
|
||||
| [macOS 15 (Sequoia) is now available as a public beta in GitHub Actions](https://github.com/actions/runner-images/issues/10686) |
|
||||
***
|
||||
# macOS 13
|
||||
- OS Version: macOS 13.7.2 (22H313)
|
||||
- Kernel Version: Darwin 22.6.0
|
||||
- Image Version: 20250106.546
|
||||
- Image Version: 20250120.597
|
||||
|
||||
## Installed Software
|
||||
|
||||
### Language and Runtime
|
||||
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.410, 8.0.101, 8.0.204, 8.0.303, 8.0.404
|
||||
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.410, 8.0.101, 8.0.204, 8.0.303, 8.0.405, 9.0.102
|
||||
- Bash 3.2.57(1)-release
|
||||
- Clang/LLVM 14.0.0
|
||||
- Clang/LLVM (Homebrew) 15.0.7 - available on `$(brew --prefix llvm@15)/bin/clang`
|
||||
@@ -25,8 +25,8 @@
|
||||
- Kotlin 2.1.0-release-394
|
||||
- Mono 6.12.0.188
|
||||
- Node.js 20.18.1
|
||||
- Perl 5.40.0
|
||||
- PHP 8.4.2
|
||||
- Perl 5.40.1
|
||||
- PHP 8.4.3
|
||||
- Python3 3.13.1
|
||||
- Ruby 3.0.7p220
|
||||
|
||||
@@ -35,13 +35,13 @@
|
||||
- Carthage 0.40.0
|
||||
- CocoaPods 1.16.2
|
||||
- Composer 2.8.4
|
||||
- Homebrew 4.4.14
|
||||
- Homebrew 4.4.16
|
||||
- NPM 10.8.2
|
||||
- NuGet 6.3.1.1
|
||||
- Pip3 24.3.1 (python 3.13)
|
||||
- Pipx 1.7.1
|
||||
- RubyGems 3.5.23
|
||||
- Vcpkg 2024 (build from commit 65be70199)
|
||||
- Vcpkg 2025 (build from commit cf035d991)
|
||||
- Yarn 1.22.22
|
||||
|
||||
### Project Management
|
||||
@@ -53,13 +53,13 @@
|
||||
- 7-Zip 17.05
|
||||
- aria2 1.37.0
|
||||
- azcopy 10.27.1
|
||||
- bazel 8.0.0
|
||||
- bazel 8.0.1
|
||||
- bazelisk 1.25.0
|
||||
- bsdtar 3.5.3 - available by 'tar' alias
|
||||
- Curl 8.11.1
|
||||
- Git 2.47.1
|
||||
- Git LFS 3.6.0
|
||||
- GitHub CLI 2.64.0
|
||||
- Git 2.48.1
|
||||
- Git LFS 3.6.1
|
||||
- GitHub CLI 2.65.0
|
||||
- GNU Tar 1.35 - available by 'gtar' alias
|
||||
- GNU Wget 1.25.0
|
||||
- gpg (GnuPG) 2.4.7
|
||||
@@ -68,18 +68,18 @@
|
||||
- Packer 1.11.2
|
||||
- pkgconf 2.3.0
|
||||
- Unxip 3.1
|
||||
- yq 4.44.6
|
||||
- yq 4.45.1
|
||||
- zstd 1.5.6
|
||||
|
||||
### Tools
|
||||
- AWS CLI 2.22.28
|
||||
- AWS CLI 2.23.2
|
||||
- AWS SAM CLI 1.132.0
|
||||
- AWS Session Manager CLI 1.2.694.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure CLI (azure-devops) 1.0.1
|
||||
- Bicep CLI 0.32.4
|
||||
- Cmake 3.31.3
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- Cmake 3.31.4
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Fastlane 2.226.0
|
||||
- SwiftFormat 0.55.4
|
||||
- Xcbeautify 2.17.0
|
||||
@@ -87,17 +87,17 @@
|
||||
- Xcodes 1.6.0
|
||||
|
||||
### Linters
|
||||
- SwiftLint 0.57.1
|
||||
- SwiftLint 0.58.2
|
||||
|
||||
### Browsers
|
||||
- Safari 18.2 (18620.1.16.111.6)
|
||||
- SafariDriver 18.2 (18620.1.16.111.6)
|
||||
- Google Chrome 131.0.6778.205
|
||||
- Google Chrome for Testing 131.0.6778.204
|
||||
- ChromeDriver 131.0.6778.204
|
||||
- Microsoft Edge 131.0.2903.112
|
||||
- Microsoft Edge WebDriver 131.0.2903.112
|
||||
- Mozilla Firefox 133.0.3
|
||||
- Google Chrome 132.0.6834.84
|
||||
- Google Chrome for Testing 132.0.6834.83
|
||||
- ChromeDriver 132.0.6834.83
|
||||
- Microsoft Edge 132.0.2957.115
|
||||
- Microsoft Edge WebDriver 132.0.2957.115
|
||||
- Mozilla Firefox 134.0.1
|
||||
- geckodriver 0.35.0
|
||||
- Selenium server 4.27.0
|
||||
|
||||
@@ -129,7 +129,8 @@
|
||||
- 3.0.7
|
||||
- 3.1.6
|
||||
- 3.2.6
|
||||
- 3.3.6
|
||||
- 3.3.7
|
||||
- 3.4.1
|
||||
|
||||
#### Python
|
||||
- 3.8.18
|
||||
@@ -142,7 +143,7 @@
|
||||
#### Node.js
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 22.13.0
|
||||
|
||||
#### Go
|
||||
- 1.21.13
|
||||
@@ -150,13 +151,13 @@
|
||||
- 1.23.4
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- Clippy 0.1.83
|
||||
- Clippy 0.1.84
|
||||
- Rustfmt 1.8.0-stable
|
||||
|
||||
### PowerShell Tools
|
||||
@@ -164,7 +165,7 @@
|
||||
|
||||
#### PowerShell Modules
|
||||
- Az: 12.4.0
|
||||
- Pester: 5.6.1
|
||||
- Pester: 5.7.1
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
|
||||
### Xcode
|
||||
@@ -211,8 +212,8 @@
|
||||
| Simulator - watchOS 9.4 | watchsimulator9.4 | 14.3.1 |
|
||||
| Simulator - watchOS 10.0 | watchsimulator10.0 | 15.0.1 |
|
||||
| Simulator - watchOS 10.2 | watchsimulator10.2 | 15.1, 15.2 |
|
||||
| Simulator - visionOS 1.0 | xrsimulator1.0 | 15.2 |
|
||||
| visionOS 1.0 | xros1.0 | 15.2 |
|
||||
| Simulator - visionOS 1.0 | xrsimulator1.0 | 15.2 |
|
||||
| Asset Runtime SDK for macOS hosts targeting watchOS 9.4 | assetruntime.host.macosx.target.watchos9.4 | 14.3.1 |
|
||||
| Asset Runtime SDK for macOS hosts targeting tvOS 16.4 | assetruntime.host.macosx.target.appletvos16.4 | 14.3.1 |
|
||||
| Asset Runtime SDK for macOS hosts targeting iOS 16.4 | assetruntime.host.macosx.target.iphoneos16.4 | 14.3.1 |
|
||||
@@ -243,8 +244,8 @@
|
||||
| Package Name | Version |
|
||||
| -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 11.0 |
|
||||
| Android Emulator | 35.2.10 |
|
||||
| Android SDK Build-tools | 35.0.0<br>34.0.0<br>33.0.2 33.0.3 |
|
||||
| Android Emulator | 35.3.11 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1<br>34.0.0<br>33.0.2 33.0.3 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3) |
|
||||
| Android SDK Platform-Tools | 35.0.2 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
@@ -269,7 +270,7 @@
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
| ----------------- | ----------------------------------------------------------------------------------------- |
|
||||
| PARALLELS_DMG_URL | https://download.parallels.com/desktop/v20/20.1.3-55743/ParallelsDesktop-20.1.3-55743.dmg |
|
||||
| PARALLELS_DMG_URL | https://download.parallels.com/desktop/v20/20.2.0-55872/ParallelsDesktop-20.2.0-55872.dmg |
|
||||
|
||||
##### Notes
|
||||
```
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[macOS 14] Xcode 16.0 will be replaced by Xcode 16.2 in macOS-14 images on January 6, 2025](https://github.com/actions/runner-images/issues/11203) |
|
||||
| [[macOS] Ruby version 3.0 will be removed from the images on Feb 10, 2025 and 3.3 will be set as default. ](https://github.com/actions/runner-images/issues/11345) |
|
||||
| [[macOS] The macOS 12 Actions runner image will begin deprecation on 10/7/24 and will be fully unsupported by 12/3/24 for GitHub and by 01/13/25 for ADO](https://github.com/actions/runner-images/issues/10721) |
|
||||
| [macOS 15 (Sequoia) is now available as a public beta in GitHub Actions](https://github.com/actions/runner-images/issues/10686) |
|
||||
***
|
||||
# macOS 13
|
||||
- OS Version: macOS 13.7.2 (22H313)
|
||||
- Kernel Version: Darwin 22.6.0
|
||||
- Image Version: 20241216.537
|
||||
- Image Version: 20250127.672
|
||||
|
||||
## Installed Software
|
||||
|
||||
### Language and Runtime
|
||||
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.410, 8.0.101, 8.0.204, 8.0.303, 8.0.404
|
||||
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.410, 8.0.101, 8.0.204, 8.0.303, 8.0.405, 9.0.102
|
||||
- Bash 3.2.57(1)-release
|
||||
- Clang/LLVM 14.0.0
|
||||
- Clang/LLVM (Homebrew) 15.0.7 - available on `$(brew --prefix llvm@15)/bin/clang`
|
||||
@@ -24,8 +24,8 @@
|
||||
- GNU Fortran 14 (Homebrew GCC 14.2.0_1) - available by `gfortran-14` alias
|
||||
- Kotlin 2.1.0-release-394
|
||||
- Mono 6.12.0.188
|
||||
- Node.js 20.18.1
|
||||
- Perl 5.40.0
|
||||
- Node.js 20.18.2
|
||||
- Perl 5.40.1
|
||||
- Python3 3.13.1
|
||||
- Ruby 3.0.7p220
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
- Bundler 2.5.23
|
||||
- Carthage 0.40.0
|
||||
- CocoaPods 1.16.2
|
||||
- Homebrew 4.4.11
|
||||
- Homebrew 4.4.17
|
||||
- NPM 10.8.2
|
||||
- NuGet 6.3.1.1
|
||||
- Pip3 24.3.1 (python 3.13)
|
||||
@@ -44,42 +44,42 @@
|
||||
### Project Management
|
||||
- Apache Ant 1.10.15
|
||||
- Apache Maven 3.9.9
|
||||
- Gradle 8.11.1
|
||||
- Gradle 8.12.1
|
||||
|
||||
### Utilities
|
||||
- 7-Zip 17.05
|
||||
- aria2 1.37.0
|
||||
- azcopy 10.27.1
|
||||
- bazel 8.0.0
|
||||
- bazel 8.0.1
|
||||
- bazelisk 1.25.0
|
||||
- bsdtar 3.5.3 - available by 'tar' alias
|
||||
- Curl 8.7.1
|
||||
- Git 2.47.1
|
||||
- Git LFS 3.6.0
|
||||
- GitHub CLI 2.63.2
|
||||
- Git 2.48.1
|
||||
- Git LFS 3.6.1
|
||||
- GitHub CLI 2.65.0
|
||||
- GNU Tar 1.35 - available by 'gtar' alias
|
||||
- GNU Wget 1.25.0
|
||||
- gpg (GnuPG) 2.4.6
|
||||
- gpg (GnuPG) 2.4.7
|
||||
- jq 1.7.1
|
||||
- OpenSSL 1.1.1w 11 Sep 2023
|
||||
- Packer 1.11.2
|
||||
- Packer 1.12.0
|
||||
- pkgconf 2.3.0
|
||||
- Unxip 3.1
|
||||
- yq 4.44.6
|
||||
- yq 4.45.1
|
||||
- zstd 1.5.6
|
||||
|
||||
### Tools
|
||||
- AWS CLI 2.22.17
|
||||
- AWS CLI 2.23.6
|
||||
- AWS SAM CLI 1.132.0
|
||||
- AWS Session Manager CLI 1.2.694.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure CLI (azure-devops) 1.0.1
|
||||
- Bicep CLI 0.32.4
|
||||
- Cmake 3.31.2
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- Bicep CLI 0.33.13
|
||||
- Cmake 3.31.5
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Fastlane 2.226.0
|
||||
- SwiftFormat 0.55.3
|
||||
- Xcbeautify 2.16.0
|
||||
- SwiftFormat 0.55.5
|
||||
- Xcbeautify 2.23.0
|
||||
- Xcode Command Line Tools 14.3.1.0.1.1683849156
|
||||
- Xcodes 1.6.0
|
||||
|
||||
@@ -88,10 +88,10 @@
|
||||
### Browsers
|
||||
- Safari 18.2 (18620.1.16.111.6)
|
||||
- SafariDriver 18.2 (18620.1.16.111.6)
|
||||
- Google Chrome 131.0.6778.140
|
||||
- Google Chrome for Testing 131.0.6778.108
|
||||
- ChromeDriver 131.0.6778.108
|
||||
- Selenium server 4.27.0
|
||||
- Google Chrome 132.0.6834.111
|
||||
- Google Chrome for Testing 132.0.6834.110
|
||||
- ChromeDriver 132.0.6834.110
|
||||
- Selenium server 4.28.0
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
@@ -101,11 +101,11 @@
|
||||
| GECKOWEBDRIVER | |
|
||||
|
||||
### Java
|
||||
| Version | Environment Variable |
|
||||
| -------------------- | -------------------- |
|
||||
| 11.0.25+9 | JAVA_HOME_11_arm64 |
|
||||
| 17.0.13+11 (default) | JAVA_HOME_17_arm64 |
|
||||
| 21.0.5+11.0 | JAVA_HOME_21_arm64 |
|
||||
| Version | Environment Variable |
|
||||
| ------------------- | -------------------- |
|
||||
| 11.0.26+4 | JAVA_HOME_11_arm64 |
|
||||
| 17.0.14+7 (default) | JAVA_HOME_17_arm64 |
|
||||
| 21.0.6+7.0 | JAVA_HOME_21_arm64 |
|
||||
|
||||
### Cached Tools
|
||||
|
||||
@@ -113,7 +113,8 @@
|
||||
- 3.0.7
|
||||
- 3.1.6
|
||||
- 3.2.6
|
||||
- 3.3.6
|
||||
- 3.3.7
|
||||
- 3.4.1
|
||||
|
||||
#### Python
|
||||
- 3.11.9
|
||||
@@ -121,31 +122,31 @@
|
||||
- 3.13.1
|
||||
|
||||
#### Node.js
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 18.20.6
|
||||
- 20.18.2
|
||||
- 22.13.1
|
||||
|
||||
#### Go
|
||||
- 1.21.13
|
||||
- 1.22.10
|
||||
- 1.23.4
|
||||
- 1.22.11
|
||||
- 1.23.5
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- Clippy 0.1.83
|
||||
- Clippy 0.1.84
|
||||
- Rustfmt 1.8.0-stable
|
||||
|
||||
### PowerShell Tools
|
||||
- PowerShell 7.4.6
|
||||
- PowerShell 7.4.7
|
||||
|
||||
#### PowerShell Modules
|
||||
- Az: 12.4.0
|
||||
- Pester: 5.6.1
|
||||
- Pester: 5.7.1
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
|
||||
### Xcode
|
||||
@@ -192,8 +193,8 @@
|
||||
| Simulator - watchOS 9.4 | watchsimulator9.4 | 14.3.1 |
|
||||
| Simulator - watchOS 10.0 | watchsimulator10.0 | 15.0.1 |
|
||||
| Simulator - watchOS 10.2 | watchsimulator10.2 | 15.1, 15.2 |
|
||||
| Simulator - visionOS 1.0 | xrsimulator1.0 | 15.2 |
|
||||
| visionOS 1.0 | xros1.0 | 15.2 |
|
||||
| Simulator - visionOS 1.0 | xrsimulator1.0 | 15.2 |
|
||||
| Asset Runtime SDK for macOS hosts targeting watchOS 9.4 | assetruntime.host.macosx.target.watchos9.4 | 14.3.1 |
|
||||
| Asset Runtime SDK for macOS hosts targeting tvOS 16.4 | assetruntime.host.macosx.target.appletvos16.4 | 14.3.1 |
|
||||
| Asset Runtime SDK for macOS hosts targeting iOS 16.4 | assetruntime.host.macosx.target.iphoneos16.4 | 14.3.1 |
|
||||
@@ -225,9 +226,9 @@
|
||||
| Package Name | Version |
|
||||
| -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 11.0 |
|
||||
| Android Emulator | 35.2.10 |
|
||||
| Android SDK Build-tools | 35.0.0<br>34.0.0<br>33.0.2 33.0.3 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 1)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3) |
|
||||
| Android Emulator | 35.3.11 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1<br>34.0.0<br>33.0.2 33.0.3 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3) |
|
||||
| Android SDK Platform-Tools | 35.0.2 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| CMake | 3.31.0 |
|
||||
|
||||
@@ -1,18 +1,17 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[macOS 14] Xcode 16.0 will be replaced by Xcode 16.2 in macOS-14 images on January 6, 2025](https://github.com/actions/runner-images/issues/11203) |
|
||||
| [[macOS] The macOS 12 Actions runner image will begin deprecation on 10/7/24 and will be fully unsupported by 12/3/24 for GitHub and by 01/13/25 for ADO](https://github.com/actions/runner-images/issues/10721) |
|
||||
| [[macOS] Ruby version 3.0 will be removed from the images on Feb 10, 2025 and 3.3 will be set as default. ](https://github.com/actions/runner-images/issues/11345) |
|
||||
| [macOS 15 (Sequoia) is now available as a public beta in GitHub Actions](https://github.com/actions/runner-images/issues/10686) |
|
||||
***
|
||||
# macOS 14
|
||||
- OS Version: macOS 14.7.2 (23H311)
|
||||
- Kernel Version: Darwin 23.6.0
|
||||
- Image Version: 20250106.587
|
||||
- Image Version: 20250127.727
|
||||
|
||||
## Installed Software
|
||||
|
||||
### Language and Runtime
|
||||
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.410, 8.0.101, 8.0.204, 8.0.303, 8.0.404
|
||||
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.410, 8.0.101, 8.0.204, 8.0.303, 8.0.405, 9.0.102
|
||||
- Bash 3.2.57(1)-release
|
||||
- Clang/LLVM 15.0.0
|
||||
- Clang/LLVM (Homebrew) 15.0.7 - available on `$(brew --prefix llvm@15)/bin/clang`
|
||||
@@ -24,9 +23,9 @@
|
||||
- GNU Fortran 14 (Homebrew GCC 14.2.0_1) - available by `gfortran-14` alias
|
||||
- Kotlin 2.1.0-release-394
|
||||
- Mono 6.12.0.188
|
||||
- Node.js 20.18.1
|
||||
- Perl 5.40.0
|
||||
- PHP 8.4.2
|
||||
- Node.js 20.18.2
|
||||
- Perl 5.40.1
|
||||
- PHP 8.4.3
|
||||
- Python3 3.13.1
|
||||
- Ruby 3.0.7p220
|
||||
|
||||
@@ -34,11 +33,11 @@
|
||||
- Bundler 2.5.23
|
||||
- Carthage 0.40.0
|
||||
- CocoaPods 1.16.2
|
||||
- Composer 2.8.4
|
||||
- Homebrew 4.4.15
|
||||
- Composer 2.8.5
|
||||
- Homebrew 4.4.17
|
||||
- NPM 10.8.2
|
||||
- NuGet 6.3.1.1
|
||||
- Pip3 24.3.1 (python 3.13)
|
||||
- Pip3 25.0 (python 3.13)
|
||||
- Pipx 1.7.1
|
||||
- RubyGems 3.5.23
|
||||
- Yarn 1.22.22
|
||||
@@ -46,59 +45,59 @@
|
||||
### Project Management
|
||||
- Apache Ant 1.10.15
|
||||
- Apache Maven 3.9.9
|
||||
- Gradle 8.12
|
||||
- Gradle 8.12.1
|
||||
|
||||
### Utilities
|
||||
- 7-Zip 17.05
|
||||
- aria2 1.37.0
|
||||
- azcopy 10.27.1
|
||||
- bazel 8.0.0
|
||||
- bazel 8.0.1
|
||||
- bazelisk 1.25.0
|
||||
- bsdtar 3.5.3 - available by 'tar' alias
|
||||
- Curl 8.11.1
|
||||
- Git 2.47.1
|
||||
- Git LFS 3.6.0
|
||||
- GitHub CLI 2.64.0
|
||||
- Git 2.48.1
|
||||
- Git LFS 3.6.1
|
||||
- GitHub CLI 2.65.0
|
||||
- GNU Tar 1.35 - available by 'gtar' alias
|
||||
- GNU Wget 1.25.0
|
||||
- gpg (GnuPG) 2.4.7
|
||||
- jq 1.7.1
|
||||
- OpenSSL 1.1.1w 11 Sep 2023
|
||||
- Packer 1.11.2
|
||||
- Packer 1.12.0
|
||||
- pkgconf 2.3.0
|
||||
- Unxip 3.1
|
||||
- yq 4.44.6
|
||||
- yq 4.45.1
|
||||
- zstd 1.5.6
|
||||
|
||||
### Tools
|
||||
- AWS CLI 2.22.28
|
||||
- AWS CLI 2.23.6
|
||||
- AWS SAM CLI 1.132.0
|
||||
- AWS Session Manager CLI 1.2.694.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure CLI (azure-devops) 1.0.1
|
||||
- Bicep CLI 0.32.4
|
||||
- Cmake 3.31.3
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- Bicep CLI 0.33.13
|
||||
- Cmake 3.31.5
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Fastlane 2.226.0
|
||||
- SwiftFormat 0.55.4
|
||||
- Xcbeautify 2.17.0
|
||||
- SwiftFormat 0.55.5
|
||||
- Xcbeautify 2.23.0
|
||||
- Xcode Command Line Tools 16.2.0.0.1.1733547573
|
||||
- Xcodes 1.6.0
|
||||
|
||||
### Linters
|
||||
- SwiftLint 0.57.1
|
||||
- SwiftLint 0.58.2
|
||||
|
||||
### Browsers
|
||||
- Safari 18.2 (19620.1.16.111.6)
|
||||
- SafariDriver 18.2 (19620.1.16.111.6)
|
||||
- Google Chrome 131.0.6778.205
|
||||
- Google Chrome for Testing 131.0.6778.204
|
||||
- ChromeDriver 131.0.6778.204
|
||||
- Microsoft Edge 131.0.2903.112
|
||||
- Microsoft Edge WebDriver 131.0.2903.112
|
||||
- Mozilla Firefox 133.0.3
|
||||
- Google Chrome 132.0.6834.111
|
||||
- Google Chrome for Testing 132.0.6834.110
|
||||
- ChromeDriver 132.0.6834.110
|
||||
- Microsoft Edge 132.0.2957.127
|
||||
- Microsoft Edge WebDriver 132.0.2957.127
|
||||
- Mozilla Firefox 134.0.2
|
||||
- geckodriver 0.35.0
|
||||
- Selenium server 4.27.0
|
||||
- Selenium server 4.28.0
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
@@ -108,12 +107,12 @@
|
||||
| GECKOWEBDRIVER | /usr/local/opt/geckodriver/bin |
|
||||
|
||||
### Java
|
||||
| Version | Environment Variable |
|
||||
| --------------------- | -------------------- |
|
||||
| 8.0.432+6 | JAVA_HOME_8_X64 |
|
||||
| 11.0.25+9 | JAVA_HOME_11_X64 |
|
||||
| 17.0.13+11 | JAVA_HOME_17_X64 |
|
||||
| 21.0.5+11.0 (default) | JAVA_HOME_21_X64 |
|
||||
| Version | Environment Variable |
|
||||
| -------------------- | -------------------- |
|
||||
| 8.0.442+6 | JAVA_HOME_8_X64 |
|
||||
| 11.0.26+4 | JAVA_HOME_11_X64 |
|
||||
| 17.0.14+7 | JAVA_HOME_17_X64 |
|
||||
| 21.0.6+7.0 (default) | JAVA_HOME_21_X64 |
|
||||
|
||||
### Cached Tools
|
||||
|
||||
@@ -121,7 +120,8 @@
|
||||
- 3.0.7
|
||||
- 3.1.6
|
||||
- 3.2.6
|
||||
- 3.3.6
|
||||
- 3.3.7
|
||||
- 3.4.1
|
||||
|
||||
#### Python
|
||||
- 3.9.21
|
||||
@@ -131,31 +131,31 @@
|
||||
- 3.13.1
|
||||
|
||||
#### Node.js
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 18.20.6
|
||||
- 20.18.2
|
||||
- 22.13.1
|
||||
|
||||
#### Go
|
||||
- 1.21.13
|
||||
- 1.22.10
|
||||
- 1.23.4
|
||||
- 1.22.11
|
||||
- 1.23.5
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- Clippy 0.1.83
|
||||
- Clippy 0.1.84
|
||||
- Rustfmt 1.8.0-stable
|
||||
|
||||
### PowerShell Tools
|
||||
- PowerShell 7.4.6
|
||||
- PowerShell 7.4.7
|
||||
|
||||
#### PowerShell Modules
|
||||
- Az: 12.4.0
|
||||
- Pester: 5.6.1
|
||||
- Pester: 5.7.1
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
|
||||
### Xcode
|
||||
@@ -216,14 +216,14 @@
|
||||
| Simulator - watchOS 11.2 | watchsimulator11.2 | 16.2 |
|
||||
| Simulator - visionOS 1.0 | xrsimulator1.0 | 15.2 |
|
||||
| visionOS 1.0 | xros1.0 | 15.2 |
|
||||
| visionOS 1.1 | xros1.1 | 15.3 |
|
||||
| Simulator - visionOS 1.1 | xrsimulator1.1 | 15.3 |
|
||||
| visionOS 1.2 | xros1.2 | 15.4 |
|
||||
| visionOS 1.1 | xros1.1 | 15.3 |
|
||||
| Simulator - visionOS 1.2 | xrsimulator1.2 | 15.4 |
|
||||
| Simulator - visionOS 2.1 | xrsimulator2.1 | 16.1 |
|
||||
| visionOS 1.2 | xros1.2 | 15.4 |
|
||||
| visionOS 2.1 | xros2.1 | 16.1 |
|
||||
| visionOS 2.2 | xros2.2 | 16.2 |
|
||||
| Simulator - visionOS 2.1 | xrsimulator2.1 | 16.1 |
|
||||
| Simulator - visionOS 2.2 | xrsimulator2.2 | 16.2 |
|
||||
| visionOS 2.2 | xros2.2 | 16.2 |
|
||||
| DriverKit 23.0 | driverkit23.0 | 15.0.1 |
|
||||
| DriverKit 23.2 | driverkit23.2 | 15.1, 15.2 |
|
||||
| DriverKit 23.4 | driverkit23.4 | 15.3 |
|
||||
@@ -232,30 +232,33 @@
|
||||
| DriverKit 24.2 | driverkit24.2 | 16.2 |
|
||||
|
||||
#### Installed Simulators
|
||||
| OS | Simulators |
|
||||
| ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| iOS 17.0 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air (5th generation)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (4th generation)<br>iPad Pro (12.9-inch) (6th generation) |
|
||||
| iOS 17.2 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air (5th generation)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (4th generation)<br>iPad Pro (12.9-inch) (6th generation) |
|
||||
| iOS 17.4 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air (5th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (4th generation)<br>iPad Pro (12.9-inch) (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 17.5 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.1 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad mini (A17 Pro)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| tvOS 17.0 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 17.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 17.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 17.5 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.1 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| watchOS 10.0 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 5 (40mm)<br>Apple Watch Series 5 (44mm)<br>Apple Watch Series 6 (40mm)<br>Apple Watch Series 6 (44mm)<br>Apple Watch Series 7 (41mm)<br>Apple Watch Series 7 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 10.2 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 5 (40mm)<br>Apple Watch Series 5 (44mm)<br>Apple Watch Series 6 (40mm)<br>Apple Watch Series 6 (44mm)<br>Apple Watch Series 7 (41mm)<br>Apple Watch Series 7 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 10.4 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 5 (40mm)<br>Apple Watch Series 5 (44mm)<br>Apple Watch Series 6 (40mm)<br>Apple Watch Series 6 (44mm)<br>Apple Watch Series 7 (41mm)<br>Apple Watch Series 7 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 10.5 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 5 (40mm)<br>Apple Watch Series 5 (44mm)<br>Apple Watch Series 6 (40mm)<br>Apple Watch Series 6 (44mm)<br>Apple Watch Series 7 (41mm)<br>Apple Watch Series 7 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.1 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Series 5 (40mm)<br>Apple Watch Series 5 (44mm)<br>Apple Watch Series 6 (40mm)<br>Apple Watch Series 6 (44mm)<br>Apple Watch Series 7 (41mm)<br>Apple Watch Series 7 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| OS | Simulators |
|
||||
| ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| iOS 17.0 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air (5th generation)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (4th generation)<br>iPad Pro (12.9-inch) (6th generation) |
|
||||
| iOS 17.2 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air (5th generation)<br>iPad mini (6th generation)<br>iPad Pro (11-inch) (4th generation)<br>iPad Pro (12.9-inch) (6th generation) |
|
||||
| iOS 17.4 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 17.5 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.1 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (A17 Pro)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.2 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (A17 Pro)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| tvOS 17.0 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 17.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 17.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 17.5 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.1 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| watchOS 10.0 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 10.2 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 10.4 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 10.5 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.1 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.2 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
|
||||
### Android
|
||||
| Package Name | Version |
|
||||
| -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 11.0 |
|
||||
| Android Emulator | 35.2.10 |
|
||||
| Android SDK Build-tools | 35.0.0<br>34.0.0<br>33.0.2 33.0.3 |
|
||||
| Android Emulator | 35.3.11 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1<br>34.0.0<br>33.0.2 33.0.3 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3) |
|
||||
| Android SDK Platform-Tools | 35.0.2 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
@@ -280,7 +283,7 @@
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
| ----------------- | ----------------------------------------------------------------------------------------- |
|
||||
| PARALLELS_DMG_URL | https://download.parallels.com/desktop/v20/20.1.3-55743/ParallelsDesktop-20.1.3-55743.dmg |
|
||||
| PARALLELS_DMG_URL | https://download.parallels.com/desktop/v20/20.2.0-55872/ParallelsDesktop-20.2.0-55872.dmg |
|
||||
|
||||
##### Notes
|
||||
```
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[macOS 14] Xcode 16.0 will be replaced by Xcode 16.2 in macOS-14 images on January 6, 2025](https://github.com/actions/runner-images/issues/11203) |
|
||||
| [[macOS] Ruby version 3.0 will be removed from the images on Feb 10, 2025 and 3.3 will be set as default. ](https://github.com/actions/runner-images/issues/11345) |
|
||||
| [[macOS] The macOS 12 Actions runner image will begin deprecation on 10/7/24 and will be fully unsupported by 12/3/24 for GitHub and by 01/13/25 for ADO](https://github.com/actions/runner-images/issues/10721) |
|
||||
| [macOS 15 (Sequoia) is now available as a public beta in GitHub Actions](https://github.com/actions/runner-images/issues/10686) |
|
||||
***
|
||||
# macOS 14
|
||||
- OS Version: macOS 14.7.2 (23H311)
|
||||
- Kernel Version: Darwin 23.6.0
|
||||
- Image Version: 20250106.725
|
||||
- Image Version: 20250120.774
|
||||
|
||||
## Installed Software
|
||||
|
||||
### Language and Runtime
|
||||
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.410, 8.0.101, 8.0.204, 8.0.303, 8.0.404
|
||||
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.410, 8.0.101, 8.0.204, 8.0.303, 8.0.405, 9.0.102
|
||||
- Bash 3.2.57(1)-release
|
||||
- Clang/LLVM 15.0.0
|
||||
- Clang/LLVM (Homebrew) 15.0.7 - available on `$(brew --prefix llvm@15)/bin/clang`
|
||||
@@ -25,7 +25,7 @@
|
||||
- Kotlin 2.1.0-release-394
|
||||
- Mono 6.12.0.188
|
||||
- Node.js 20.18.1
|
||||
- Perl 5.40.0
|
||||
- Perl 5.40.1
|
||||
- Python3 3.13.1
|
||||
- Ruby 3.0.7p220
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
- Bundler 2.5.23
|
||||
- Carthage 0.40.0
|
||||
- CocoaPods 1.16.2
|
||||
- Homebrew 4.4.14
|
||||
- Homebrew 4.4.16
|
||||
- NPM 10.8.2
|
||||
- NuGet 6.3.1.1
|
||||
- Pip3 24.3.1 (python 3.13)
|
||||
@@ -50,13 +50,13 @@
|
||||
- 7-Zip 17.05
|
||||
- aria2 1.37.0
|
||||
- azcopy 10.27.1
|
||||
- bazel 8.0.0
|
||||
- bazel 8.0.1
|
||||
- bazelisk 1.25.0
|
||||
- bsdtar 3.5.3 - available by 'tar' alias
|
||||
- Curl 8.7.1
|
||||
- Git 2.47.1
|
||||
- Git LFS 3.6.0
|
||||
- GitHub CLI 2.64.0
|
||||
- Git 2.48.1
|
||||
- Git LFS 3.6.1
|
||||
- GitHub CLI 2.65.0
|
||||
- GNU Tar 1.35 - available by 'gtar' alias
|
||||
- GNU Wget 1.25.0
|
||||
- gpg (GnuPG) 2.4.7
|
||||
@@ -65,18 +65,18 @@
|
||||
- Packer 1.11.2
|
||||
- pkgconf 2.3.0
|
||||
- Unxip 3.1
|
||||
- yq 4.44.6
|
||||
- yq 4.45.1
|
||||
- zstd 1.5.6
|
||||
|
||||
### Tools
|
||||
- AWS CLI 2.22.28
|
||||
- AWS CLI 2.23.2
|
||||
- AWS SAM CLI 1.132.0
|
||||
- AWS Session Manager CLI 1.2.694.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure CLI (azure-devops) 1.0.1
|
||||
- Bicep CLI 0.32.4
|
||||
- Cmake 3.31.3
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- Cmake 3.31.4
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Fastlane 2.226.0
|
||||
- SwiftFormat 0.55.4
|
||||
- Xcbeautify 2.17.0
|
||||
@@ -88,9 +88,9 @@
|
||||
### Browsers
|
||||
- Safari 18.2 (19620.1.16.111.6)
|
||||
- SafariDriver 18.2 (19620.1.16.111.6)
|
||||
- Google Chrome 131.0.6778.205
|
||||
- Google Chrome for Testing 131.0.6778.204
|
||||
- ChromeDriver 131.0.6778.204
|
||||
- Google Chrome 132.0.6834.84
|
||||
- Google Chrome for Testing 132.0.6834.83
|
||||
- ChromeDriver 132.0.6834.83
|
||||
- Selenium server 4.27.0
|
||||
|
||||
#### Environment variables
|
||||
@@ -113,7 +113,8 @@
|
||||
- 3.0.7
|
||||
- 3.1.6
|
||||
- 3.2.6
|
||||
- 3.3.6
|
||||
- 3.3.7
|
||||
- 3.4.1
|
||||
|
||||
#### Python
|
||||
- 3.11.9
|
||||
@@ -123,7 +124,7 @@
|
||||
#### Node.js
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 22.13.0
|
||||
|
||||
#### Go
|
||||
- 1.21.13
|
||||
@@ -131,13 +132,13 @@
|
||||
- 1.23.4
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- Clippy 0.1.83
|
||||
- Clippy 0.1.84
|
||||
- Rustfmt 1.8.0-stable
|
||||
|
||||
### PowerShell Tools
|
||||
@@ -145,7 +146,7 @@
|
||||
|
||||
#### PowerShell Modules
|
||||
- Az: 12.4.0
|
||||
- Pester: 5.6.1
|
||||
- Pester: 5.7.1
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
|
||||
### Xcode
|
||||
@@ -208,8 +209,8 @@
|
||||
| visionOS 1.0 | xros1.0 | 15.2 |
|
||||
| Simulator - visionOS 1.1 | xrsimulator1.1 | 15.3 |
|
||||
| visionOS 1.1 | xros1.1 | 15.3 |
|
||||
| Simulator - visionOS 1.2 | xrsimulator1.2 | 15.4 |
|
||||
| visionOS 1.2 | xros1.2 | 15.4 |
|
||||
| Simulator - visionOS 1.2 | xrsimulator1.2 | 15.4 |
|
||||
| visionOS 2.1 | xros2.1 | 16.1 |
|
||||
| Simulator - visionOS 2.1 | xrsimulator2.1 | 16.1 |
|
||||
| Simulator - visionOS 2.2 | xrsimulator2.2 | 16.2 |
|
||||
@@ -247,8 +248,8 @@
|
||||
| Package Name | Version |
|
||||
| -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 11.0 |
|
||||
| Android Emulator | 35.2.10 |
|
||||
| Android SDK Build-tools | 35.0.0<br>34.0.0<br>33.0.2 33.0.3 |
|
||||
| Android Emulator | 35.3.11 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1<br>34.0.0<br>33.0.2 33.0.3 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3) |
|
||||
| Android SDK Platform-Tools | 35.0.2 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[macOS 14] Xcode 16.0 will be replaced by Xcode 16.2 in macOS-14 images on January 6, 2025](https://github.com/actions/runner-images/issues/11203) |
|
||||
| [[macOS] Ruby version 3.0 will be removed from the images on Feb 10, 2025 and 3.3 will be set as default. ](https://github.com/actions/runner-images/issues/11345) |
|
||||
| [[macOS] The macOS 12 Actions runner image will begin deprecation on 10/7/24 and will be fully unsupported by 12/3/24 for GitHub and by 01/13/25 for ADO](https://github.com/actions/runner-images/issues/10721) |
|
||||
| [macOS 15 (Sequoia) is now available as a public beta in GitHub Actions](https://github.com/actions/runner-images/issues/10686) |
|
||||
***
|
||||
# macOS 15
|
||||
- OS Version: macOS 15.2 (24C101)
|
||||
- Kernel Version: Darwin 24.2.0
|
||||
- Image Version: 20250106.547
|
||||
- Image Version: 20250120.591
|
||||
|
||||
## Installed Software
|
||||
|
||||
### Language and Runtime
|
||||
- .NET Core SDK: 8.0.101, 8.0.204, 8.0.303, 8.0.404
|
||||
- .NET Core SDK: 8.0.101, 8.0.204, 8.0.303, 8.0.405, 9.0.102
|
||||
- Bash 3.2.57(1)-release
|
||||
- Clang/LLVM 15.0.0
|
||||
- Clang/LLVM (Homebrew) 18.1.8 - available on `$(brew --prefix llvm@18)/bin/clang`
|
||||
@@ -23,22 +23,22 @@
|
||||
- GNU Fortran 13 (Homebrew GCC 13.3.0) - available by `gfortran-13` alias
|
||||
- GNU Fortran 14 (Homebrew GCC 14.2.0_1) - available by `gfortran-14` alias
|
||||
- Kotlin 2.1.0-release-394
|
||||
- Node.js 22.12.0
|
||||
- Perl 5.40.0
|
||||
- PHP 8.4.2
|
||||
- Node.js 22.13.0
|
||||
- Perl 5.40.1
|
||||
- PHP 8.4.3
|
||||
- Python3 3.13.1
|
||||
- Ruby 3.3.6
|
||||
- Ruby 3.3.7
|
||||
|
||||
### Package Management
|
||||
- Bundler 2.6.2
|
||||
- Bundler 2.6.3
|
||||
- Carthage 0.40.0
|
||||
- CocoaPods 1.16.2
|
||||
- Composer 2.8.4
|
||||
- Homebrew 4.4.14
|
||||
- NPM 10.9.0
|
||||
- Homebrew 4.4.16
|
||||
- NPM 10.9.2
|
||||
- Pip3 24.3.1 (python 3.13)
|
||||
- Pipx 1.7.1
|
||||
- RubyGems 3.6.2
|
||||
- RubyGems 3.6.3
|
||||
- Yarn 1.22.22
|
||||
|
||||
### Project Management
|
||||
@@ -50,13 +50,13 @@
|
||||
- 7-Zip 17.05
|
||||
- aria2 1.37.0
|
||||
- azcopy 10.27.1
|
||||
- bazel 8.0.0
|
||||
- bazel 8.0.1
|
||||
- bazelisk 1.25.0
|
||||
- bsdtar 3.5.3 - available by 'tar' alias
|
||||
- Curl 8.11.1
|
||||
- Git 2.47.1
|
||||
- Git LFS 3.6.0
|
||||
- GitHub CLI 2.64.0
|
||||
- Git 2.48.1
|
||||
- Git LFS 3.6.1
|
||||
- GitHub CLI 2.65.0
|
||||
- GNU Tar 1.35 - available by 'gtar' alias
|
||||
- GNU Wget 1.25.0
|
||||
- gpg (GnuPG) 2.4.7
|
||||
@@ -65,18 +65,18 @@
|
||||
- Packer 1.11.2
|
||||
- pkgconf 2.3.0
|
||||
- Unxip 3.1
|
||||
- yq 4.44.6
|
||||
- yq 4.45.1
|
||||
- zstd 1.5.6
|
||||
|
||||
### Tools
|
||||
- AWS CLI 2.22.28
|
||||
- AWS CLI 2.23.2
|
||||
- AWS SAM CLI 1.132.0
|
||||
- AWS Session Manager CLI 1.2.694.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure CLI (azure-devops) 1.0.1
|
||||
- Bicep CLI 0.32.4
|
||||
- Cmake 3.31.3
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- Cmake 3.31.4
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Fastlane 2.226.0
|
||||
- SwiftFormat 0.55.4
|
||||
- Xcbeautify 2.17.0
|
||||
@@ -84,17 +84,17 @@
|
||||
- Xcodes 1.6.0
|
||||
|
||||
### Linters
|
||||
- SwiftLint 0.57.1
|
||||
- SwiftLint 0.58.2
|
||||
|
||||
### Browsers
|
||||
- Safari 18.2 (20620.1.16.11.8)
|
||||
- SafariDriver 18.2 (20620.1.16.11.8)
|
||||
- Google Chrome 131.0.6778.205
|
||||
- Google Chrome for Testing 131.0.6778.204
|
||||
- ChromeDriver 131.0.6778.204
|
||||
- Microsoft Edge 131.0.2903.112
|
||||
- Microsoft Edge WebDriver 131.0.2903.112
|
||||
- Mozilla Firefox 133.0.3
|
||||
- Google Chrome 132.0.6834.84
|
||||
- Google Chrome for Testing 132.0.6834.83
|
||||
- ChromeDriver 132.0.6834.83
|
||||
- Microsoft Edge 132.0.2957.115
|
||||
- Microsoft Edge WebDriver 132.0.2957.115
|
||||
- Mozilla Firefox 134.0.1
|
||||
- geckodriver 0.35.0
|
||||
- Selenium server 4.27.0
|
||||
|
||||
@@ -117,7 +117,8 @@
|
||||
#### Ruby
|
||||
- 3.1.6
|
||||
- 3.2.6
|
||||
- 3.3.6
|
||||
- 3.3.7
|
||||
- 3.4.1
|
||||
|
||||
#### Python
|
||||
- 3.9.21
|
||||
@@ -129,7 +130,7 @@
|
||||
#### Node.js
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 22.13.0
|
||||
|
||||
#### Go
|
||||
- 1.21.13
|
||||
@@ -137,13 +138,13 @@
|
||||
- 1.23.4
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- Clippy 0.1.83
|
||||
- Clippy 0.1.84
|
||||
- Rustfmt 1.8.0-stable
|
||||
|
||||
### PowerShell Tools
|
||||
@@ -151,7 +152,7 @@
|
||||
|
||||
#### PowerShell Modules
|
||||
- Az: 12.4.0
|
||||
- Pester: 5.6.1
|
||||
- Pester: 5.7.1
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
|
||||
### Xcode
|
||||
@@ -199,35 +200,35 @@
|
||||
| Simulator - visionOS 2.0 | xrsimulator2.0 | 16.0 |
|
||||
| Simulator - visionOS 2.1 | xrsimulator2.1 | 16.1 |
|
||||
| visionOS 2.1 | xros2.1 | 16.1 |
|
||||
| visionOS 2.2 | xros2.2 | 16.2 |
|
||||
| Simulator - visionOS 2.2 | xrsimulator2.2 | 16.2 |
|
||||
| visionOS 2.2 | xros2.2 | 16.2 |
|
||||
| DriverKit 23.5 | driverkit23.5 | 15.4 |
|
||||
| DriverKit 24.0 | driverkit24.0 | 16.0 |
|
||||
| DriverKit 24.1 | driverkit24.1 | 16.1 |
|
||||
| DriverKit 24.2 | driverkit24.2 | 16.2 |
|
||||
|
||||
#### Installed Simulators
|
||||
| OS | Simulators |
|
||||
| ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| iOS 17.5 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.0 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.1 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (A17 Pro)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.2 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (A17 Pro)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| tvOS 17.5 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.0 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.1 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| watchOS 10.5 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.0 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.1 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.2 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| OS | Simulators |
|
||||
| ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| iOS 17.5 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.0 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.1 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (A17 Pro)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.2 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (A17 Pro)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| tvOS 17.5 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.0 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.1 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| watchOS 10.5 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 5 (40mm)<br>Apple Watch Series 5 (44mm)<br>Apple Watch Series 6 (40mm)<br>Apple Watch Series 6 (44mm)<br>Apple Watch Series 7 (41mm)<br>Apple Watch Series 7 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.0 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.1 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.2 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
|
||||
### Android
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 16.0 |
|
||||
| Android Emulator | 35.2.10 |
|
||||
| Android SDK Build-tools | 35.0.0 |
|
||||
| Android Emulator | 35.3.11 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1) |
|
||||
| Android SDK Platform-Tools | 35.0.2 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[macOS 14] Xcode 16.0 will be replaced by Xcode 16.2 in macOS-14 images on January 6, 2025](https://github.com/actions/runner-images/issues/11203) |
|
||||
| [[macOS] Ruby version 3.0 will be removed from the images on Feb 10, 2025 and 3.3 will be set as default. ](https://github.com/actions/runner-images/issues/11345) |
|
||||
| [[macOS] The macOS 12 Actions runner image will begin deprecation on 10/7/24 and will be fully unsupported by 12/3/24 for GitHub and by 01/13/25 for ADO](https://github.com/actions/runner-images/issues/10721) |
|
||||
| [macOS 15 (Sequoia) is now available as a public beta in GitHub Actions](https://github.com/actions/runner-images/issues/10686) |
|
||||
***
|
||||
# macOS 15
|
||||
- OS Version: macOS 15.2 (24C101)
|
||||
- Kernel Version: Darwin 24.2.0
|
||||
- Image Version: 20250106.544
|
||||
- Image Version: 20250127.616
|
||||
|
||||
## Installed Software
|
||||
|
||||
### Language and Runtime
|
||||
- .NET Core SDK: 8.0.101, 8.0.204, 8.0.303, 8.0.404
|
||||
- .NET Core SDK: 8.0.101, 8.0.204, 8.0.303, 8.0.405, 9.0.102
|
||||
- Bash 3.2.57(1)-release
|
||||
- Clang/LLVM 15.0.0
|
||||
- Clang/LLVM (Homebrew) 18.1.8 - available on `$(brew --prefix llvm@18)/bin/clang`
|
||||
@@ -23,61 +23,61 @@
|
||||
- GNU Fortran 13 (Homebrew GCC 13.3.0) - available by `gfortran-13` alias
|
||||
- GNU Fortran 14 (Homebrew GCC 14.2.0_1) - available by `gfortran-14` alias
|
||||
- Kotlin 2.1.0-release-394
|
||||
- Node.js 22.12.0
|
||||
- Perl 5.40.0
|
||||
- Node.js 22.13.1
|
||||
- Perl 5.40.1
|
||||
- Python3 3.13.1
|
||||
- Ruby 3.3.6
|
||||
- Ruby 3.3.7
|
||||
|
||||
### Package Management
|
||||
- Bundler 2.6.2
|
||||
- Bundler 2.6.3
|
||||
- Carthage 0.40.0
|
||||
- CocoaPods 1.16.2
|
||||
- Homebrew 4.4.14
|
||||
- NPM 10.9.0
|
||||
- Homebrew 4.4.17
|
||||
- NPM 10.9.2
|
||||
- Pip3 24.3.1 (python 3.13)
|
||||
- Pipx 1.7.1
|
||||
- RubyGems 3.6.2
|
||||
- RubyGems 3.6.3
|
||||
- Yarn 1.22.22
|
||||
|
||||
### Project Management
|
||||
- Apache Ant 1.10.15
|
||||
- Apache Maven 3.9.9
|
||||
- Gradle 8.12
|
||||
- Gradle 8.12.1
|
||||
|
||||
### Utilities
|
||||
- 7-Zip 17.05
|
||||
- aria2 1.37.0
|
||||
- azcopy 10.27.1
|
||||
- bazel 8.0.0
|
||||
- bazel 8.0.1
|
||||
- bazelisk 1.25.0
|
||||
- bsdtar 3.5.3 - available by 'tar' alias
|
||||
- Curl 8.7.1
|
||||
- Git 2.47.1
|
||||
- Git LFS 3.6.0
|
||||
- GitHub CLI 2.64.0
|
||||
- Git 2.48.1
|
||||
- Git LFS 3.6.1
|
||||
- GitHub CLI 2.65.0
|
||||
- GNU Tar 1.35 - available by 'gtar' alias
|
||||
- GNU Wget 1.25.0
|
||||
- gpg (GnuPG) 2.4.7
|
||||
- jq 1.7.1
|
||||
- OpenSSL 1.1.1w 11 Sep 2023
|
||||
- Packer 1.11.2
|
||||
- Packer 1.12.0
|
||||
- pkgconf 2.3.0
|
||||
- Unxip 3.1
|
||||
- yq 4.44.6
|
||||
- yq 4.45.1
|
||||
- zstd 1.5.6
|
||||
|
||||
### Tools
|
||||
- AWS CLI 2.22.28
|
||||
- AWS CLI 2.23.6
|
||||
- AWS SAM CLI 1.132.0
|
||||
- AWS Session Manager CLI 1.2.694.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure CLI (azure-devops) 1.0.1
|
||||
- Bicep CLI 0.32.4
|
||||
- Cmake 3.31.3
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- Bicep CLI 0.33.13
|
||||
- Cmake 3.31.5
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Fastlane 2.226.0
|
||||
- SwiftFormat 0.55.4
|
||||
- Xcbeautify 2.17.0
|
||||
- SwiftFormat 0.55.5
|
||||
- Xcbeautify 2.23.0
|
||||
- Xcode Command Line Tools 16.2.0.0.1.1733547573
|
||||
- Xcodes 1.6.0
|
||||
|
||||
@@ -86,10 +86,10 @@
|
||||
### Browsers
|
||||
- Safari 18.2 (20620.1.16.11.8)
|
||||
- SafariDriver 18.2 (20620.1.16.11.8)
|
||||
- Google Chrome 131.0.6778.205
|
||||
- Google Chrome for Testing 131.0.6778.204
|
||||
- ChromeDriver 131.0.6778.204
|
||||
- Selenium server 4.27.0
|
||||
- Google Chrome 132.0.6834.111
|
||||
- Google Chrome for Testing 132.0.6834.110
|
||||
- ChromeDriver 132.0.6834.110
|
||||
- Selenium server 4.28.0
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
@@ -99,18 +99,19 @@
|
||||
| GECKOWEBDRIVER | |
|
||||
|
||||
### Java
|
||||
| Version | Environment Variable |
|
||||
| --------------------- | -------------------- |
|
||||
| 11.0.25+9 | JAVA_HOME_11_arm64 |
|
||||
| 17.0.13+11 | JAVA_HOME_17_arm64 |
|
||||
| 21.0.5+11.0 (default) | JAVA_HOME_21_arm64 |
|
||||
| Version | Environment Variable |
|
||||
| -------------------- | -------------------- |
|
||||
| 11.0.26+4 | JAVA_HOME_11_arm64 |
|
||||
| 17.0.14+7 | JAVA_HOME_17_arm64 |
|
||||
| 21.0.6+7.0 (default) | JAVA_HOME_21_arm64 |
|
||||
|
||||
### Cached Tools
|
||||
|
||||
#### Ruby
|
||||
- 3.1.6
|
||||
- 3.2.6
|
||||
- 3.3.6
|
||||
- 3.3.7
|
||||
- 3.4.1
|
||||
|
||||
#### Python
|
||||
- 3.11.9
|
||||
@@ -118,31 +119,31 @@
|
||||
- 3.13.1
|
||||
|
||||
#### Node.js
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 18.20.6
|
||||
- 20.18.2
|
||||
- 22.13.1
|
||||
|
||||
#### Go
|
||||
- 1.21.13
|
||||
- 1.22.10
|
||||
- 1.23.4
|
||||
- 1.22.11
|
||||
- 1.23.5
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- Clippy 0.1.83
|
||||
- Clippy 0.1.84
|
||||
- Rustfmt 1.8.0-stable
|
||||
|
||||
### PowerShell Tools
|
||||
- PowerShell 7.4.6
|
||||
- PowerShell 7.4.7
|
||||
|
||||
#### PowerShell Modules
|
||||
- Az: 12.4.0
|
||||
- Pester: 5.6.1
|
||||
- Pester: 5.7.1
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
|
||||
### Xcode
|
||||
@@ -184,45 +185,45 @@
|
||||
| Simulator - watchOS 11.0 | watchsimulator11.0 | 16.0 |
|
||||
| Simulator - watchOS 11.1 | watchsimulator11.1 | 16.1 |
|
||||
| Simulator - watchOS 11.2 | watchsimulator11.2 | 16.2 |
|
||||
| visionOS 1.2 | xros1.2 | 15.4 |
|
||||
| Simulator - visionOS 1.2 | xrsimulator1.2 | 15.4 |
|
||||
| Simulator - visionOS 2.0 | xrsimulator2.0 | 16.0 |
|
||||
| visionOS 1.2 | xros1.2 | 15.4 |
|
||||
| visionOS 2.0 | xros2.0 | 16.0 |
|
||||
| Simulator - visionOS 2.0 | xrsimulator2.0 | 16.0 |
|
||||
| Simulator - visionOS 2.1 | xrsimulator2.1 | 16.1 |
|
||||
| visionOS 2.1 | xros2.1 | 16.1 |
|
||||
| Simulator - visionOS 2.2 | xrsimulator2.2 | 16.2 |
|
||||
| visionOS 2.2 | xros2.2 | 16.2 |
|
||||
| Simulator - visionOS 2.2 | xrsimulator2.2 | 16.2 |
|
||||
| DriverKit 23.5 | driverkit23.5 | 15.4 |
|
||||
| DriverKit 24.0 | driverkit24.0 | 16.0 |
|
||||
| DriverKit 24.1 | driverkit24.1 | 16.1 |
|
||||
| DriverKit 24.2 | driverkit24.2 | 16.2 |
|
||||
|
||||
#### Installed Simulators
|
||||
| OS | Simulators |
|
||||
| ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| iOS 17.5 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.0 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.1 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (A17 Pro)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.2 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (A17 Pro)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| tvOS 17.5 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.0 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.1 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| watchOS 10.5 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 5 (40mm)<br>Apple Watch Series 5 (44mm)<br>Apple Watch Series 6 (40mm)<br>Apple Watch Series 6 (44mm)<br>Apple Watch Series 7 (41mm)<br>Apple Watch Series 7 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.0 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.1 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.2 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| visionOS 1.2 | Apple Vision Pro |
|
||||
| visionOS 2.0 | Apple Vision Pro |
|
||||
| visionOS 2.1 | Apple Vision Pro |
|
||||
| visionOS 2.2 | Apple Vision Pro |
|
||||
| OS | Simulators |
|
||||
| ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| iOS 17.5 | iPhone 15<br>iPhone 15 Plus<br>iPhone 15 Pro<br>iPhone 15 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.0 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (6th generation)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.1 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (A17 Pro)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| iOS 18.2 | iPhone 16<br>iPhone 16 Plus<br>iPhone 16 Pro<br>iPhone 16 Pro Max<br>iPhone SE (3rd generation)<br>iPad (10th generation)<br>iPad Air 11-inch (M2)<br>iPad Air 13-inch (M2)<br>iPad mini (A17 Pro)<br>iPad Pro 11-inch (M4)<br>iPad Pro 13-inch (M4) |
|
||||
| tvOS 17.5 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.0 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.1 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| tvOS 18.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
|
||||
| watchOS 10.5 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.0 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.1 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| watchOS 11.2 | Apple Watch SE (40mm) (2nd generation)<br>Apple Watch SE (44mm) (2nd generation)<br>Apple Watch Series 10 (42mm)<br>Apple Watch Series 10 (46mm)<br>Apple Watch Ultra 2 (49mm) |
|
||||
| visionOS 1.2 | Apple Vision Pro |
|
||||
| visionOS 2.0 | Apple Vision Pro |
|
||||
| visionOS 2.1 | Apple Vision Pro |
|
||||
| visionOS 2.2 | Apple Vision Pro |
|
||||
|
||||
### Android
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 16.0 |
|
||||
| Android Emulator | 35.2.10 |
|
||||
| Android SDK Build-tools | 35.0.0 |
|
||||
| Android Emulator | 35.3.11 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1) |
|
||||
| Android SDK Platform-Tools | 35.0.2 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
|
||||
@@ -33,17 +33,7 @@ Write-Host "Configuring Xcode versions..."
|
||||
$xcodeVersions | ForEach-Object {
|
||||
Write-Host "Configuring Xcode $($_.link) ..."
|
||||
Invoke-XcodeRunFirstLaunch -Version $_.link
|
||||
|
||||
if ($_.install_runtimes -eq 'true') {
|
||||
# Additional simulator runtimes are included by default for Xcode < 14
|
||||
Install-AdditionalSimulatorRuntimes -Version $_.link
|
||||
}
|
||||
|
||||
ForEach($runtime in $_.runtimes) {
|
||||
Write-Host "Installing Additional runtimes for Xcode '$runtime' ..."
|
||||
$xcodebuildPath = Get-XcodeToolPath -Version $_.link -ToolName 'xcodebuild'
|
||||
Invoke-ValidateCommand "sudo $xcodebuildPath -downloadPlatform $runtime" | Out-Null
|
||||
}
|
||||
Install-AdditionalSimulatorRuntimes -Version $_.link -Runtimes $_.install_runtimes
|
||||
}
|
||||
|
||||
Invoke-XcodeRunFirstLaunch -Version $defaultXcode
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: configure-max-files-limitation.sh
|
||||
## Desc: Configure max files limitation
|
||||
################################################################################
|
||||
|
||||
Launch_Daemons="/Library/LaunchDaemons"
|
||||
|
||||
# EOF in quotes to disable variable expansion
|
||||
echo "Creating limit.maxfiles.plist"
|
||||
cat > ${Launch_Daemons}/limit.maxfiles.plist << EOF
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
|
||||
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>Label</key>
|
||||
<string>limit.maxfiles</string>
|
||||
<key>Program</key>
|
||||
<string>/Users/runner/limit-maxfiles.sh</string>
|
||||
<key>RunAtLoad</key>
|
||||
<true/>
|
||||
<key>ServiceIPC</key>
|
||||
<false/>
|
||||
</dict>
|
||||
</plist>
|
||||
EOF
|
||||
|
||||
# Creating script for applying workaround https://developer.apple.com/forums/thread/735798
|
||||
|
||||
cat > /Users/runner/limit-maxfiles.sh << EOF
|
||||
#!/bin/bash
|
||||
sudo launchctl limit maxfiles 256 unlimited
|
||||
sudo launchctl limit maxfiles 65536 524288
|
||||
EOF
|
||||
|
||||
echo "limit.maxfiles.sh permissions changing"
|
||||
chmod +x /Users/runner/limit-maxfiles.sh
|
||||
|
||||
echo "limit.maxfiles.plist permissions changing"
|
||||
chown root:wheel "${Launch_Daemons}/limit.maxfiles.plist"
|
||||
chmod 0644 ${Launch_Daemons}/limit.maxfiles.plist
|
||||
|
||||
echo "Done, limit.maxfiles has been updated"
|
||||
@@ -1,39 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: configure-network-interface-detection.sh
|
||||
## Desc: add a Daemon to re-detect the attached network interfaces after vm is booted.
|
||||
## Maintainer: @timsutton
|
||||
## script was taken from https://github.com/timsutton/osx-vm-templates/blob/master/scripts/add-network-interface-detection.sh
|
||||
################################################################################
|
||||
|
||||
PLIST=/Library/LaunchDaemons/sonoma.detectnewhardware.plist
|
||||
cat <<EOF > ${PLIST}
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>Label</key>
|
||||
<string>sonoma.detectnewhardware</string>
|
||||
<key>ProgramArguments</key>
|
||||
<array>
|
||||
<string>/usr/sbin/networksetup</string>
|
||||
<string>-detectnewhardware</string>
|
||||
</array>
|
||||
<key>RunAtLoad</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
EOF
|
||||
|
||||
# These should be already set as follows, but since they're required
|
||||
# in order to load properly, we set them explicitly.
|
||||
/bin/chmod 644 ${PLIST}
|
||||
/usr/sbin/chown root:wheel ${PLIST}
|
||||
|
||||
: '
|
||||
The MIT License (MIT)
|
||||
Copyright (c) 2013-2017 Timothy Sutton
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
'
|
||||
@@ -1,30 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: configure-screensaver.sh
|
||||
## Desc: Configure screensaver
|
||||
################################################################################
|
||||
|
||||
# set screensaver idleTime to 0, to prevent turning screensaver on
|
||||
macUUID=$(ioreg -rd1 -c IOPlatformExpertDevice | grep -i "UUID" | cut -c27-62)
|
||||
|
||||
rm -rf /Users/$USERNAME/Library/Preferences/com.apple.screensaver.$macUUID.plist
|
||||
rm -rf /Users/$USERNAME/Library/Preferences/ByHost/com.apple.screensaver.$macUUID.plist
|
||||
rm -rf /Users/$USERNAME/Library/Preferences/com.apple.screensaver.plist
|
||||
rm -rf /Users/$USERNAME/Library/Preferences/ByHost/com.apple.screensaver.plist
|
||||
|
||||
defaults write /Users/$USERNAME/Library/Preferences/com.apple.screensaver.$macUUID.plist idleTime -string 0
|
||||
defaults write /Users/$USERNAME/Library/Preferences/com.apple.screensaver.$macUUID.plist CleanExit "YES"
|
||||
defaults write /Users/$USERNAME/Library/Preferences/ByHost/com.apple.screensaver.$macUUID.plist idleTime -string 0
|
||||
defaults write /Users/$USERNAME/Library/Preferences/ByHost/com.apple.screensaver.$macUUID.plist CleanExit "YES"
|
||||
defaults write /Users/$USERNAME/Library/Preferences/com.apple.screensaver.plist idleTime -string 0
|
||||
defaults write /Users/$USERNAME/Library/Preferences/com.apple.screensaver.plist CleanExit "YES"
|
||||
defaults write /Users/$USERNAME/Library/Preferences/ByHost/com.apple.screensaver.plist idleTime -string 0
|
||||
defaults write /Users/$USERNAME/Library/Preferences/ByHost/com.apple.screensaver.plist CleanExit "YES"
|
||||
|
||||
chown -R $USERNAME:staff /Users/$USERNAME/Library/Preferences/ByHost/
|
||||
chown -R $USERNAME:staff /Users/$USERNAME/Library/Preferences/
|
||||
|
||||
killall cfprefsd
|
||||
|
||||
# Set values to 0, to prevent sleep at all
|
||||
pmset -a displaysleep 0 sleep 0 disksleep 0
|
||||
@@ -12,20 +12,13 @@ close_finder_window
|
||||
# Remove Parallels Desktop
|
||||
# https://github.com/actions/runner-images/issues/6105
|
||||
# https://github.com/actions/runner-images/issues/10143
|
||||
if is_Monterey || is_SonomaX64 || is_VenturaX64; then
|
||||
if is_SonomaX64 || is_VenturaX64; then
|
||||
brew uninstall parallels
|
||||
fi
|
||||
|
||||
# Put documentation to $HOME root
|
||||
cp $HOME/image-generation/output/software-report/systeminfo.* $HOME/
|
||||
|
||||
# Put build vm assets (xamarin-selector) scripts to proper directory
|
||||
if is_Monterey || is_Sonoma || is_Ventura; then
|
||||
mkdir -p /usr/local/opt/$USER/scripts
|
||||
mv $HOME/image-generation/assets/* /usr/local/opt/$USER/scripts
|
||||
find /usr/local/opt/$USER/scripts -type f -name "*\.sh" -exec chmod +x {} \;
|
||||
fi
|
||||
|
||||
# Remove fastlane cached cookie
|
||||
rm -rf ~/.fastlane
|
||||
|
||||
|
||||
@@ -19,6 +19,7 @@ systemValuesArray=(
|
||||
"'kTCCServiceAccessibility','com.apple.Terminal',0,2,0,1,X'fade0c000000003000000001000000060000000200000012636f6d2e6170706c652e5465726d696e616c000000000003',NULL,NULL,'UNUSED',NULL,0,1591180502"
|
||||
"'kTCCServiceAccessibility','/bin/bash',1,2,0,1,NULL,NULL,NULL,'UNUSED',NULL,0,1583997993"
|
||||
"'kTCCServiceMicrophone','/usr/local/opt/runner/runprovisioner.sh',1,2,0,1,NULL,NULL,NULL,'UNUSED',NULL,NULL,1576661342"
|
||||
"'kTCCServiceMicrophone','/usr/local/opt/runner/provisioner/provisioner',1,2,4,1,NULL,NULL,NULL,'UNUSED',NULL,NULL,1736467200"
|
||||
"'kTCCServiceScreenCapture','/bin/bash',1,2,0,1,NULL,NULL,NULL,'UNUSED',NULL,0,1599831148"
|
||||
"'kTCCServiceScreenCapture','com.devexpress.testcafe-browser-tools',0,2,3,1,X'fade0c0000000068000000010000000700000007000000080000001443fa4ca5141baeda21aeca1f50894673b440d4690000000800000014f8afcf6e69791b283e55bd0b03e39e422745770e0000000800000014bf4fc1aed64c871a49fc6bc9dd3878ce5d4d17c6',NULL,0,'UNUSED',NULL,0,1687952810"
|
||||
"'kTCCServicePostEvent','/Library/Application Support/Veertu/Anka/addons/ankarund',1,2,4,1,NULL,NULL,0,'UNUSED',NULL,0,1644565949"
|
||||
@@ -54,6 +55,7 @@ userValuesArray=(
|
||||
"'kTCCServiceAppleEvents','/bin/bash',1,2,0,1,NULL,NULL,0,'com.apple.finder',NULL,NULL,1592919552"
|
||||
"'kTCCServiceMicrophone','com.apple.CoreSimulator.SimulatorTrampoline',0,2,0,1,NULL,NULL,NULL,'UNUSED',NULL,NULL,1576347152"
|
||||
"'kTCCServiceMicrophone','/usr/local/opt/runner/runprovisioner.sh',1,2,0,1,NULL,NULL,NULL,'UNUSED',NULL,NULL,1576661342"
|
||||
"'kTCCServiceMicrophone','/usr/local/opt/runner/provisioner/provisioner',1,2,4,1,NULL,NULL,NULL,'UNUSED',NULL,NULL,1736467200"
|
||||
"'kTCCServiceUbiquity','/System/Library/PrivateFrameworks/PhotoLibraryServices.framework/Versions/A/Support/photolibraryd',1,2,5,1,NULL,NULL,NULL,'UNUSED',NULL,0,1619461750"
|
||||
"'kTCCServiceUbiquity','com.apple.PassKitCore',0,2,5,1,NULL,NULL,NULL,'UNUSED',NULL,0,1619516250"
|
||||
"'kTCCServiceAppleEvents','/Library/Application Support/Veertu/Anka/addons/ankarund',1,2,3,1,NULL,NULL,0,'com.apple.finder',X'fade0c000000002c00000001000000060000000200000010636f6d2e6170706c652e66696e64657200000003',NULL,1629294900"
|
||||
|
||||
@@ -1,144 +0,0 @@
|
||||
#!/usr/bin/env ruby
|
||||
################################################################################
|
||||
## File: configure-xcode-simulators.rb
|
||||
## Desc: List all simulators, find duplicate type and delete them.
|
||||
## Maintainer: @vlas-voloshin
|
||||
## script was taken from https://gist.github.com/vlas-voloshin/f9982128200345cd3fb7
|
||||
################################################################################
|
||||
|
||||
class SimDevice
|
||||
|
||||
attr_accessor :runtime
|
||||
attr_accessor :name
|
||||
attr_accessor :identifier
|
||||
attr_accessor :timestamp
|
||||
|
||||
def initialize(runtime, name, identifier, timestamp)
|
||||
@runtime = runtime
|
||||
@name = name
|
||||
@identifier = identifier
|
||||
@timestamp = timestamp
|
||||
end
|
||||
|
||||
def to_s
|
||||
return "#{@name} - #{@runtime} (#{@identifier}) [#{@timestamp}]"
|
||||
end
|
||||
|
||||
def equivalent_to_device(device)
|
||||
return @runtime == device.runtime && @name == device.name
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
# Executes a shell command and returns the result from stdout
|
||||
def execute_simctl_command(command)
|
||||
return %x[xcrun simctl #{command}]
|
||||
end
|
||||
|
||||
# Retrieves the creation date/time of simulator with specified identifier
|
||||
def simulator_creation_date(identifier)
|
||||
directory = Dir.home() + "/Library/Developer/CoreSimulator/Devices/" + identifier
|
||||
if (Dir.exists?(directory))
|
||||
if (File::Stat.method_defined?(:birthtime))
|
||||
return File.stat(directory).birthtime
|
||||
else
|
||||
return File.stat(directory).ctime
|
||||
end
|
||||
else
|
||||
# Simulator directory is not yet created - treat it as if it was created right now (happens with new iOS 9 sims)
|
||||
return Time.now
|
||||
end
|
||||
end
|
||||
|
||||
# Deletes specified simulator
|
||||
def delete_device(device)
|
||||
execute_simctl_command("delete #{device.identifier}")
|
||||
end
|
||||
|
||||
puts("Searching for simulators...")
|
||||
|
||||
# Retrieve the list of existing simulators
|
||||
devices = []
|
||||
runtime = ""
|
||||
execute_simctl_command("list devices").lines.each do |line|
|
||||
case line[0]
|
||||
when '='
|
||||
# First header, skip it
|
||||
when '-'
|
||||
# Runtime header
|
||||
runtime = line.scan(/-- (.+?) --/).flatten[0]
|
||||
else
|
||||
name_and_identifier = line.scan(/\s+(.+?) \(([\w\d]+-[\w\d]+-[\w\d-]+)\)/)[0]
|
||||
name = name_and_identifier[0]
|
||||
identifier = name_and_identifier[1]
|
||||
timestamp = simulator_creation_date(identifier)
|
||||
device = SimDevice.new(runtime, name, identifier, timestamp)
|
||||
devices.push(device)
|
||||
end
|
||||
end
|
||||
|
||||
# Sort the simulators by their creation timestamp, ascending
|
||||
devices = devices.sort { |a, b| a.timestamp <=> b.timestamp }
|
||||
|
||||
duplicates = {}
|
||||
# Enumerate all devices except for the last one
|
||||
for i in 0..devices.count-2
|
||||
device = devices[i]
|
||||
# Enumerate all devices *after* this one (created *later*)
|
||||
for j in i+1..devices.count-1
|
||||
potential_duplicate = devices[j]
|
||||
if potential_duplicate.equivalent_to_device(device)
|
||||
duplicates[potential_duplicate] = device
|
||||
# Break out of the inner loop if a duplicate is found - if another duplicate exists,
|
||||
# it will be found when this one is reached in the outer loop
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if duplicates.count == 0
|
||||
puts("You don't have duplicate simulators!")
|
||||
exit()
|
||||
end
|
||||
|
||||
puts("Looks like you have #{duplicates.count} duplicate simulator#{duplicates.count > 1 ? "s" : ""}:")
|
||||
duplicates.each_pair do |duplicate, original|
|
||||
puts
|
||||
puts("#{duplicate}")
|
||||
puts("--- duplicate of ---")
|
||||
puts("#{original}")
|
||||
end
|
||||
puts
|
||||
|
||||
puts("Each duplicate was determined as the one created later than the 'original'.")
|
||||
|
||||
puts("Deleting...")
|
||||
duplicates.each_key do |duplicate|
|
||||
delete_device(duplicate)
|
||||
end
|
||||
|
||||
puts("Done!")
|
||||
|
||||
=begin
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2015-2019 Vlas Voloshin
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
=end
|
||||
@@ -1,12 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: install-apache.sh
|
||||
## Desc: Install Apache HTTP Server
|
||||
################################################################################
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
brew_smart_install httpd
|
||||
sudo sed -Ei '' 's/Listen .*/Listen 80/' $(brew --prefix)/etc/httpd/httpd.conf
|
||||
|
||||
invoke_tests "WebServers" "Apache"
|
||||
@@ -6,29 +6,20 @@
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
# Monterey needs future review:
|
||||
# aliyun-cli, gnupg, helm have issues with building from the source code.
|
||||
# Added gmp for now, because toolcache ruby needs its libs. Remove it when php starts to build from source code.
|
||||
common_packages=$(get_toolset_value '.brew.common_packages[]')
|
||||
for package in $common_packages; do
|
||||
echo "Installing $package..."
|
||||
if is_Monterey && [[ $package == "xcbeautify" ]]; then
|
||||
# Pin the version on Monterey as 2.0.x requires Xcode >=15.0 which is not available on OS12
|
||||
xcbeautify_path=$(download_with_retry "https://raw.githubusercontent.com/Homebrew/homebrew-core/d3653e83f9c029a3fddb828ac804b07ac32f7b3b/Formula/x/xcbeautify.rb")
|
||||
brew install "$xcbeautify_path"
|
||||
if [[ $package == "packer" ]]; then
|
||||
# Packer has been deprecated in Homebrew. Use tap to install Packer.
|
||||
brew install hashicorp/tap/packer
|
||||
else
|
||||
if [[ $package == "packer" ]]; then
|
||||
# Packer has been deprecated in Homebrew. Use tap to install Packer.
|
||||
brew install hashicorp/tap/packer
|
||||
if (is_VenturaX64 || is_SonomaX64) && [[ $package == "tcl-tk@8" ]]; then
|
||||
brew_smart_install "$package"
|
||||
# Fix for https://github.com/actions/runner-images/issues/11074
|
||||
ln -sf $(brew --prefix tcl-tk@8)/lib/libtcl8.6.dylib /usr/local/lib/libtcl8.6.dylib
|
||||
ln -sf $(brew --prefix tcl-tk@8)/lib/libtk8.6.dylib /usr/local/lib/libtk8.6.dylib
|
||||
else
|
||||
if (is_VenturaX64 || is_SonomaX64) && [[ $package == "tcl-tk@8" ]]; then
|
||||
brew_smart_install "$package"
|
||||
# Fix for https://github.com/actions/runner-images/issues/11074
|
||||
ln -sf $(brew --prefix tcl-tk@8)/lib/libtcl8.6.dylib /usr/local/lib/libtcl8.6.dylib
|
||||
ln -sf $(brew --prefix tcl-tk@8)/lib/libtk8.6.dylib /usr/local/lib/libtk8.6.dylib
|
||||
else
|
||||
brew_smart_install "$package"
|
||||
fi
|
||||
brew_smart_install "$package"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
@@ -36,37 +27,26 @@ done
|
||||
cask_packages=$(get_toolset_value '.brew.cask_packages[]')
|
||||
for package in $cask_packages; do
|
||||
echo "Installing $package..."
|
||||
if is_Monterey && [[ $package == "virtualbox" ]]; then
|
||||
# Do not update VirtualBox on macOS 12 due to the issue with VMs in gurumediation state which blocks Vagrant on macOS: https://github.com/actions/runner-images/issues/8730
|
||||
# macOS host: Dropped all kernel extensions. VirtualBox relies fully on the hypervisor and vmnet frameworks provided by Apple now.
|
||||
virtualbox_cask_path=$(download_with_retry "https://raw.githubusercontent.com/Homebrew/homebrew-cask/aa3c55951fc9d687acce43e5c0338f42c1ddff7b/Casks/virtualbox.rb")
|
||||
brew install $virtualbox_cask_path
|
||||
if is_Arm64 && [[ $package == "parallels" ]]; then
|
||||
echo "Parallels installation is skipped for arm64 architecture"
|
||||
else
|
||||
if is_Arm64 && [[ $package == "parallels" ]]; then
|
||||
echo "Parallels installation is skipped for arm64 architecture"
|
||||
else
|
||||
brew install --cask $package
|
||||
fi
|
||||
brew install --cask $package
|
||||
fi
|
||||
done
|
||||
|
||||
# Load "Parallels International GmbH"
|
||||
if is_Monterey || is_SonomaX64 || is_VenturaX64; then
|
||||
if is_SonomaX64 || is_VenturaX64; then
|
||||
sudo kextload /Applications/Parallels\ Desktop.app/Contents/Library/Extensions/10.9/prl_hypervisor.kext || true
|
||||
fi
|
||||
|
||||
# Execute AppleScript to change security preferences for macOS12, macOS13 and macOS14
|
||||
# System Preferences -> Security & Privacy -> General -> Unlock -> Allow -> Not now
|
||||
if is_Monterey || is_SonomaX64 || is_VenturaX64; then
|
||||
if is_SonomaX64 || is_VenturaX64; then
|
||||
for retry in {4..0}; do
|
||||
echo "Executing AppleScript to change security preferences. Retries left: $retry"
|
||||
{
|
||||
set -e
|
||||
osascript -e 'tell application "System Events" to get application processes where visible is true'
|
||||
if is_Monterey; then
|
||||
osascript $HOME/utils/confirm-identified-developers.scpt $USER_PASSWORD
|
||||
fi
|
||||
|
||||
if is_VenturaX64; then
|
||||
osascript $HOME/utils/confirm-identified-developers-macos13.scpt $USER_PASSWORD
|
||||
fi
|
||||
@@ -87,17 +67,10 @@ if is_Monterey || is_SonomaX64 || is_VenturaX64; then
|
||||
fi
|
||||
|
||||
# Validate "Parallels International GmbH" kext
|
||||
if is_Monterey || is_SonomaX64 || is_VenturaX64; then
|
||||
if is_SonomaX64 || is_VenturaX64; then
|
||||
|
||||
if is_Monterey; then
|
||||
echo "Closing System Preferences window if it is still opened"
|
||||
killall "System Preferences" || true
|
||||
fi
|
||||
|
||||
if is_SonomaX64 || is_VenturaX64; then
|
||||
echo "Closing System Settings window if it is still opened"
|
||||
killall "System Settings" || true
|
||||
fi
|
||||
echo "Closing System Settings window if it is still opened"
|
||||
killall "System Settings" || true
|
||||
|
||||
echo "Checking parallels kexts"
|
||||
dbName="/var/db/SystemPolicyConfiguration/KextPolicy"
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: install-compilable-brew-packages.sh
|
||||
## Desc: Install compilable brew packages
|
||||
################################################################################
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
compilable_packages=$(get_toolset_value '.brew.compilable_packages[]')
|
||||
for package in $compilable_packages; do
|
||||
echo "Installing $package..."
|
||||
brew_smart_install "$package"
|
||||
done
|
||||
|
||||
invoke_tests "Common" "Compiled"
|
||||
@@ -1,16 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: install-golang.sh
|
||||
## Desc: Install Go
|
||||
################################################################################
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
default_go_version=$(get_toolset_value '.go.default')
|
||||
echo "Installing Go..."
|
||||
brew_smart_install "go@${default_go_version}"
|
||||
|
||||
# Create symlinks to preserve backward compatibility. Symlinks are not created when non-latest go is being installed
|
||||
ln -sf $(brew --prefix go@${default_go_version})/bin/* /usr/local/bin/
|
||||
|
||||
invoke_tests "Common" "Go"
|
||||
@@ -1,31 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: install-haskell.sh
|
||||
## Desc: Install Haskell
|
||||
################################################################################
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
curl --proto '=https' --tlsv1.2 -fsSL https://get-ghcup.haskell.org | bash
|
||||
export PATH="$HOME/.ghcup/bin:$PATH"
|
||||
echo 'export PATH="$PATH:$HOME/.ghcup/bin"' >> $HOME/.bashrc
|
||||
|
||||
# ghcup output looks like this "ghc 8.6.4 base-4.12.0.0 hls-powered", need to take all the first versions only(8.6.4 in that case) and avoid pre-release ones
|
||||
availableVersions=$(ghcup list -t ghc -r | grep -v "prerelease" | awk '{print $2}')
|
||||
|
||||
# Install 3 latest major versions(For instance 8.6.5, 8.8.4, 8.10.2)
|
||||
minorMajorVersions=$(echo "$availableVersions" | cut -d"." -f 1,2 | uniq | tail -n3)
|
||||
for majorMinorVersion in $minorMajorVersions; do
|
||||
fullVersion=$(echo "$availableVersions" | grep "$majorMinorVersion." | tail -n1)
|
||||
echo "install ghc version $fullVersion..."
|
||||
ghcup install $fullVersion
|
||||
ghcup set $fullVersion
|
||||
done
|
||||
|
||||
echo "install cabal..."
|
||||
ghcup install-cabal
|
||||
|
||||
echo "Updating stack..."
|
||||
ghcup install stack latest
|
||||
|
||||
invoke_tests "Haskell"
|
||||
@@ -1,24 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: install-miniconda.sh
|
||||
## Desc: Install Miniconda
|
||||
################################################################################
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
miniconda_installer_path=$(download_with_retry "https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh")
|
||||
chmod +x $miniconda_installer_path
|
||||
sudo $miniconda_installer_path -b -p /usr/local/miniconda
|
||||
|
||||
# Chmod with full permissions recursively to avoid permissions restrictions
|
||||
sudo chmod -R 777 /usr/local/miniconda
|
||||
|
||||
sudo ln -s /usr/local/miniconda/bin/conda /usr/local/bin/conda
|
||||
|
||||
if [[ -d $HOME/.conda ]]; then
|
||||
sudo chown -R $USER $HOME/.conda
|
||||
fi
|
||||
|
||||
echo "export CONDA=/usr/local/miniconda" >> $HOME/.bashrc
|
||||
|
||||
invoke_tests "Common" "Miniconda"
|
||||
@@ -1,23 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: install-mongodb.sh
|
||||
## Desc: Install MongoDB
|
||||
################################################################################
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
# MongoDB object-value database
|
||||
# Install latest release version of MongoDB Community Edition
|
||||
# https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x
|
||||
toolsetVersion=$(get_toolset_value '.mongodb.version')
|
||||
|
||||
brew tap mongodb/brew
|
||||
versionToInstall=$(brew search --formulae /mongodb-community@$toolsetVersion/ | awk -F'/' '{print $3}' | tail -1)
|
||||
echo "Installing mongodb $versionToInstall"
|
||||
brew_smart_install $versionToInstall
|
||||
|
||||
if ! which mongo ; then
|
||||
brew link $versionToInstall
|
||||
fi
|
||||
|
||||
invoke_tests "Databases" "MongoDB"
|
||||
@@ -47,5 +47,5 @@ sudo mv $nunit3_console_wrapper "${MONO_VERSIONS_PATH}/${mono_version}/Commands/
|
||||
echo "Creating short symlink '${mono_version_short}'..."
|
||||
sudo ln -s ${MONO_VERSIONS_PATH}/${mono_version} ${MONO_VERSIONS_PATH}/${mono_version_short}
|
||||
|
||||
# Invoke tests for Xamarin and Mono
|
||||
invoke_tests "Xamarin" "Mono"
|
||||
# Invoke tests and Mono
|
||||
invoke_tests "Mono"
|
||||
|
||||
@@ -16,12 +16,4 @@ echo Installing yarn...
|
||||
yarn_installer_path=$(download_with_retry "https://yarnpkg.com/install.sh")
|
||||
bash $yarn_installer_path
|
||||
|
||||
if is_Monterey; then
|
||||
npm_global_packages=$(get_toolset_value '.npm.global_packages[].name')
|
||||
for module in ${npm_global_packages[@]}; do
|
||||
echo "Install $module"
|
||||
npm install -g $module
|
||||
done
|
||||
fi
|
||||
|
||||
invoke_tests "Node" "Node.js"
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: install-pipx-packages.sh
|
||||
## Desc: Install Pipx Packages
|
||||
################################################################################
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
export PATH="$PATH:/opt/pipx_bin"
|
||||
|
||||
pipx_packages=$(get_toolset_value '.pipx[].package')
|
||||
|
||||
for package in $pipx_packages; do
|
||||
echo "Install $package into default python"
|
||||
pipx install $package
|
||||
done
|
||||
|
||||
invoke_tests "PipxPackages"
|
||||
@@ -8,30 +8,6 @@ source ~/utils/utils.sh
|
||||
|
||||
echo "Installing Python Tooling"
|
||||
|
||||
if is_Monterey; then
|
||||
echo "Install latest Python 2"
|
||||
python2_pkg=$(download_with_retry "https://www.python.org/ftp/python/2.7.18/python-2.7.18-macosx10.9.pkg")
|
||||
python2_pkg_sha256="c570f38b05dd8b112ad21b418cdf51a9816d62f9f44746452739d421be24d50c"
|
||||
use_checksum_comparison $python2_pkg $python2_pkg_sha256
|
||||
|
||||
choice_changes_xml=$(mktemp /tmp/python2_choice_changes.xml.XXXXXX)
|
||||
sudo installer -showChoiceChangesXML -pkg $python2_pkg -target / | tee $choice_changes_xml > /dev/null
|
||||
|
||||
# To avoid symlink conflicts, remove tools installation in /usr/local/bin using installer choices
|
||||
xmllint --shell $choice_changes_xml <<EOF
|
||||
cd //array/dict[string[text()='org.python.Python.PythonUnixTools-2.7']]/integer
|
||||
set 0
|
||||
save
|
||||
EOF
|
||||
|
||||
sudo installer -applyChoiceChangesXML $choice_changes_xml -pkg $python2_pkg -target /
|
||||
|
||||
pip install --upgrade pip
|
||||
|
||||
echo "Install Python2 certificates"
|
||||
bash -c "/Applications/Python\ 2.7/Install\ Certificates.command"
|
||||
fi
|
||||
|
||||
# Close Finder window
|
||||
close_finder_window
|
||||
|
||||
|
||||
@@ -9,8 +9,8 @@ source ~/utils/utils.sh
|
||||
echo "Updating RubyGems..."
|
||||
gem update --system
|
||||
|
||||
# Temporarily install activesupport 7.0.8 due to compatibility issues with cocoapods https://github.com/CocoaPods/CocoaPods/issues/12081
|
||||
gem install activesupport -v 7.0.8
|
||||
# Temporarily install activesupport 7.1.5.1 due to compatibility issues with cocoapods https://github.com/CocoaPods/CocoaPods/issues/12081
|
||||
gem install activesupport -v 7.1.5.1
|
||||
|
||||
gemsToInstall=$(get_toolset_value '.ruby.rubygems | .[]')
|
||||
if [[ -n $gemsToInstall ]]; then
|
||||
|
||||
@@ -18,10 +18,6 @@ CARGO_HOME=$HOME/.cargo
|
||||
echo "Install common tools..."
|
||||
rustup component add rustfmt clippy
|
||||
|
||||
if is_Monterey; then
|
||||
cargo install bindgen-cli cbindgen cargo-audit cargo-outdated
|
||||
fi
|
||||
|
||||
echo "Cleanup Cargo registry cached data..."
|
||||
rm -rf $CARGO_HOME/registry/*
|
||||
|
||||
|
||||
@@ -7,15 +7,7 @@
|
||||
source ~/utils/utils.sh
|
||||
|
||||
echo "Installing Swiftlint..."
|
||||
if is_Monterey; then
|
||||
# SwiftLint now requires Xcode 15.3 or higher to build https://github.com/realm/SwiftLint/releases/tag/0.55.1
|
||||
COMMIT=d91dabd087cb0b906c92a825df9e5e5e1a4f59f8
|
||||
FORMULA_URL="https://raw.githubusercontent.com/Homebrew/homebrew-core/$COMMIT/Formula/s/swiftlint.rb"
|
||||
|
||||
curl -fsSL $FORMULA_URL > $(find $(brew --repository) -name swiftlint.rb)
|
||||
HOMEBREW_NO_AUTO_UPDATE=1 HOMEBREW_NO_INSTALL_FROM_API=1 brew install swiftlint
|
||||
else
|
||||
brew_smart_install "swiftlint"
|
||||
fi
|
||||
brew_smart_install "swiftlint"
|
||||
|
||||
invoke_tests "Linters" "SwiftLint"
|
||||
|
||||
@@ -1,52 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: install-visualstudio.sh
|
||||
## Desc: Install Visual Studio
|
||||
################################################################################
|
||||
|
||||
source ~/utils/utils.sh
|
||||
source ~/utils/xamarin-utils.sh
|
||||
|
||||
install_vsmac() {
|
||||
local vsmac_version=$1
|
||||
local vsmac_default=$2
|
||||
if [[ $vsmac_version == "2019" ]]; then
|
||||
vsmac_download_url=$(curl -fsSL "https://aka.ms/manifest/stable" | jq -r '.items[] | select(.genericName=="VisualStudioMac").url')
|
||||
elif [[ $vsmac_version == "2022" ]]; then
|
||||
vsmac_download_url=$(curl -fsSL "https://aka.ms/manifest/stable-2022" | jq -r '.items[] | select(.genericName=="VisualStudioMac").url')
|
||||
elif [[ $vsmac_version == "preview" ]]; then
|
||||
vsmac_download_url=$(curl -fsSL "https://aka.ms/manifest/preview" | jq -r '.items[] | select(.genericName=="VisualStudioMac").url')
|
||||
else
|
||||
vsmac_download_url=$(buildVSMacDownloadUrl $vsmac_version)
|
||||
fi
|
||||
|
||||
echo "Installing Visual Studio ${vsmac_version} for Mac"
|
||||
TMPMOUNT=$(/usr/bin/mktemp -d /tmp/visualstudio.XXXX)
|
||||
mkdir -p "$TMPMOUNT/downloads"
|
||||
|
||||
vsmac_installer=$(download_with_retry $vsmac_download_url "$TMPMOUNT/downloads/${vsmac_download_url##*/}")
|
||||
|
||||
echo "Mounting Visual Studio..."
|
||||
hdiutil attach $vsmac_installer -mountpoint $TMPMOUNT
|
||||
|
||||
echo "Moving Visual Studio to /Applications/..."
|
||||
pushd $TMPMOUNT
|
||||
tar cf - "./Visual Studio.app" | tar xf - -C /Applications/
|
||||
|
||||
if [[ $vsmac_version != $vsmac_default ]]; then
|
||||
mv "/Applications/Visual Studio.app" "/Applications/Visual Studio ${vsmac_version}.app"
|
||||
fi
|
||||
|
||||
popd
|
||||
sudo hdiutil detach $TMPMOUNT
|
||||
sudo rm -rf $TMPMOUNT
|
||||
}
|
||||
|
||||
vsmac_versions=($(get_toolset_value '.xamarin.vsmac.versions[]'))
|
||||
default_vsmac_version=$(get_toolset_value '.xamarin.vsmac.default')
|
||||
|
||||
for version in ${vsmac_versions[@]}; do
|
||||
install_vsmac $version $default_vsmac_version
|
||||
done
|
||||
|
||||
invoke_tests "Common" "VSMac"
|
||||
@@ -1,92 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: install-xamarin.sh
|
||||
## Desc: Install Xamarin
|
||||
################################################################################
|
||||
|
||||
source ~/utils/utils.sh
|
||||
source ~/utils/xamarin-utils.sh
|
||||
|
||||
mono_versions=($(get_toolset_value '.xamarin."mono_versions" | reverse | .[]'))
|
||||
xamarin_ios_versions=($(get_toolset_value '.xamarin."ios_versions" | reverse | .[]'))
|
||||
xamarin_mac_versions=($(get_toolset_value '.xamarin."mac_versions" | reverse | .[]'))
|
||||
xamarin_android_versions=($(get_toolset_value '.xamarin."android_versions" | reverse | .[]'))
|
||||
latest_sdk_symlink=$(get_toolset_value '.xamarin.bundles[0].symlink')
|
||||
current_sdk_symlink=$(get_toolset_value '.xamarin."bundle_default"')
|
||||
default_xcode_version=$(get_toolset_value '.xcode.default')
|
||||
|
||||
if [[ $current_sdk_symlink == "latest" ]]; then
|
||||
current_sdk_symlink=$latest_sdk_symlink
|
||||
fi
|
||||
|
||||
MONO_VERSIONS_PATH="/Library/Frameworks/Mono.framework/Versions"
|
||||
IOS_VERSIONS_PATH="/Library/Frameworks/Xamarin.iOS.framework/Versions"
|
||||
ANDROID_VERSIONS_PATH="/Library/Frameworks/Xamarin.Android.framework/Versions"
|
||||
MAC_VERSIONS_PATH="/Library/Frameworks/Xamarin.Mac.framework/Versions"
|
||||
|
||||
TMPMOUNT=$(/usr/bin/mktemp -d /tmp/visualstudio.XXXX)
|
||||
TMPMOUNT_FRAMEWORKS=$TMPMOUNT/frameworks
|
||||
createBackupFolders
|
||||
|
||||
pushd $TMPMOUNT
|
||||
|
||||
# Download NUnit console
|
||||
downloadNUnitConsole
|
||||
|
||||
# Install Mono sdks
|
||||
for version in ${mono_versions[@]}; do installMono $version; done
|
||||
sudo mv -v $TMPMOUNT_FRAMEWORKS/mono/* $MONO_VERSIONS_PATH/
|
||||
|
||||
# Install Xamarin.iOS sdks
|
||||
for version in ${xamarin_ios_versions[@]}; do installXamarinIOS $version; done
|
||||
sudo mv -v $TMPMOUNT_FRAMEWORKS/ios/* $IOS_VERSIONS_PATH/
|
||||
|
||||
# Install Xamarin.Mac sdks
|
||||
for version in ${xamarin_mac_versions[@]}; do installXamarinMac $version; done
|
||||
sudo mv -v $TMPMOUNT_FRAMEWORKS/mac/* $MAC_VERSIONS_PATH/
|
||||
|
||||
# Install Xamarin.Android sdks
|
||||
for version in ${xamarin_android_versions[@]}; do installXamarinAndroid $version; done
|
||||
sudo mv -v $TMPMOUNT_FRAMEWORKS/android/* $ANDROID_VERSIONS_PATH/
|
||||
|
||||
|
||||
# Create bundles
|
||||
bundles_count=$(get_toolset_value '.xamarin.bundles | length')
|
||||
for ((bundle_index=0; bundle_index<bundles_count; bundle_index++)); do
|
||||
symlink=$(get_toolset_value ".xamarin.bundles[$bundle_index].symlink")
|
||||
mono=$(get_toolset_value ".xamarin.bundles[$bundle_index].mono")
|
||||
ios=$(get_toolset_value ".xamarin.bundles[$bundle_index].ios")
|
||||
mac=$(get_toolset_value ".xamarin.bundles[$bundle_index].mac")
|
||||
android=$(get_toolset_value ".xamarin.bundles[$bundle_index].android")
|
||||
createBundle $symlink $mono $ios $mac $android
|
||||
done
|
||||
|
||||
# Symlinks for the latest Xamarin bundle
|
||||
createBundleLink $latest_sdk_symlink "Latest"
|
||||
createBundleLink $current_sdk_symlink "Current"
|
||||
|
||||
#
|
||||
# Fix nuget in some mono versions because of known bugs
|
||||
#
|
||||
|
||||
# Creating UWP Shim to hack UWP build failure
|
||||
createUWPShim
|
||||
|
||||
popd
|
||||
|
||||
echo "Clean up packages..."
|
||||
sudo rm -rf $TMPMOUNT
|
||||
|
||||
# Fix Xamarin issue with Xcode symlink: https://github.com/xamarin/xamarin-macios/issues/9960
|
||||
PREFERENCES_XAMARIN_DIR="${HOME}/Library/Preferences/Xamarin"
|
||||
mkdir -p $PREFERENCES_XAMARIN_DIR
|
||||
/usr/libexec/PlistBuddy -c "add :AppleSdkRoot string /Applications/Xcode_${default_xcode_version}.app" $PREFERENCES_XAMARIN_DIR/Settings.plist
|
||||
|
||||
# Temporary workaround to recreate nuget.config file with a correct feed https://github.com/actions/runner-images/issues/5768
|
||||
rm -rf $HOME/.config/NuGet/NuGet.Config
|
||||
nuget config
|
||||
|
||||
# Temporary workaround to point Mono to the proper NUnit console
|
||||
sudo sed -Ei '' 's/3.6.0/3.6.1/' /Library/Frameworks/Mono.framework/Versions/Current/Commands/nunit3-console
|
||||
|
||||
invoke_tests "Xamarin"
|
||||
@@ -13,10 +13,8 @@ Import-Module "$PSScriptRoot/SoftwareReport.Common.psm1" -DisableNameChecking
|
||||
Import-Module "$PSScriptRoot/SoftwareReport.Xcode.psm1" -DisableNameChecking
|
||||
Import-Module "$PSScriptRoot/SoftwareReport.Android.psm1" -DisableNameChecking
|
||||
Import-Module "$PSScriptRoot/SoftwareReport.Java.psm1" -DisableNameChecking
|
||||
Import-Module "$PSScriptRoot/SoftwareReport.Xamarin.psm1" -DisableNameChecking
|
||||
Import-Module "$PSScriptRoot/SoftwareReport.Toolcache.psm1" -DisableNameChecking
|
||||
Import-Module "$PSScriptRoot/SoftwareReport.Browsers.psm1" -DisableNameChecking
|
||||
Import-Module "$PSScriptRoot/SoftwareReport.WebServers.psm1" -DisableNameChecking
|
||||
Import-Module "$PSScriptRoot/SoftwareReport.Helpers.psm1" -DisableNameChecking
|
||||
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
|
||||
Import-Module "$PSScriptRoot/../helpers/Xcode.Helpers.psm1"
|
||||
@@ -38,37 +36,16 @@ $languageAndRuntime.AddToolVersion("Bash", $(Get-BashVersion))
|
||||
$languageAndRuntime.AddNodes($(Get-ClangLLVMVersions))
|
||||
$languageAndRuntime.AddNodes($(Get-GccVersions))
|
||||
$languageAndRuntime.AddNodes($(Get-FortranVersions))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$languageAndRuntime.AddToolVersion("Julia", $(Get-JuliaVersion))
|
||||
}
|
||||
$languageAndRuntime.AddToolVersion("Kotlin", $(Get-KotlinVersion))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$languageAndRuntime.AddToolVersion("Go", $(Get-GoVersion))
|
||||
}
|
||||
if ((-not $os.IsSequoia)) {
|
||||
$languageAndRuntime.AddToolVersion("Mono", $(Get-MonoVersion))
|
||||
}
|
||||
$languageAndRuntime.AddToolVersion("Node.js", $(Get-NodeVersion))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$languageAndRuntime.AddToolVersion("MSBuild", $(Get-MSBuildVersion))
|
||||
$languageAndRuntime.AddToolVersion("NVM", $(Get-NVMVersion))
|
||||
$languageAndRuntime.AddToolVersionsListInline("NVM - Cached node versions", $(Get-NVMNodeVersionList), '^\d+')
|
||||
}
|
||||
$languageAndRuntime.AddToolVersion("Perl", $(Get-PerlVersion))
|
||||
if ((-not $os.IsVenturaArm64) -and (-not $os.IsSonomaArm64) -and (-not $os.IsSequoiaArm64)) {
|
||||
$languageAndRuntime.AddToolVersion("PHP", $(Get-PHPVersion))
|
||||
}
|
||||
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$languageAndRuntime.AddToolVersion("Python", $(Get-PythonVersion))
|
||||
}
|
||||
|
||||
$languageAndRuntime.AddToolVersion("Python3", $(Get-Python3Version))
|
||||
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$languageAndRuntime.AddToolVersion("R", $(Get-RVersion))
|
||||
}
|
||||
|
||||
$languageAndRuntime.AddToolVersion("Ruby", $(Get-RubyVersion))
|
||||
|
||||
# Package Management
|
||||
@@ -80,37 +57,23 @@ if ((-not $os.IsVenturaArm64) -and (-not $os.IsSonomaArm64) -and (-not $os.IsSeq
|
||||
$packageManagement.AddToolVersion("Composer", $(Get-ComposerVersion))
|
||||
}
|
||||
$packageManagement.AddToolVersion("Homebrew", $(Get-HomebrewVersion))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$packageManagement.AddToolVersion("Miniconda", $(Get-CondaVersion))
|
||||
}
|
||||
$packageManagement.AddToolVersion("NPM", $(Get-NPMVersion))
|
||||
if ((-not $os.IsSequoia)) {
|
||||
$packageManagement.AddToolVersion("NuGet", $(Get-NuGetVersion))
|
||||
}
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$packageManagement.AddToolVersion("Pip", $(Get-PipVersion -Version 2))
|
||||
}
|
||||
|
||||
$packageManagement.AddToolVersion("Pip3", $(Get-PipVersion -Version 3))
|
||||
$packageManagement.AddToolVersion("Pip3", $(Get-Pip3Version))
|
||||
$packageManagement.AddToolVersion("Pipx", $(Get-PipxVersion))
|
||||
|
||||
$packageManagement.AddToolVersion("RubyGems", $(Get-RubyGemsVersion))
|
||||
if ((-not $os.IsVenturaArm64) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$packageManagement.AddToolVersion("Vcpkg", $(Get-VcpkgVersion))
|
||||
}
|
||||
$packageManagement.AddToolVersion("Yarn", $(Get-YarnVersion))
|
||||
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$packageManagement.AddNode($(Build-PackageManagementEnvironmentTable))
|
||||
}
|
||||
# Project Management
|
||||
$projectManagement = $installedSoftware.AddHeader("Project Management")
|
||||
$projectManagement.AddToolVersion("Apache Ant", $(Get-ApacheAntVersion))
|
||||
$projectManagement.AddToolVersion("Apache Maven", $(Get-MavenVersion))
|
||||
$projectManagement.AddToolVersion("Gradle", $(Get-GradleVersion))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$projectManagement.AddToolVersion("Sbt", $(Get-SbtVersion))
|
||||
}
|
||||
|
||||
# Utilities
|
||||
$utilities = $installedSoftware.AddHeader("Utilities")
|
||||
@@ -127,62 +90,26 @@ $utilities.AddToolVersion("GitHub CLI", $(Get-GitHubCLIVersion))
|
||||
$utilities.AddToolVersion("GNU Tar", $(Get-GnuTarVersion))
|
||||
$utilities.AddToolVersion("GNU Wget", $(Get-WgetVersion))
|
||||
$utilities.AddToolVersion("gpg (GnuPG)", $(Get-GPGVersion))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$utilities.AddToolVersion("ImageMagick", $(Get-ImageMagickVersion))
|
||||
}
|
||||
$utilities.AddToolVersion("jq", $(Get-JqVersion))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$utilities.AddToolVersion("mongo", $(Get-MongoVersion))
|
||||
$utilities.AddToolVersion("mongod", $(Get-MongodVersion))
|
||||
}
|
||||
$utilities.AddToolVersion("OpenSSL", $(Get-OpenSSLVersion))
|
||||
$utilities.AddToolVersion("Packer", $(Get-PackerVersion))
|
||||
$utilities.AddToolVersion("pkgconf", $(Get-PKGConfVersion))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$utilities.AddToolVersion("PostgreSQL", $(Get-PostgresServerVersion))
|
||||
$utilities.AddToolVersion("psql (PostgreSQL)", $(Get-PostgresClientVersion))
|
||||
$utilities.AddToolVersion("Sox", $(Get-SoxVersion))
|
||||
$utilities.AddToolVersion("Subversion (SVN)", $(Get-SVNVersion))
|
||||
$utilities.AddToolVersion("Switchaudio-osx", $(Get-SwitchAudioOsxVersion))
|
||||
}
|
||||
if ($os.IsMonterey) {
|
||||
$utilities.AddToolVersion("Vagrant", $(Get-VagrantVersion))
|
||||
$utilities.AddToolVersion("VirtualBox", $(Get-VirtualBoxVersion))
|
||||
}
|
||||
$utilities.AddToolVersion("Unxip", $(Get-UnxipVersion))
|
||||
$utilities.AddToolVersion("yq", $(Get-YqVersion))
|
||||
$utilities.AddToolVersion("zstd", $(Get-ZstdVersion))
|
||||
|
||||
# Tools
|
||||
$tools = $installedSoftware.AddHeader("Tools")
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$tools.AddToolVersion("App Center CLI", $(Get-AppCenterCLIVersion))
|
||||
}
|
||||
$tools.AddToolVersion("AWS CLI", $(Get-AWSCLIVersion))
|
||||
$tools.AddToolVersion("AWS SAM CLI", $(Get-AWSSAMCLIVersion))
|
||||
$tools.AddToolVersion("AWS Session Manager CLI", $(Get-AWSSessionManagerCLIVersion))
|
||||
$tools.AddToolVersion("Azure CLI", $(Get-AzureCLIVersion))
|
||||
$tools.AddToolVersion("Azure CLI (azure-devops)", $(Get-AzureDevopsVersion))
|
||||
$tools.AddToolVersion("Bicep CLI", $(Get-BicepVersion))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$tools.AddToolVersion("Cabal", $(Get-CabalVersion))
|
||||
}
|
||||
$tools.AddToolVersion("Cmake", $(Get-CmakeVersion))
|
||||
$tools.AddToolVersion("CodeQL Action Bundle", $(Get-CodeQLBundleVersion))
|
||||
if ($os.IsMonterey) {
|
||||
$tools.AddToolVersion("Colima", $(Get-ColimaVersion))
|
||||
}
|
||||
$tools.AddToolVersion("Fastlane", $(Get-FastlaneVersion))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$tools.AddToolVersion("GHC", $(Get-GHCVersion))
|
||||
$tools.AddToolVersion("GHCup", $(Get-GHCupVersion))
|
||||
$tools.AddToolVersion("Jazzy", $(Get-JazzyVersion))
|
||||
$tools.AddToolVersion("Stack", $(Get-StackVersion))
|
||||
}
|
||||
$tools.AddToolVersion("SwiftFormat", $(Get-SwiftFormatVersion))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$tools.AddToolVersion("Swig", $(Get-SwigVersion))
|
||||
}
|
||||
$tools.AddToolVersion("Xcbeautify", $(Get-XcbeautifyVersion))
|
||||
$tools.AddToolVersion("Xcode Command Line Tools", $(Get-XcodeCommandLineToolsVersion))
|
||||
$tools.AddToolVersion("Xcodes", $(Get-XcodesVersion))
|
||||
@@ -192,9 +119,6 @@ $linters = $installedSoftware.AddHeader("Linters")
|
||||
if ((-not $os.IsVenturaArm64) -and (-not $os.IsSonomaArm64) -and (-not $os.IsSequoiaArm64)) {
|
||||
$linters.AddToolVersion("SwiftLint", $(Get-SwiftLintVersion))
|
||||
}
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$linters.AddToolVersion("Yamllint", $(Get-YamllintVersion))
|
||||
}
|
||||
|
||||
# Browsers
|
||||
$browsers = $installedSoftware.AddHeader("Browsers")
|
||||
@@ -217,12 +141,6 @@ $rust.AddToolVersion("Rustdoc", $(Get-RustdocVersion))
|
||||
$rust.AddToolVersion("Rustup", $(Get-RustupVersion))
|
||||
|
||||
$rustPackages = $rust.AddHeader("Packages")
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$rustPackages.AddToolVersion("Bindgen", $(Get-Bindgen))
|
||||
$rustPackages.AddToolVersion("Cargo-audit", $(Get-Cargoaudit))
|
||||
$rustPackages.AddToolVersion("Cargo-outdated", $(Get-Cargooutdated))
|
||||
$rustPackages.AddToolVersion("Cbindgen", $(Get-Cbindgen))
|
||||
}
|
||||
$rustPackages.AddToolVersion("Clippy", $(Get-RustClippyVersion))
|
||||
$rustPackages.AddToolVersion("Rustfmt", $(Get-RustfmtVersion))
|
||||
|
||||
@@ -233,33 +151,6 @@ $powerShell.AddToolVersion("PowerShell", $(Get-PowershellVersion))
|
||||
$powerShellModules = $powerShell.AddHeader("PowerShell Modules")
|
||||
$powerShellModules.AddNodes($(Get-PowerShellModules))
|
||||
|
||||
# Web Servers
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$webServers = $installedSoftware.AddHeader("Web Servers")
|
||||
$webServers.AddTable($(Build-WebServersSection))
|
||||
}
|
||||
|
||||
# Xamarin section
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$xamarin = $installedSoftware.AddHeader("Xamarin")
|
||||
$vsForMac = $xamarin.AddHeader("Visual Studio for Mac")
|
||||
$vsForMac.AddTable($(Build-VSMacTable))
|
||||
$note =
|
||||
@'
|
||||
To use Visual Studio 2019 by default rename the app:
|
||||
mv "/Applications/Visual Studio.app" "/Applications/Visual Studio 2022.app"
|
||||
mv "/Applications/Visual Studio 2019.app" "/Applications/Visual Studio.app"
|
||||
'@
|
||||
$vsForMacNotes = $vsForMac.AddHeader("Notes")
|
||||
$vsForMacNotes.AddNote($note)
|
||||
|
||||
$xamarinBundles = $xamarin.AddHeader("Xamarin bundles")
|
||||
$xamarinBundles.AddTable($(Build-XamarinTable))
|
||||
|
||||
$unitTestFramework = $xamarin.AddHeader("Unit Test Framework")
|
||||
$unitTestFramework.AddToolVersion("NUnit", $(Get-NUnitVersion))
|
||||
}
|
||||
|
||||
# Xcode section
|
||||
$xcode = $installedSoftware.AddHeader("Xcode")
|
||||
# First run doesn't provide full data about devices and runtimes
|
||||
@@ -267,10 +158,6 @@ Get-XcodeInfoList | Out-Null
|
||||
|
||||
$xcodeInfo = Get-XcodeInfoList
|
||||
$xcode.AddTable($(Build-XcodeTable $xcodeInfo))
|
||||
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsSequoia)) {
|
||||
$xcodeTools = $xcode.AddHeader("Xcode Support Tools")
|
||||
$xcodeTools.AddNodes($(Build-XcodeSupportToolsSection))
|
||||
}
|
||||
|
||||
$installedSdks = $xcode.AddHeader("Installed SDKs")
|
||||
$installedSdks.AddTable($(Build-XcodeSDKTable $xcodeInfo))
|
||||
@@ -286,20 +173,12 @@ $android.AddTable($androidTable)
|
||||
$androidEnv = $android.AddHeader("Environment variables")
|
||||
$androidEnv.AddTable($(Build-AndroidEnvironmentTable))
|
||||
|
||||
if ($os.IsMonterey) {
|
||||
$miscellaneous = $installedSoftware.AddHeader("Miscellaneous")
|
||||
$miscellaneous.AddToolVersion("libXext", $(Get-LibXextVersion))
|
||||
$miscellaneous.AddToolVersion("libXft", $(Get-LibXftVersion))
|
||||
$miscellaneous.AddToolVersion("Tcl/Tk", $(Get-TclTkVersion))
|
||||
$miscellaneous.AddToolVersion("Zlib", $(Get-ZlibVersion))
|
||||
}
|
||||
|
||||
if ($os.IsSonoma -or $os.IsVentura) {
|
||||
$miscellaneous = $installedSoftware.AddHeader("Miscellaneous")
|
||||
$miscellaneous.AddToolVersion("Tcl/Tk", $(Get-TclTkVersion))
|
||||
}
|
||||
|
||||
if ($os.IsMonterey -or $os.IsSonomaX64 -or $os.IsVenturaX64) {
|
||||
if ($os.IsSonomaX64 -or $os.IsVenturaX64) {
|
||||
|
||||
Write-Host "Adding environment variables for parallels"
|
||||
|
||||
|
||||
@@ -10,20 +10,6 @@ function Get-DotnetVersionList {
|
||||
return $sdkRawList | ForEach-Object { Take-Part $_ -Part 0 }
|
||||
}
|
||||
|
||||
function Get-GoVersion {
|
||||
$goOutput = Run-Command "go version" | Take-Part -Part 2
|
||||
if ($goOutput.StartsWith("go")) {
|
||||
$goOutput = $goOutput.Substring(2)
|
||||
}
|
||||
|
||||
return $goOutput
|
||||
}
|
||||
|
||||
function Get-RVersion {
|
||||
$rVersion = Run-Command "R --version | grep 'R version'" | Take-Part -Part 2
|
||||
return $rVersion
|
||||
}
|
||||
|
||||
function Get-RustVersion {
|
||||
$rustVersion = Run-Command "rustc --version" | Take-Part -Part 1
|
||||
return $rustVersion
|
||||
@@ -49,26 +35,6 @@ function Get-RustClippyVersion {
|
||||
return $version
|
||||
}
|
||||
|
||||
function Get-Bindgen {
|
||||
$bindgenVersion = Run-Command "bindgen --version" | Take-Part -Part 1
|
||||
return $bindgenVersion
|
||||
}
|
||||
|
||||
function Get-Cbindgen {
|
||||
$cbindgenVersion = Run-Command "cbindgen --version" | Take-Part -Part 1
|
||||
return $cbindgenVersion
|
||||
}
|
||||
|
||||
function Get-Cargooutdated {
|
||||
$cargoOutdatedVersion = Run-Command "cargo outdated --version" | Take-Part -Part 1
|
||||
return $cargoOutdatedVersion
|
||||
}
|
||||
|
||||
function Get-Cargoaudit {
|
||||
$cargoAuditVersion = Run-Command "cargo-audit --version" | Take-Part -Part 1
|
||||
return $cargoAuditVersion
|
||||
}
|
||||
|
||||
function Get-RustupVersion {
|
||||
$rustupVersion = Run-Command "rustup --version" | Select-Object -First 1 | Take-Part -Part 1
|
||||
return $rustupVersion
|
||||
@@ -114,20 +80,8 @@ function Get-ClangLLVMVersions {
|
||||
)
|
||||
}
|
||||
|
||||
function Get-NVMVersion {
|
||||
$nvmPath = Join-Path $env:HOME ".nvm" "nvm.sh"
|
||||
$nvmInitCommand = ". ${nvmPath} > /dev/null 2>&1 || true"
|
||||
$nodejsVersion = Run-Command "${nvmInitCommand} && nvm --version"
|
||||
return $nodejsVersion
|
||||
}
|
||||
|
||||
function Get-PipVersion {
|
||||
param (
|
||||
[Parameter(Mandatory)][ValidateRange(2, 3)]
|
||||
[int] $Version
|
||||
)
|
||||
|
||||
$command = If ($Version -eq 2) { "/Library/Frameworks/Python.framework/Versions/2.7/bin/pip --version" } Else { "pip3 --version" }
|
||||
function Get-Pip3Version {
|
||||
$command = "pip3 --version"
|
||||
$commandOutput = Run-Command $command
|
||||
$versionPart1 = $commandOutput | Take-Part -Part 1
|
||||
$versionPart2 = $commandOutput | Take-Part -Part 4
|
||||
@@ -140,14 +94,6 @@ function Get-PipxVersion {
|
||||
return $pipxVersion
|
||||
}
|
||||
|
||||
function Get-NVMNodeVersionList {
|
||||
$nvmPath = Join-Path $env:HOME ".nvm" "nvm.sh"
|
||||
$nvmInitCommand = ". ${nvmPath} > /dev/null 2>&1 || true"
|
||||
$nodejsVersionsRaw = Run-Command "${nvmInitCommand} && nvm ls"
|
||||
$nodeVersions = $nodejsVersionsRaw | ForEach-Object { $_.TrimStart(" ").TrimEnd(" *") } | Where-Object { $_.StartsWith("v") }
|
||||
return $nodeVersions | ForEach-Object { $_.TrimStart("v") }
|
||||
}
|
||||
|
||||
function Build-OSInfoSection {
|
||||
param (
|
||||
[string] $ImageName
|
||||
@@ -173,12 +119,6 @@ function Get-MonoVersion {
|
||||
return $monoVersion
|
||||
}
|
||||
|
||||
function Get-MSBuildVersion {
|
||||
$msbuildVersion = Run-Command "msbuild -version" | Select-Object -Last 1
|
||||
$monoVersion = Get-MonoVersion
|
||||
return "$msbuildVersion (Mono $monoVersion)"
|
||||
}
|
||||
|
||||
function Get-NodeVersion {
|
||||
$nodeVersion = Run-Command "node --version"
|
||||
return $nodeVersion.TrimStart("v")
|
||||
@@ -189,11 +129,6 @@ function Get-PerlVersion {
|
||||
return $version
|
||||
}
|
||||
|
||||
function Get-PythonVersion {
|
||||
$pythonVersion = Run-Command "/Library/Frameworks/Python.framework/Versions/2.7/bin/python --version"
|
||||
return ($pythonVersion -replace "^Python").Trim()
|
||||
}
|
||||
|
||||
function Get-Python3Version {
|
||||
$python3Version = Run-Command "python3 --version"
|
||||
return ($python3Version -replace "^Python").Trim()
|
||||
@@ -209,11 +144,6 @@ function Get-PHPVersion {
|
||||
return ($PHPVersion -replace "^PHP").Trim()
|
||||
}
|
||||
|
||||
function Get-JuliaVersion {
|
||||
$juliaVersion = Run-Command "julia --version" | Take-Part -Part 0,2
|
||||
return ($juliaVersion -replace "^Julia").Trim()
|
||||
}
|
||||
|
||||
function Get-BundlerVersion {
|
||||
$bundlerVersion = Run-Command "bundle --version"
|
||||
return ($bundlerVersion -replace "^Bundler version").Trim()
|
||||
@@ -249,11 +179,6 @@ function Get-NuGetVersion {
|
||||
return $nugetVersion
|
||||
}
|
||||
|
||||
function Get-CondaVersion {
|
||||
$condaVersion = Run-Command "conda --version"
|
||||
return ($condaVersion -replace "^conda").Trim()
|
||||
}
|
||||
|
||||
function Get-RubyGemsVersion {
|
||||
$rubyGemsVersion = Run-Command "gem --version"
|
||||
return $rubyGemsVersion
|
||||
@@ -305,11 +230,6 @@ function Get-WgetVersion {
|
||||
return $wgetVersion
|
||||
}
|
||||
|
||||
function Get-SVNVersion {
|
||||
$svnVersion = Run-Command "svn --version --quiet"
|
||||
return $svnVersion
|
||||
}
|
||||
|
||||
function Get-PackerVersion {
|
||||
# Packer 1.7.1 has a bug and outputs version to stderr instead of stdout https://github.com/hashicorp/packer/issues/10855
|
||||
$result = Run-Command "packer --version"
|
||||
@@ -332,16 +252,6 @@ function Get-GPGVersion {
|
||||
return ($gpgVersion.Line -replace "^gpg \(GnuPG\)").Trim()
|
||||
}
|
||||
|
||||
function Get-PostgresClientVersion {
|
||||
$postgresClientVersion = Run-Command "psql --version"
|
||||
return ($postgresClientVersion -replace "^psql \(PostgreSQL\)").Trim()
|
||||
}
|
||||
|
||||
function Get-PostgresServerVersion {
|
||||
$postgresServerVersion = Run-Command "pg_config --version"
|
||||
return ($postgresServerVersion -replace "^PostgreSQL").Trim()
|
||||
}
|
||||
|
||||
function Get-Aria2Version {
|
||||
$aria2Version = Run-Command "aria2c --version" | Select-Object -First 1 | Take-Part -Part 2
|
||||
return $aria2Version
|
||||
@@ -367,16 +277,6 @@ function Get-BazeliskVersion {
|
||||
return ($bazeliskVersion -replace "^bazelisk").Trim()
|
||||
}
|
||||
|
||||
function Get-MongoVersion {
|
||||
$mongo = Run-Command "mongo --version" | Select-String "MongoDB shell version" | Take-Part -Part 3
|
||||
return $mongo.TrimStart("v").Trim()
|
||||
}
|
||||
|
||||
function Get-MongodVersion {
|
||||
$mongod = Run-Command "mongod --version" | Select-String "db version " | Take-Part -Part 2
|
||||
return $mongod.TrimStart("v").Trim()
|
||||
}
|
||||
|
||||
function Get-7zipVersion {
|
||||
$7zip = Run-Command "7z i" | Select-String "7-Zip" | Take-Part -Part 0,2
|
||||
return ($7zip -replace "^7-Zip").Trim()
|
||||
@@ -392,16 +292,6 @@ function Get-BsdtarVersion {
|
||||
return "$bsdtar - available by 'tar' alias"
|
||||
}
|
||||
|
||||
function Get-VirtualBoxVersion {
|
||||
$virtualBox = Run-Command "vboxmanage -v"
|
||||
return $virtualBox
|
||||
}
|
||||
|
||||
function Get-VagrantVersion {
|
||||
$vagrant = Run-Command "vagrant -v"
|
||||
return ($vagrant -replace "^Vagrant").Trim()
|
||||
}
|
||||
|
||||
function Get-ParallelVersion {
|
||||
$parallelVersion = Run-Command "parallel --version" | Select-String "GNU parallel" | Select-Object -First 1
|
||||
return ($parallelVersion -replace "^GNU parallel").Trim()
|
||||
@@ -417,11 +307,6 @@ function Get-CmakeVersion {
|
||||
return $cmakeVersion
|
||||
}
|
||||
|
||||
function Get-AppCenterCLIVersion {
|
||||
$appcenterCLIVersion = Run-Command "appcenter --version" | Take-Part -Part 2
|
||||
return $appcenterCLIVersion
|
||||
}
|
||||
|
||||
function Get-AzureCLIVersion {
|
||||
$azureCLIVersion = (az version | ConvertFrom-Json).'azure-cli'
|
||||
return $azureCLIVersion
|
||||
@@ -447,46 +332,11 @@ function Get-AWSSessionManagerCLIVersion {
|
||||
return $awsSessionManagerVersion
|
||||
}
|
||||
|
||||
function Get-GHCupVersion {
|
||||
$ghcUpVersion = (Run-Command "ghcup --version" | Take-Part -Part 5).Replace('v','')
|
||||
return $ghcUpVersion
|
||||
}
|
||||
|
||||
function Get-GHCVersion {
|
||||
$ghcVersion = Run-Command "ghc --version" | Take-Part -Part 7
|
||||
return $ghcVersion
|
||||
}
|
||||
|
||||
function Get-CabalVersion {
|
||||
$cabalVersion = Run-Command "cabal --version" | Take-Part -Part 3
|
||||
return $cabalVersion
|
||||
}
|
||||
|
||||
function Get-SwitchAudioOsxVersion {
|
||||
$switchAudioVersion = Get-BrewPackageVersion -CommandName "SwitchAudioSource"
|
||||
return $switchAudioVersion
|
||||
}
|
||||
|
||||
function Get-SoxVersion {
|
||||
$soxVersion = Get-BrewPackageVersion -CommandName "sox"
|
||||
return $soxVersion
|
||||
}
|
||||
|
||||
function Get-StackVersion {
|
||||
$stackVersion = Run-Command "stack --version" | Take-Part -Part 1 | ForEach-Object {$_.replace(",","")}
|
||||
return $stackVersion
|
||||
}
|
||||
|
||||
function Get-SwiftFormatVersion {
|
||||
$swiftFormatVersion = Run-Command "swiftformat --version"
|
||||
return $swiftFormatVersion
|
||||
}
|
||||
|
||||
function Get-YamllintVersion {
|
||||
$yamllintVersion = Run-Command "yamllint --version"
|
||||
return ($yamllintVersion -replace "^Yamllint").Trim()
|
||||
}
|
||||
|
||||
function Get-SwiftLintVersion {
|
||||
$swiftlintVersion = Run-Command "swiftlint version"
|
||||
return $swiftlintVersion
|
||||
@@ -497,11 +347,6 @@ function Get-PowershellVersion {
|
||||
return ($powershellVersion -replace "^PowerShell").Trim()
|
||||
}
|
||||
|
||||
function Get-SwigVersion {
|
||||
$swigVersion = Run-Command "swig -version" | Select-Object -First 2 | Take-Part -Part 2
|
||||
return $swigVersion
|
||||
}
|
||||
|
||||
function Get-BicepVersion {
|
||||
$bicepVersion = Run-Command "bicep --version" | Take-Part -Part 3
|
||||
return $bicepVersion
|
||||
@@ -512,31 +357,6 @@ function Get-KotlinVersion {
|
||||
return $kotlinVersion
|
||||
}
|
||||
|
||||
function Get-SbtVersion {
|
||||
$sbtVersion = Run-Command "sbt -version" | Take-Part -Part 3
|
||||
return $sbtVersion
|
||||
}
|
||||
|
||||
function Get-JazzyVersion {
|
||||
$jazzyVersion = Run-Command "jazzy --version" | Take-Part -Part 2
|
||||
return $jazzyVersion
|
||||
}
|
||||
|
||||
function Get-ZlibVersion {
|
||||
$zlibVersion = (Run-Command "brew info --json zlib" | ConvertFrom-Json).installed.version
|
||||
return $zlibVersion
|
||||
}
|
||||
|
||||
function Get-LibXftVersion {
|
||||
$libXftVersion = (Run-Command "brew info --json libxft" | ConvertFrom-Json).installed.version
|
||||
return $libXftVersion
|
||||
}
|
||||
|
||||
function Get-LibXextVersion {
|
||||
$libXextVersion = (Run-Command "brew info --json libxext" | ConvertFrom-Json).installed.version
|
||||
return $libXextVersion
|
||||
}
|
||||
|
||||
function Get-TclTkVersion {
|
||||
$tcltkVersion = (Run-Command "brew info --json tcl-tk@8" | ConvertFrom-Json).installed.version
|
||||
return $tcltkVersion
|
||||
@@ -548,35 +368,6 @@ function Get-YqVersion {
|
||||
return ($Matches[0])
|
||||
}
|
||||
|
||||
function Get-ImageMagickVersion {
|
||||
$imagemagickVersion = Run-Command "magick --version" | Select-Object -First 1 | Take-Part -Part 1,2
|
||||
return ($imagemagickVersion -replace "^ImageMagick").Trim()
|
||||
}
|
||||
|
||||
function Build-PackageManagementEnvironmentTable {
|
||||
$node = [HeaderNode]::new("Environment variables")
|
||||
|
||||
$table = @(
|
||||
@{
|
||||
"Name" = "CONDA"
|
||||
"Value" = $env:CONDA
|
||||
},
|
||||
@{
|
||||
"Name" = "VCPKG_INSTALLATION_ROOT"
|
||||
"Value" = $env:VCPKG_INSTALLATION_ROOT
|
||||
}
|
||||
) | ForEach-Object {
|
||||
[PSCustomObject] @{
|
||||
"Name" = $_.Name
|
||||
"Value" = $_.Value
|
||||
}
|
||||
}
|
||||
|
||||
$node.AddTable($table)
|
||||
|
||||
return $node
|
||||
}
|
||||
|
||||
function Build-MiscellaneousEnvironmentTable {
|
||||
return @(
|
||||
@{
|
||||
@@ -591,7 +382,6 @@ function Build-MiscellaneousEnvironmentTable {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function Get-CodeQLBundleVersion {
|
||||
$CodeQLVersionWildcard = Join-Path $Env:AGENT_TOOLSDIRECTORY -ChildPath "CodeQL" | Join-Path -ChildPath "*"
|
||||
$CodeQLVersionPath = Get-ChildItem $CodeQLVersionWildcard | Select-Object -First 1 -Expand FullName
|
||||
@@ -600,11 +390,6 @@ function Get-CodeQLBundleVersion {
|
||||
return $CodeQLVersion
|
||||
}
|
||||
|
||||
function Get-ColimaVersion {
|
||||
$colimaVersion = Run-Command "colima version" | Select-String "colima version" | Take-Part -Part 2
|
||||
return $colimaVersion
|
||||
}
|
||||
|
||||
function Get-PKGConfVersion {
|
||||
$pkgconfVersion = Run-Command "pkgconf --version"
|
||||
return $pkgconfVersion
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
function Get-ApacheVersion {
|
||||
$name = "httpd"
|
||||
$port = 80
|
||||
$version = brew list $name --versions | Take-Part -Part 1
|
||||
$serviceStatus = (brew services list) -match $name | Take-Part -Part 1
|
||||
$configFile = "$(brew --prefix)/etc/httpd/httpd.conf"
|
||||
return [PsCustomObject]@{
|
||||
"Name" = $name
|
||||
"Version" = $version
|
||||
"ConfigFile" = $configFile
|
||||
"ServiceStatus" = $serviceStatus
|
||||
"ListenPort" = $port
|
||||
}
|
||||
}
|
||||
|
||||
function Get-NginxVersion {
|
||||
$name = "nginx"
|
||||
$port = 80
|
||||
$version = brew list $name --versions | Take-Part -Part 1
|
||||
$serviceStatus = (brew services list) -match $name | Take-Part -Part 1
|
||||
$configFile = "$(brew --prefix)/etc/nginx/nginx.conf"
|
||||
return [PsCustomObject]@{
|
||||
"Name" = $name
|
||||
"Version" = $version
|
||||
"ConfigFile" = $configFile
|
||||
"ServiceStatus" = $serviceStatus
|
||||
"ListenPort" = $port
|
||||
}
|
||||
}
|
||||
|
||||
function Build-WebServersSection {
|
||||
return @(
|
||||
(Get-ApacheVersion),
|
||||
(Get-NginxVersion)
|
||||
)
|
||||
}
|
||||
@@ -1,48 +0,0 @@
|
||||
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
|
||||
|
||||
function Build-VSMacTable {
|
||||
$vsMacVersions = (Get-ToolsetContent).xamarin.vsmac.versions
|
||||
$defaultVSMacVersion = (Get-ToolsetContent).xamarin.vsmac.default
|
||||
|
||||
return $vsMacVersions | ForEach-Object {
|
||||
$isDefault = $_ -eq $defaultVSMacVersion
|
||||
$vsPath = "/Applications/Visual Studio $_.app"
|
||||
if ($isDefault) {
|
||||
$vsPath = "/Applications/Visual Studio.app"
|
||||
}
|
||||
|
||||
$plistPath = "$vsPath/Contents/Info.plist"
|
||||
$build = Run-Command "/usr/libexec/PlistBuddy -c 'Print CFBundleVersion' '$plistPath'"
|
||||
$defaultPostfix = $isDefault ? " (default)" : ""
|
||||
|
||||
[PSCustomObject] @{
|
||||
"Version" = $_ + $defaultPostfix
|
||||
"Build" = $build
|
||||
"Path" = $vsPath
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function Get-NUnitVersion {
|
||||
$version = Run-Command "nunit3-console --version" | Select-Object -First 1 | Take-Part -Part 3
|
||||
return $version
|
||||
}
|
||||
|
||||
function Build-XamarinTable {
|
||||
$xamarinBundles = (Get-ToolsetContent).xamarin.bundles
|
||||
$defaultSymlink = (Get-ToolsetContent).xamarin.bundle_default
|
||||
if ($defaultSymlink -eq "latest") {
|
||||
$defaultSymlink = $xamarinBundles[0].symlink
|
||||
}
|
||||
|
||||
return $xamarinBundles | ForEach-Object {
|
||||
$defaultPostfix = ($_.symlink -eq $defaultSymlink ) ? " (default)" : ""
|
||||
[PSCustomObject] @{
|
||||
"symlink" = $_.symlink + $defaultPostfix
|
||||
"Xamarin.Mono" = $_.mono
|
||||
"Xamarin.iOS" = $_.ios
|
||||
"Xamarin.Mac" = $_.mac
|
||||
"Xamarin.Android" = $_.android
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -72,6 +72,8 @@ function Get-XcodePlatformOrder {
|
||||
"Simulator - tvOS" { 5 }
|
||||
"watchOS" { 6 }
|
||||
"Simulator - watchOS" { 7 }
|
||||
"visionOS" { 8 }
|
||||
"Simulator - visionOS" { 9 }
|
||||
Default { 100 }
|
||||
}
|
||||
}
|
||||
@@ -237,22 +239,3 @@ function Build-XcodeSimulatorsTable {
|
||||
return [System.Version]::Parse($sdkNameParts[-1])
|
||||
}
|
||||
}
|
||||
|
||||
function Build-XcodeSupportToolsSection {
|
||||
$toolNodes = @()
|
||||
|
||||
$xcpretty = Run-Command "xcpretty --version"
|
||||
$xcversion = Run-Command "xcversion --version" | Select-String "^[0-9]"
|
||||
|
||||
$toolNodes += [ToolVersionNode]::new("xcpretty", $xcpretty)
|
||||
if ($os.IsMonterey) {
|
||||
$toolNodes += [ToolVersionNode]::new("xcversion", $xcversion)
|
||||
}
|
||||
|
||||
$nomadOutput = Run-Command "gem list nomad-cli"
|
||||
$nomadCLI = [regex]::matches($nomadOutput, "(\d+.){2}\d+").Value
|
||||
$nomadShenzhenOutput = Run-Command "ipa -version"
|
||||
$nomadShenzhen = [regex]::matches($nomadShenzhenOutput, "(\d+.){2}\d+").Value
|
||||
|
||||
return $toolNodes
|
||||
}
|
||||
|
||||
@@ -29,7 +29,6 @@ function Get-OSVersion {
|
||||
Version = $osVersion.Version
|
||||
Platform = $osVersion.Platform
|
||||
IsArm64 = $processorArchitecture -eq "arm64"
|
||||
IsMonterey = $osVersion.Version.Major -eq "12"
|
||||
IsVentura = $($osVersion.Version.Major -eq "13")
|
||||
IsVenturaArm64 = $($osVersion.Version.Major -eq "13" -and $processorArchitecture -eq "arm64")
|
||||
IsVenturaX64 = $($osVersion.Version.Major -eq "13" -and $processorArchitecture -ne "arm64")
|
||||
|
||||
@@ -165,10 +165,6 @@ function Invoke-XcodeRunFirstLaunch {
|
||||
[string] $Version
|
||||
)
|
||||
|
||||
if ($Version.StartsWith("8") -or $Version.StartsWith("9")) {
|
||||
return
|
||||
}
|
||||
|
||||
Write-Host "Running 'runFirstLaunch' for Xcode $Version..."
|
||||
$xcodeRootPath = Get-XcodeToolPath -Version $Version -ToolName "xcodebuild"
|
||||
Invoke-ValidateCommand "sudo $xcodeRootPath -runFirstLaunch"
|
||||
@@ -177,12 +173,36 @@ function Invoke-XcodeRunFirstLaunch {
|
||||
function Install-AdditionalSimulatorRuntimes {
|
||||
param (
|
||||
[Parameter(Mandatory)]
|
||||
[string] $Version
|
||||
[string] $Version,
|
||||
[Parameter(Mandatory)]
|
||||
[array] $Runtimes
|
||||
)
|
||||
|
||||
Write-Host "Installing Simulator Runtimes for Xcode $Version ..."
|
||||
$xcodebuildPath = Get-XcodeToolPath -Version $Version -ToolName "xcodebuild"
|
||||
Invoke-ValidateCommand "$xcodebuildPath -downloadAllPlatforms" | Out-Null
|
||||
$xcodebuildPath = Get-XcodeToolPath -Version $Version -ToolName 'xcodebuild'
|
||||
$validRuntimes = @("iOS", "watchOS", "tvOS", "visionOS")
|
||||
# Install all runtimes / skip all runtimes installation
|
||||
if ($Runtimes.Count -eq 1) {
|
||||
if ($Runtimes[0] -eq "true") {
|
||||
Write-Host "Installing all runtimes for Xcode $Version ..."
|
||||
Invoke-ValidateCommand "sudo $xcodebuildPath -downloadAllPlatforms" | Out-Null
|
||||
return
|
||||
} elseif ($Runtimes[0] -eq "false") {
|
||||
Write-Host "Skipping runtimes installation for Xcode $Version ..."
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
# Validate and install specified runtimes
|
||||
$invalidRuntimes = $Runtimes | Where-Object { $_ -notin $validRuntimes }
|
||||
if ($invalidRuntimes) {
|
||||
throw "Error: Invalid runtimes detected: $($invalidRuntimes -join ', '). Valid values are: $validRuntimes."
|
||||
}
|
||||
|
||||
foreach ($runtime in $Runtimes) {
|
||||
Write-Host "Installing runtime $runtime ..."
|
||||
Invoke-ValidateCommand "sudo $xcodebuildPath -downloadPlatform $runtime" | Out-Null
|
||||
}
|
||||
}
|
||||
|
||||
function Build-XcodeSymlinks {
|
||||
|
||||
@@ -1,49 +0,0 @@
|
||||
# This AppleScript confirms developers in security preferences via macOS UI.
|
||||
# It uses after VirtualBox installation to add 'Oracle Inc' as identified developer.
|
||||
# Steps:
|
||||
# - Close security preferences pop-up (it can be open after VirtualBox installation)
|
||||
# - Open System Preferences -> Security & Privacy -> General
|
||||
# - Unlock security preferences with user password (button 'Click the lock to make changes')
|
||||
# - Click 'Allow' or 'Details…' button to confirm developers
|
||||
# - Click 'Not now' button on restarting pop-up
|
||||
# - Close System Preferences
|
||||
|
||||
on run argv
|
||||
set userpassword to item 1 of argv
|
||||
set secpane to "Security & Privacy"
|
||||
|
||||
activate application "System Preferences"
|
||||
delay 5
|
||||
|
||||
tell application "System Events"
|
||||
tell process "System Preferences"
|
||||
set frontmost to true
|
||||
delay 2
|
||||
click menu item secpane of menu "View" of menu bar 1
|
||||
delay 5
|
||||
click button 1 of window 1
|
||||
delay 5
|
||||
keystroke userpassword
|
||||
delay 5
|
||||
keystroke return
|
||||
delay 5
|
||||
click radio button "General" of tab group 1 of window 1
|
||||
delay 5
|
||||
if exists of UI element "Details…" of tab group 1 of window 1 then
|
||||
click button "Details…" of tab group 1 of window 1
|
||||
delay 5
|
||||
keystroke return
|
||||
delay 5
|
||||
keystroke return
|
||||
delay 5
|
||||
end if
|
||||
if exists of UI element "Allow" of tab group 1 of window 1 then
|
||||
click button "Allow" of tab group 1 of window 1
|
||||
delay 5
|
||||
keystroke return
|
||||
delay 5
|
||||
end if
|
||||
click button 5 of window 1
|
||||
end tell
|
||||
end tell
|
||||
end run
|
||||
@@ -81,10 +81,6 @@ is_VenturaX64() {
|
||||
is_Ventura && ! is_Arm64
|
||||
}
|
||||
|
||||
is_Monterey() {
|
||||
[ "$OSTYPE" = "darwin21" ]
|
||||
}
|
||||
|
||||
get_toolset_value() {
|
||||
local toolset_path=$(echo "$IMAGE_FOLDER/toolset.json")
|
||||
local query=$1
|
||||
|
||||
@@ -1,215 +0,0 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
# Xamarin can clean their SDKs while updating to newer versions,
|
||||
# so we should be able to detect it during image generation
|
||||
|
||||
buildVSMacDownloadUrl() {
|
||||
echo "https://dl.xamarin.com/VsMac/VisualStudioForMac-${1}.dmg"
|
||||
}
|
||||
|
||||
buildMonoDownloadUrl() {
|
||||
echo "https://dl.xamarin.com/MonoFrameworkMDK/Macx86/MonoFramework-MDK-${1}.macos10.xamarin.universal.pkg"
|
||||
}
|
||||
|
||||
buildXamariniIOSDownloadUrl() {
|
||||
echo "https://dl.xamarin.com/MonoTouch/Mac/xamarin.ios-${1}.pkg"
|
||||
}
|
||||
|
||||
buildXamarinMacDownloadUrl() {
|
||||
echo "https://dl.xamarin.com/XamarinforMac/Mac/xamarin.mac-${1}.pkg"
|
||||
}
|
||||
|
||||
buildXamarinAndroidDownloadUrl() {
|
||||
echo "https://dl.xamarin.com/MonoforAndroid/Mac/xamarin.android-${1}.pkg"
|
||||
}
|
||||
|
||||
installMono() {
|
||||
local VERSION=$1
|
||||
|
||||
echo "Installing Mono ${VERSION}..."
|
||||
local MONO_FOLDER_NAME=$(echo $VERSION | cut -d. -f 1,2,3)
|
||||
local SHORT_VERSION=$(echo $VERSION | cut -d. -f 1,2)
|
||||
local PKG_URL=$(buildMonoDownloadUrl $VERSION)
|
||||
|
||||
sudo installer -pkg "$(download_with_retry "$PKG_URL")" -target /
|
||||
|
||||
echo "Installing nunit3-console for Mono "$VERSION
|
||||
installNunitConsole $MONO_FOLDER_NAME
|
||||
|
||||
echo "Creating short symlink '${SHORT_VERSION}'"
|
||||
sudo ln -s ${MONO_VERSIONS_PATH}/${MONO_FOLDER_NAME} ${MONO_VERSIONS_PATH}/${SHORT_VERSION}
|
||||
|
||||
echo "Move to backup folder"
|
||||
sudo mv -v $MONO_VERSIONS_PATH/* $TMPMOUNT_FRAMEWORKS/mono/
|
||||
}
|
||||
|
||||
installXamarinIOS() {
|
||||
local VERSION=$1
|
||||
|
||||
echo "Installing Xamarin.iOS ${VERSION}..."
|
||||
local SHORT_VERSION=$(echo $VERSION | cut -d. -f 1,2)
|
||||
local PKG_URL=$(buildXamariniIOSDownloadUrl $VERSION)
|
||||
|
||||
sudo installer -pkg "$(download_with_retry "$PKG_URL")" -target /
|
||||
|
||||
echo "Creating short symlink '${SHORT_VERSION}'"
|
||||
sudo ln -s ${IOS_VERSIONS_PATH}/${VERSION} ${IOS_VERSIONS_PATH}/${SHORT_VERSION}
|
||||
|
||||
echo "Move to backup folder"
|
||||
sudo mv -v $IOS_VERSIONS_PATH/* $TMPMOUNT_FRAMEWORKS/ios/
|
||||
}
|
||||
|
||||
installXamarinMac() {
|
||||
local VERSION=$1
|
||||
|
||||
echo "Installing Xamarin.Mac ${VERSION}..."
|
||||
local SHORT_VERSION=$(echo $VERSION | cut -d. -f 1,2)
|
||||
local PKG_URL=$(buildXamarinMacDownloadUrl $VERSION)
|
||||
|
||||
sudo installer -pkg "$(download_with_retry "$PKG_URL")" -target /
|
||||
|
||||
echo "Creating short symlink '${SHORT_VERSION}'"
|
||||
sudo ln -s ${MAC_VERSIONS_PATH}/${VERSION} ${MAC_VERSIONS_PATH}/${SHORT_VERSION}
|
||||
|
||||
echo "Move to backup folder"
|
||||
sudo mv -v $MAC_VERSIONS_PATH/* $TMPMOUNT_FRAMEWORKS/mac/
|
||||
}
|
||||
|
||||
installXamarinAndroid() {
|
||||
local VERSION=$1
|
||||
|
||||
echo "Installing Xamarin.Android ${VERSION}..."
|
||||
local SHORT_VERSION=$(echo $VERSION | cut -d. -f 1,2)
|
||||
local PKG_URL=$(buildXamarinAndroidDownloadUrl $VERSION)
|
||||
|
||||
sudo installer -pkg "$(download_with_retry "$PKG_URL")" -target /
|
||||
|
||||
if [ "$VERSION" == "9.4.1.0" ]; then
|
||||
# Fix symlinks for broken Xamarin.Android
|
||||
fixXamarinAndroidSymlinksInLibDir $VERSION
|
||||
fi
|
||||
|
||||
echo "Creating short symlink '${SHORT_VERSION}'"
|
||||
sudo ln -s ${ANDROID_VERSIONS_PATH}/${VERSION} ${ANDROID_VERSIONS_PATH}/${SHORT_VERSION}
|
||||
|
||||
echo "Move to backup folder"
|
||||
sudo mv -v $ANDROID_VERSIONS_PATH/* $TMPMOUNT_FRAMEWORKS/android/
|
||||
}
|
||||
|
||||
createBundle() {
|
||||
local SYMLINK=$1
|
||||
local MONO_SDK=$2
|
||||
local IOS_SDK=$3
|
||||
local MAC_SDK=$4
|
||||
local ANDROID_SDK=$5
|
||||
|
||||
echo "Creating bundle '$SYMLINK' (Mono $MONO_SDK; iOS $IOS_SDK; Mac $MAC_SDK; Android $ANDROID_SDK"
|
||||
deleteSymlink ${SYMLINK}
|
||||
sudo ln -s ${MONO_VERSIONS_PATH}/${MONO_SDK} ${MONO_VERSIONS_PATH}/${SYMLINK}
|
||||
sudo ln -s ${IOS_VERSIONS_PATH}/${IOS_SDK} ${IOS_VERSIONS_PATH}/${SYMLINK}
|
||||
sudo ln -s ${MAC_VERSIONS_PATH}/${MAC_SDK} ${MAC_VERSIONS_PATH}/${SYMLINK}
|
||||
sudo ln -s ${ANDROID_VERSIONS_PATH}/${ANDROID_SDK} ${ANDROID_VERSIONS_PATH}/${SYMLINK}
|
||||
}
|
||||
|
||||
createBundleLink() {
|
||||
local SOURCE=$1
|
||||
local TARGET=$2
|
||||
echo "Creating bundle symlink '$SOURCE' -> '$TARGET'"
|
||||
deleteSymlink ${TARGET}
|
||||
sudo ln -s ${MONO_VERSIONS_PATH}/$SOURCE ${MONO_VERSIONS_PATH}/$TARGET
|
||||
sudo ln -s ${IOS_VERSIONS_PATH}/$SOURCE ${IOS_VERSIONS_PATH}/$TARGET
|
||||
sudo ln -s ${MAC_VERSIONS_PATH}/$SOURCE ${MAC_VERSIONS_PATH}/$TARGET
|
||||
sudo ln -s ${ANDROID_VERSIONS_PATH}/$SOURCE ${ANDROID_VERSIONS_PATH}/$TARGET
|
||||
}
|
||||
|
||||
# https://github.com/xamarin/xamarin-android/issues/3457
|
||||
# Recreate missing symlinks in lib for new Xamarin.Android package
|
||||
# Symlink path /Library/Frameworks/Xamarin.Android.framework/Libraries
|
||||
# xbuild -> xamarin.android/xbuild
|
||||
# xbuild-frameworks -> xamarin.android/xbuild-frameworks
|
||||
fixXamarinAndroidSymlinksInLibDir() {
|
||||
local XAMARIN_ANDROID_VERSION=$1
|
||||
local XAMARIN_ANDROID_LIB_PATH="${ANDROID_VERSIONS_PATH}/${XAMARIN_ANDROID_VERSION}/lib"
|
||||
|
||||
if [ -d "${XAMARIN_ANDROID_LIB_PATH}" ]; then
|
||||
pushd "${XAMARIN_ANDROID_LIB_PATH}" > /dev/null
|
||||
|
||||
local XAMARIN_ANDROID_XBUILD_DIR="${XAMARIN_ANDROID_LIB_PATH}/xbuild"
|
||||
if [ ! -d "${XAMARIN_ANDROID_XBUILD_DIR}" ]; then
|
||||
echo "${XAMARIN_ANDROID_XBUILD_DIR}"
|
||||
sudo ln -sf xamarin.android/xbuild xbuild
|
||||
fi
|
||||
|
||||
local XAMARIN_ANDROID_XBUILD_FRAMEWORKS_DIR="${XAMARIN_ANDROID_LIB_PATH}/xbuild-frameworks"
|
||||
if [ ! -d "${XAMARIN_ANDROID_XBUILD_FRAMEWORKS_DIR}" ]; then
|
||||
echo "${XAMARIN_ANDROID_XBUILD_FRAMEWORKS_DIR}"
|
||||
sudo ln -sf xamarin.android/xbuild-frameworks xbuild-frameworks
|
||||
fi
|
||||
|
||||
popd > /dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
installNunitConsole() {
|
||||
local MONO_VERSION=$1
|
||||
local TMP_WRAPPER_PATH=$(mktemp)
|
||||
|
||||
cat <<EOF > "$TMP_WRAPPER_PATH"
|
||||
#!/bin/bash -e -o pipefail
|
||||
exec /Library/Frameworks/Mono.framework/Versions/${MONO_VERSION}/bin/mono --debug \$MONO_OPTIONS $NUNIT3_PATH/nunit3-console.exe "\$@"
|
||||
EOF
|
||||
sudo chmod +x $TMP_WRAPPER_PATH
|
||||
sudo mv "$TMP_WRAPPER_PATH" "${MONO_VERSIONS_PATH}/${MONO_VERSION}/Commands/nunit3-console"
|
||||
}
|
||||
|
||||
downloadNUnitConsole() {
|
||||
echo "Downloading NUnit 3..."
|
||||
local NUNIT3_VERSION='3.6.1'
|
||||
local NUNIT3_LOCATION="https://github.com/nunit/nunit-console/releases/download/${NUNIT3_VERSION}/NUnit.Console-${NUNIT3_VERSION}.zip"
|
||||
local NUNIT3_PATH="/Library/Developer/nunit/${NUNIT3_VERSION}"
|
||||
|
||||
NUNIT3_ARCHIVE=$(download_with_retry $NUNIT3_LOCATION)
|
||||
|
||||
echo "Installing NUnit 3..."
|
||||
sudo mkdir -p $NUNIT3_PATH
|
||||
sudo unzip "$NUNIT3_ARCHIVE" -d $NUNIT3_PATH
|
||||
}
|
||||
|
||||
createUWPShim() {
|
||||
echo "Creating UWP Shim to hack UWP build failure..."
|
||||
cat <<EOF > ${TMPMOUNT}/Microsoft.Windows.UI.Xaml.CSharp.Targets
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Target Name = "Build"/>
|
||||
<Target Name = "Rebuild"/>
|
||||
</Project>
|
||||
EOF
|
||||
|
||||
local UWPTARGET_PATH=/Library/Frameworks/Mono.framework/External/xbuild/Microsoft/WindowsXaml
|
||||
|
||||
sudo mkdir -p $UWPTARGET_PATH/v11.0/
|
||||
sudo cp ${TMPMOUNT}/Microsoft.Windows.UI.Xaml.CSharp.Targets $UWPTARGET_PATH/v11.0/
|
||||
sudo mkdir -p $UWPTARGET_PATH/v12.0/
|
||||
sudo cp ${TMPMOUNT}/Microsoft.Windows.UI.Xaml.CSharp.Targets $UWPTARGET_PATH/v12.0/
|
||||
sudo mkdir -p $UWPTARGET_PATH/v14.0/
|
||||
sudo cp ${TMPMOUNT}/Microsoft.Windows.UI.Xaml.CSharp.Targets $UWPTARGET_PATH/v14.0/
|
||||
sudo mkdir -p $UWPTARGET_PATH/v15.0/
|
||||
sudo cp ${TMPMOUNT}/Microsoft.Windows.UI.Xaml.CSharp.Targets $UWPTARGET_PATH/v15.0/
|
||||
sudo mkdir -p $UWPTARGET_PATH/v16.0/
|
||||
sudo cp ${TMPMOUNT}/Microsoft.Windows.UI.Xaml.CSharp.Targets $UWPTARGET_PATH/v16.0/
|
||||
}
|
||||
|
||||
createBackupFolders() {
|
||||
mkdir -p $TMPMOUNT_FRAMEWORKS/mono
|
||||
mkdir -p $TMPMOUNT_FRAMEWORKS/ios
|
||||
mkdir -p $TMPMOUNT_FRAMEWORKS/mac
|
||||
mkdir -p $TMPMOUNT_FRAMEWORKS/android
|
||||
}
|
||||
|
||||
deleteSymlink() {
|
||||
sudo rm -f ${MONO_VERSIONS_PATH}/${1}
|
||||
sudo rm -f ${IOS_VERSIONS_PATH}/${1}
|
||||
sudo rm -f ${MAC_VERSIONS_PATH}/${1}
|
||||
sudo rm -f ${ANDROID_VERSIONS_PATH}/${1}
|
||||
}
|
||||
@@ -57,14 +57,6 @@ Describe "Android" {
|
||||
Sdkmanager = "$env:ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager"
|
||||
}
|
||||
)
|
||||
if ($os.IsMonterey) {
|
||||
$testCases += @(
|
||||
@{
|
||||
PackageName = "SDK tools"
|
||||
Sdkmanager = "$env:ANDROID_HOME/tools/bin/sdkmanager"
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
It "Sdkmanager from <PackageName> is available" -TestCases $testCases {
|
||||
"$Sdkmanager --version" | Should -ReturnZeroExitCode
|
||||
|
||||
@@ -26,12 +26,6 @@ Describe "cmake" {
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Subversion" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "Subversion" {
|
||||
"svn --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "SwiftFormat" {
|
||||
It "SwiftFormat" {
|
||||
"swiftformat --version" | Should -ReturnZeroExitCode
|
||||
@@ -87,7 +81,7 @@ Describe "7-Zip" {
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Apache Ant" -Skip:($os.IsMonterey) {
|
||||
Describe "Apache Ant" {
|
||||
It "Apache Ant" {
|
||||
"ant -version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
@@ -111,12 +105,6 @@ Describe "bazel" {
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Julia" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "Julia" {
|
||||
"julia --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "jq" {
|
||||
It "jq" {
|
||||
"jq --version" | Should -ReturnZeroExitCode
|
||||
@@ -135,31 +123,13 @@ Describe "wget" {
|
||||
}
|
||||
}
|
||||
|
||||
Describe "vagrant" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "vagrant" {
|
||||
"vagrant --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "virtualbox" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "virtualbox" {
|
||||
"vboxmanage -v" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "R" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "R" {
|
||||
"R --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Homebrew" {
|
||||
It "Homebrew" {
|
||||
"brew --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Kotlin" -Skip:($os.IsMonterey) {
|
||||
Describe "Kotlin" {
|
||||
$kotlinPackages = @("kapt", "kotlin", "kotlinc", "kotlinc-jvm", "kotlinc-js")
|
||||
|
||||
It "<toolName> is available" -TestCases ($kotlinPackages | ForEach-Object { @{ toolName = $_ } }) {
|
||||
@@ -173,12 +143,6 @@ Describe "yq" {
|
||||
}
|
||||
}
|
||||
|
||||
Describe "imagemagick" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "imagemagick" {
|
||||
"magick -version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "pkgconf" {
|
||||
It "pkgconf" {
|
||||
"pkgconf --version" | Should -ReturnZeroExitCode
|
||||
|
||||
@@ -58,77 +58,18 @@ Describe "AzCopy" {
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Miniconda" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "Conda" {
|
||||
[System.Environment]::GetEnvironmentVariable("CONDA") | Should -Not -BeNullOrEmpty
|
||||
$condaBinPath = Join-Path $env:CONDA "bin" "conda"
|
||||
"$condaBinPath --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Stack" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "Stack" {
|
||||
"stack --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "CocoaPods" {
|
||||
It "CocoaPods" {
|
||||
"pod --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "VSMac" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
$vsMacVersions = (Get-ToolsetContent).xamarin.vsmac.versions
|
||||
$defaultVSMacVersion = (Get-ToolsetContent).xamarin.vsmac.default
|
||||
|
||||
$testCases = $vsMacVersions | ForEach-Object {
|
||||
$vsPath = "/Applications/Visual Studio $_.app"
|
||||
if ($_ -eq $defaultVSMacVersion) {
|
||||
$vsPath = "/Applications/Visual Studio.app"
|
||||
}
|
||||
|
||||
@{ vsversion = $_ ; vspath = $vsPath }
|
||||
}
|
||||
|
||||
It "Visual Studio <vsversion> for Mac is installed" -TestCases $testCases {
|
||||
$vstoolPath = Join-Path $vsPath "Contents/MacOS/vstool"
|
||||
$vsPath | Should -Exist
|
||||
$vstoolPath | Should -Exist
|
||||
}
|
||||
|
||||
It "Visual Studio $defaultVSMacVersion for Mac is default" {
|
||||
$vsPath = "/Applications/Visual Studio.app"
|
||||
$vstoolPath = Join-Path $vsPath "Contents/MacOS/vstool"
|
||||
$vsPath | Should -Exist
|
||||
$vstoolPath | Should -Exist
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Swig" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "Swig" {
|
||||
"swig -version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Bicep" {
|
||||
It "Bicep" {
|
||||
"bicep --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Go" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "Go" {
|
||||
"go version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "VirtualBox" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "Check kext kernel modules" {
|
||||
kextstat | Out-String | Should -Match "org.virtualbox.kext"
|
||||
}
|
||||
}
|
||||
|
||||
Describe "CodeQL Bundle" {
|
||||
It "Is installed" {
|
||||
$CodeQLVersionWildcard = Join-Path $Env:AGENT_TOOLSDIRECTORY -ChildPath "CodeQL" | Join-Path -ChildPath "*"
|
||||
@@ -141,28 +82,6 @@ Describe "CodeQL Bundle" {
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Colima" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "Colima" {
|
||||
"colima version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Compiled" -Skip:(-not $os.IsMonterey) {
|
||||
It "Apache Ant" {
|
||||
"ant -version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
|
||||
$kotlinPackages = @("kapt", "kotlin", "kotlinc", "kotlinc-jvm", "kotlin-dce-js")
|
||||
|
||||
It "<toolName> is available" -TestCases ($kotlinPackages | ForEach-Object { @{ toolName = $_ } }) {
|
||||
"$toolName -version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
|
||||
It "sbt" {
|
||||
"sbt -version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Unxip" {
|
||||
It "Unxip" {
|
||||
"unxip --version" | Should -ReturnZeroExitCode
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
|
||||
|
||||
$os = Get-OSVersion
|
||||
|
||||
Describe "Haskell" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
Context "GHCup" {
|
||||
It "GHCup" {
|
||||
"ghcup --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
Context "GHC" {
|
||||
It "GHC" {
|
||||
"ghc --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
Context "Cabal" {
|
||||
It "Cabal" {
|
||||
"cabal --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
Context "Stack" {
|
||||
It "Stack" {
|
||||
"stack --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
|
||||
It "Stack hook is not installed" {
|
||||
"$HOME/.stack/hooks/ghc-install.sh" | Should -Not -Exist
|
||||
}
|
||||
}
|
||||
}
|
||||
74
images/macos/scripts/tests/Mono.Tests.ps1
Normal file
74
images/macos/scripts/tests/Mono.Tests.ps1
Normal file
@@ -0,0 +1,74 @@
|
||||
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
|
||||
Import-Module "$PSScriptRoot/Helpers.psm1" -DisableNameChecking
|
||||
|
||||
$os = Get-OSVersion
|
||||
|
||||
BeforeAll {
|
||||
function Get-ShortSymlink {
|
||||
param (
|
||||
[string] $Version
|
||||
)
|
||||
|
||||
$versionParts = $Version.Split(".")
|
||||
return [String]::Join(".", $versionParts[0..1])
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Mono" -Skip:($os.IsSequoia) {
|
||||
$MONO_VERSIONS_PATH = "/Library/Frameworks/Mono.framework/Versions"
|
||||
$monoToolsetVersion = @((Get-ToolsetContent).mono.framework.version)
|
||||
$versionFolderPath = Join-Path $MONO_VERSIONS_PATH ([System.Version]::Parse($monoToolsetVersion).ToString(3))
|
||||
$testCase = @{ MonoVersion = $monoToolsetVersion; VersionFolderPath = $versionFolderPath; MonoVersionsPath = $MONO_VERSIONS_PATH }
|
||||
|
||||
It "is installed" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$monoBinPath = Join-Path $VersionFolderPath "bin" "mono"
|
||||
$VersionFolderPath | Should -Exist
|
||||
$monoBinPath | Should -Exist
|
||||
}
|
||||
|
||||
It "is available via short link" -TestCases $testCase {
|
||||
param (
|
||||
[string] $MonoVersion,
|
||||
[string] $MonoVersionsPath,
|
||||
[string] $VersionFolderPath
|
||||
)
|
||||
|
||||
$shortSymlink = Get-ShortSymlink $MonoVersion # only 'major.minor'
|
||||
$shortSymlinkFolderPath = Join-Path $MonoVersionsPath $shortSymlink
|
||||
if ($shortSymlink -eq "4.8") { return } # Skip this test for Mono 4.8 because it doesn't contain VERSION file
|
||||
$shortVersionPath = Join-Path $shortSymlinkFolderPath "VERSION"
|
||||
$fullVersionPath = Join-Path $VersionFolderPath "VERSION"
|
||||
Confirm-IdenticalFileContent -File1 $shortVersionPath -File2 $fullVersionPath
|
||||
}
|
||||
|
||||
It "NUnit console is installed" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$nunitPath = Join-Path $VersionFolderPath "Commands" "nunit3-console"
|
||||
$nunitPath | Should -Exist
|
||||
}
|
||||
|
||||
It "Nuget is installed" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$nugetBinaryPath = Join-Path $VersionFolderPath "lib" "mono" "nuget" "nuget.exe"
|
||||
$nugetBinaryWrapperPath = Join-Path $VersionFolderPath "bin" "nuget"
|
||||
$nugetCommandPath = Join-Path $VersionFolderPath "Commands" "nuget"
|
||||
$nugetBinaryPath | Should -Exist
|
||||
$nugetCommandPath | Should -Exist
|
||||
$nugetBinaryWrapperPath | Should -Exist
|
||||
}
|
||||
|
||||
It "Nuget is valid" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$nugetBinaryWrapperPath = Join-Path $VersionFolderPath "bin" "nuget"
|
||||
"$nugetBinaryWrapperPath" | Should -ReturnZeroExitCode
|
||||
}
|
||||
|
||||
It "MSBuild is available" {
|
||||
"msbuild -version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
|
||||
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
|
||||
|
||||
$os = Get-OSVersion
|
||||
|
||||
Describe "PipxPackages" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
$pipxToolset = (Get-ToolsetContent).pipx
|
||||
$testCases = $pipxToolset | ForEach-Object { @{package = $_.package; cmd = $_.cmd} }
|
||||
It "<package>" -TestCases $testCases {
|
||||
"$cmd" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
@@ -6,11 +6,6 @@ function Get-ShortVersion([System.Version] $Version) {
|
||||
return [System.Version]::Parse($Version).ToString(2)
|
||||
}
|
||||
|
||||
function Invoke-BashUtilsFunction([string] $FunctionName, [string]$parameter) {
|
||||
$xamarinUtilsPath = "$PSScriptRoot/../provision/utils/xamarin-utils.sh"
|
||||
return Invoke-Expression "bash -c `"source $xamarinUtilsPath && $FunctionName $parameter`""
|
||||
}
|
||||
|
||||
Describe "Toolset JSON validation" {
|
||||
$toolsets | ForEach-Object {
|
||||
It "$($_.Name) is valid" {
|
||||
@@ -33,109 +28,5 @@ $toolsets | ForEach-Object {
|
||||
$toolset.xcode.versions | Should -Contain $toolset.xcode.default
|
||||
}
|
||||
}
|
||||
|
||||
Context "VSMac" {
|
||||
$vsmacVersion = $toolset.xamarin.vsmac
|
||||
|
||||
It "Version '$vsmacVersion' is available and can be downloaded" {
|
||||
$vsmacUrl = Invoke-BashUtilsFunction("buildVSMacDownloadUrl", $vsmacVersion)
|
||||
Confirm-UrlAvailability $vsmacUrl
|
||||
}
|
||||
}
|
||||
|
||||
Context "Mono" {
|
||||
$sdkVersions = $toolset.xamarin.mono_versions
|
||||
|
||||
$sdkVersions | ForEach-Object {
|
||||
It "Version '$_' is available and can be downloaded" {
|
||||
$sdkUrl = Invoke-BashUtilsFunction("buildMonoDownloadUrl", $_)
|
||||
Confirm-UrlAvailability $sdkUrl
|
||||
}
|
||||
}
|
||||
|
||||
It "Version list doesn't contain versions with the same major/minor version" {
|
||||
$versions = $sdkVersions | ForEach-Object { Get-ShortVersion $_ }
|
||||
Confirm-ArrayWithoutDuplicates $versions -Because "It doesn't allow to install more than one version with the same major/minor"
|
||||
}
|
||||
}
|
||||
|
||||
Context "Xamarin.iOS" {
|
||||
$sdkVersions = $toolset.xamarin.ios_versions
|
||||
|
||||
$sdkVersions | ForEach-Object {
|
||||
It "Version '$_' is available and can be downloaded" {
|
||||
$sdkUrl = Invoke-BashUtilsFunction("buildXamariniIOSDownloadUrl", $_)
|
||||
Confirm-UrlAvailability $sdkUrl
|
||||
}
|
||||
}
|
||||
|
||||
It "Version list doesn't contain versions with the same major/minor version" {
|
||||
$versions = $sdkVersions | ForEach-Object { Get-ShortVersion $_ }
|
||||
Confirm-ArrayWithoutDuplicates $versions -Because "It doesn't allow to install more than one version with the same major/minor"
|
||||
}
|
||||
}
|
||||
|
||||
Context "Xamarin.Mac" {
|
||||
$sdkVersions = $toolset.xamarin.mac_versions
|
||||
|
||||
$sdkVersions | ForEach-Object {
|
||||
It "Version '$_' is available and can be downloaded" {
|
||||
$sdkUrl = Invoke-BashUtilsFunction("buildXamarinMacDownloadUrl", $_)
|
||||
Confirm-UrlAvailability $sdkUrl
|
||||
}
|
||||
}
|
||||
|
||||
It "Version list doesn't contain versions with the same major/minor version" {
|
||||
$versions = $sdkVersions | ForEach-Object { Get-ShortVersion $_ }
|
||||
Confirm-ArrayWithoutDuplicates $versions -Because "It doesn't allow to install more than one version with the same major/minor"
|
||||
}
|
||||
}
|
||||
|
||||
Context "Xamarin.Android" {
|
||||
$sdkVersions = $toolset.xamarin.android_versions
|
||||
|
||||
$sdkVersions | ForEach-Object {
|
||||
It "Version '$_' is available and can be downloaded" {
|
||||
$sdkUrl = Invoke-BashUtilsFunction("buildXamarinAndroidDownloadUrl", $_)
|
||||
Confirm-UrlAvailability $sdkUrl
|
||||
}
|
||||
}
|
||||
|
||||
It "Version list doesn't contain versions with the same major/minor version" {
|
||||
$versions = $sdkVersions | ForEach-Object { $_.Replace("-", ".") } | ForEach-Object { Get-ShortVersion $_ }
|
||||
Confirm-ArrayWithoutDuplicates $versions -Because "It doesn't allow to install more than one version with the same major/minor"
|
||||
}
|
||||
}
|
||||
|
||||
Context "Xamarin bundles" {
|
||||
$monoVersions = $toolset.xamarin.mono_versions | ForEach-Object { Get-ShortVersion $_ }
|
||||
$iOSVersions = $toolset.xamarin.ios_versions | ForEach-Object { Get-ShortVersion $_ }
|
||||
$macVersions = $toolset.xamarin.mac_versions | ForEach-Object { Get-ShortVersion $_ }
|
||||
# Old Xamarin.Android version looks like "9.0.0-18" that doesn't support by System.Version
|
||||
$androidVersions = $toolset.xamarin.android_versions | ForEach-Object { Get-ShortVersion $_.Replace("-", ".") }
|
||||
$bundles = $toolset.xamarin.bundles
|
||||
|
||||
$bundles | ForEach-Object {
|
||||
It "'$($_.symlink)' is valid" {
|
||||
$monoVersions | Should -Contain $_.mono
|
||||
$iOSVersions | Should -Contain $_.ios
|
||||
$macVersions | Should -Contain $_.mac
|
||||
$androidVersions | Should -Contain $_.android
|
||||
}
|
||||
}
|
||||
|
||||
It "Each bundle has unique symlink" {
|
||||
$symlinks = $bundles | ForEach-Object { $_.symlink }
|
||||
Confirm-ArrayWithoutDuplicates $symlinks -Because "Bundle symlinks should be unique"
|
||||
}
|
||||
|
||||
It "Current bundle is valid" {
|
||||
$currentBundleSymlink = $toolset.xamarin.bundle_default
|
||||
if ($currentBundleSymlink -ne "latest") {
|
||||
$bundleSymlinks = $bundles | ForEach-Object { $_.symlink }
|
||||
$bundleSymlinks | Should -Contain $currentBundleSymlink -Because "Current bundle should be installed"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
|
||||
|
||||
$os = Get-OSVersion
|
||||
|
||||
Describe "Apache" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "Apache CLI" {
|
||||
"httpd -v" | Should -ReturnZeroExitCode
|
||||
}
|
||||
|
||||
It "Apache Service" {
|
||||
$service = brew services list --json | ConvertFrom-Json | Where-Object { $_.name -eq "httpd" }
|
||||
$service.status | Should -Match "(stopped|none)"
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Nginx" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "Nginx CLI" {
|
||||
"nginx -v" | Should -ReturnZeroExitCode
|
||||
}
|
||||
|
||||
It "Nginx Service" {
|
||||
$service = brew services list --json | ConvertFrom-Json | Where-Object { $_.name -eq "nginx" }
|
||||
$service.status | Should -Match "(stopped|none)"
|
||||
}
|
||||
}
|
||||
@@ -1,317 +0,0 @@
|
||||
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
|
||||
Import-Module "$PSScriptRoot/Helpers.psm1" -DisableNameChecking
|
||||
|
||||
$os = Get-OSVersion
|
||||
|
||||
if ($os.IsVentura -or $os.IsSonoma) {
|
||||
$MONO_VERSIONS = @((Get-ToolsetContent).mono.framework.version)
|
||||
$XAMARIN_IOS_VERSIONS = @()
|
||||
$XAMARIN_MAC_VERSIONS = @()
|
||||
$XAMARIN_ANDROID_VERSIONS = @()
|
||||
} elseif ($os.IsMonterey) {
|
||||
$MONO_VERSIONS = (Get-ToolsetContent).xamarin.mono_versions
|
||||
$XAMARIN_IOS_VERSIONS = (Get-ToolsetContent).xamarin.ios_versions
|
||||
$XAMARIN_MAC_VERSIONS = (Get-ToolsetContent).xamarin.mac_versions
|
||||
$XAMARIN_ANDROID_VERSIONS = (Get-ToolsetContent).xamarin.android_versions
|
||||
} elseif ($os.IsSequoia) {
|
||||
Write-Host "Skipping all the Mono and Xamarin tests as deprecated"
|
||||
# Dummy workaround for the issue with the tests discovery
|
||||
$MONO_VERSIONS = @()
|
||||
$XAMARIN_IOS_VERSIONS = @()
|
||||
$XAMARIN_MAC_VERSIONS = @()
|
||||
$XAMARIN_ANDROID_VERSIONS = @()
|
||||
}
|
||||
|
||||
BeforeAll {
|
||||
function Get-ShortSymlink {
|
||||
param (
|
||||
[string] $Version
|
||||
)
|
||||
|
||||
$versionParts = $Version.Split(".")
|
||||
return [String]::Join(".", $versionParts[0..1])
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Mono" -Skip:($os.IsSequoia) {
|
||||
$MONO_VERSIONS | ForEach-Object {
|
||||
Context "$_" {
|
||||
$MONO_VERSIONS_PATH = "/Library/Frameworks/Mono.framework/Versions"
|
||||
$versionFolderPath = Join-Path $MONO_VERSIONS_PATH ([System.Version]::Parse($_).ToString(3))
|
||||
$testCase = @{ MonoVersion = $_; VersionFolderPath = $versionFolderPath; MonoVersionsPath = $MONO_VERSIONS_PATH }
|
||||
|
||||
It "is installed" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$monoBinPath = Join-Path $VersionFolderPath "bin" "mono"
|
||||
$VersionFolderPath | Should -Exist
|
||||
$monoBinPath | Should -Exist
|
||||
}
|
||||
|
||||
It "is available via short link" -TestCases $testCase {
|
||||
param (
|
||||
[string] $MonoVersion,
|
||||
[string] $MonoVersionsPath,
|
||||
[string] $VersionFolderPath
|
||||
)
|
||||
|
||||
$shortSymlink = Get-ShortSymlink $MonoVersion # only 'major.minor'
|
||||
$shortSymlinkFolderPath = Join-Path $MonoVersionsPath $shortSymlink
|
||||
if ($shortSymlink -eq "4.8") { return } # Skip this test for Mono 4.8 because it doesn't contain VERSION file
|
||||
$shortVersionPath = Join-Path $shortSymlinkFolderPath "VERSION"
|
||||
$fullVersionPath = Join-Path $VersionFolderPath "VERSION"
|
||||
|
||||
Confirm-IdenticalFileContent -File1 $shortVersionPath -File2 $fullVersionPath
|
||||
}
|
||||
|
||||
It "NUnit console is installed" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$nunitPath = Join-Path $VersionFolderPath "Commands" "nunit3-console"
|
||||
$nunitPath | Should -Exist
|
||||
}
|
||||
|
||||
It "Nuget is installed" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$nugetBinaryPath = Join-Path $VersionFolderPath "lib" "mono" "nuget" "nuget.exe"
|
||||
$nugetBinaryWrapperPath = Join-Path $VersionFolderPath "bin" "nuget"
|
||||
$nugetCommandPath = Join-Path $VersionFolderPath "Commands" "nuget"
|
||||
|
||||
$nugetBinaryPath | Should -Exist
|
||||
$nugetCommandPath | Should -Exist
|
||||
$nugetBinaryWrapperPath | Should -Exist
|
||||
}
|
||||
|
||||
It "Nuget is valid" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$nugetBinaryWrapperPath = Join-Path $VersionFolderPath "bin" "nuget"
|
||||
"$nugetBinaryWrapperPath" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
It "MSBuild is available" {
|
||||
"msbuild -version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Xamarin.iOS" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
$XAMARIN_IOS_VERSIONS | ForEach-Object {
|
||||
Context "$_" {
|
||||
$XAMARIN_IOS_VERSIONS_PATH = "/Library/Frameworks/Xamarin.iOS.framework/Versions"
|
||||
$versionFolderPath = Join-Path $XAMARIN_IOS_VERSIONS_PATH $_
|
||||
$testCase = @{ XamarinIosVersion = $_; VersionFolderPath = $versionFolderPath; IosVersionsPath = $XAMARIN_IOS_VERSIONS_PATH }
|
||||
|
||||
It "is installed" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$xamarinBinPath = Join-Path $VersionFolderPath "bin"
|
||||
$VersionFolderPath | Should -Exist
|
||||
$xamarinBinPath | Should -Exist
|
||||
}
|
||||
|
||||
It "is available via short link" -TestCases $testCase {
|
||||
param (
|
||||
[string] $XamarinIosVersion,
|
||||
[string] $IosVersionsPath,
|
||||
[string] $VersionFolderPath
|
||||
)
|
||||
|
||||
$shortSymlink = Get-ShortSymlink $XamarinIosVersion # only 'major.minor'
|
||||
$shortSymlinkFolderPath = Join-Path $IosVersionsPath $shortSymlink
|
||||
$shortVersionPath = Join-Path $shortSymlinkFolderPath "VERSION"
|
||||
$fullVersionPath = Join-Path $VersionFolderPath "VERSION"
|
||||
|
||||
Confirm-IdenticalFileContent -File1 $shortVersionPath -File2 $fullVersionPath
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Xamarin.Mac" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
$XAMARIN_MAC_VERSIONS | ForEach-Object {
|
||||
Context "$_" {
|
||||
$XAMARIN_MAC_VERSIONS_PATH = "/Library/Frameworks/Xamarin.Mac.framework/Versions"
|
||||
$versionFolderPath = Join-Path $XAMARIN_MAC_VERSIONS_PATH $_
|
||||
$testCase = @{ XamarinMacVersion = $_; VersionFolderPath = $versionFolderPath; MacVersionsPath = $XAMARIN_MAC_VERSIONS_PATH }
|
||||
|
||||
It "is installed" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$xamarinBinPath = Join-Path $VersionFolderPath "bin"
|
||||
$VersionFolderPath | Should -Exist
|
||||
$xamarinBinPath | Should -Exist
|
||||
}
|
||||
|
||||
It "is available via short link" -TestCases $testCase {
|
||||
param (
|
||||
[string] $XamarinMacVersion,
|
||||
[string] $MacVersionsPath,
|
||||
[string] $VersionFolderPath
|
||||
)
|
||||
|
||||
$shortSymlink = Get-ShortSymlink $XamarinMacVersion # only 'major.minor'
|
||||
$shortSymlinkFolderPath = Join-Path $MacVersionsPath $shortSymlink
|
||||
$shortVersionPath = Join-Path $shortSymlinkFolderPath "VERSION"
|
||||
$fullVersionPath = Join-Path $VersionFolderPath "VERSION"
|
||||
|
||||
Confirm-IdenticalFileContent -File1 $shortVersionPath -File2 $fullVersionPath
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Xamarin.Android" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
$XAMARIN_ANDROID_VERSIONS | ForEach-Object {
|
||||
Context "$_" {
|
||||
$XAMARIN_ANDROID_VERSIONS_PATH = "/Library/Frameworks/Xamarin.Android.framework/Versions"
|
||||
$versionFolderPath = Join-Path $XAMARIN_ANDROID_VERSIONS_PATH $_
|
||||
$testCase = @{ XamarinAndroidVersion = $_; VersionFolderPath = $versionFolderPath; AndroidVersionsPath = $XAMARIN_ANDROID_VERSIONS_PATH }
|
||||
|
||||
It "is installed" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$xamarinLibPath = Join-Path $VersionFolderPath "lib"
|
||||
$xamarinLibPath | Should -Exist
|
||||
}
|
||||
|
||||
It "is available via short link" -TestCases $testCase {
|
||||
param (
|
||||
[string] $XamarinAndroidVersion,
|
||||
[string] $AndroidVersionsPath,
|
||||
[string] $VersionFolderPath
|
||||
)
|
||||
|
||||
$shortSymlink = Get-ShortSymlink $XamarinAndroidVersion # only 'major.minor'
|
||||
$shortSymlinkFolderPath = Join-Path $AndroidVersionsPath $shortSymlink
|
||||
$shortVersionPath = Join-Path $shortSymlinkFolderPath "VERSION"
|
||||
$fullVersionPath = Join-Path $VersionFolderPath "VERSION"
|
||||
|
||||
Confirm-IdenticalFileContent -File1 $shortVersionPath -File2 $fullVersionPath
|
||||
}
|
||||
|
||||
It "has correct symlinks" -TestCases $testCase {
|
||||
param ( [string] $VersionFolderPath )
|
||||
|
||||
$xamarinLibPath = Join-Path $VersionFolderPath "lib"
|
||||
Join-Path $xamarinLibPath "xbuild" | Should -Exist
|
||||
Join-Path $xamarinLibPath "xbuild-frameworks" | Should -Exist
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Xamarin Bundles" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
BeforeAll {
|
||||
$MONO_VERSIONS_PATH = "/Library/Frameworks/Mono.framework/Versions"
|
||||
$XAMARIN_IOS_VERSIONS_PATH = "/Library/Frameworks/Xamarin.iOS.framework/Versions"
|
||||
$XAMARIN_MAC_VERSIONS_PATH = "/Library/Frameworks/Xamarin.Mac.framework/Versions"
|
||||
$XAMARIN_ANDROID_VERSIONS_PATH = "/Library/Frameworks/Xamarin.Android.framework/Versions"
|
||||
}
|
||||
|
||||
If ($XAMARIN_BUNDLES.Count -eq 0) { return } # Skip this test if there are no bundles
|
||||
|
||||
[array]$XAMARIN_BUNDLES = (Get-ToolsetContent).xamarin.bundles
|
||||
$XAMARIN_DEFAULT_BUNDLE = (Get-ToolsetContent).xamarin.bundle_default
|
||||
If ($XAMARIN_DEFAULT_BUNDLE -eq "latest") { $XAMARIN_DEFAULT_BUNDLE = $XAMARIN_BUNDLES[0].symlink }
|
||||
|
||||
$currentBundle = [PSCustomObject] @{
|
||||
symlink = "Current"
|
||||
mono = $XAMARIN_DEFAULT_BUNDLE
|
||||
ios = $XAMARIN_DEFAULT_BUNDLE
|
||||
mac = $XAMARIN_DEFAULT_BUNDLE
|
||||
android = $XAMARIN_DEFAULT_BUNDLE
|
||||
}
|
||||
|
||||
$latestBundle = [PSCustomObject] @{
|
||||
symlink = "Latest"
|
||||
mono = $XAMARIN_BUNDLES[0].mono
|
||||
ios = $XAMARIN_BUNDLES[0].ios
|
||||
mac = $XAMARIN_BUNDLES[0].mac
|
||||
android = $XAMARIN_BUNDLES[0].android
|
||||
}
|
||||
|
||||
$bundles = $XAMARIN_BUNDLES + $currentBundle + $latestBundle
|
||||
$allBundles = $bundles | ForEach-Object { @{BundleSymlink = $_.symlink; BundleMono = $_.mono; BundleIos = $_.ios; BundleMac = $_.mac; BundleAndroid = $_.android } }
|
||||
|
||||
It "Mono symlink <BundleSymlink> exists" -TestCases $allBundles {
|
||||
param ( [string] $BundleSymlink )
|
||||
|
||||
(Join-Path $MONO_VERSIONS_PATH $BundleSymlink) | Should -Exist
|
||||
}
|
||||
|
||||
It "Mono symlink <BundleSymlink> points to the correct version" -TestCases $allBundles {
|
||||
param (
|
||||
[string] $BundleSymlink,
|
||||
[string] $BundleMono
|
||||
)
|
||||
|
||||
if ($BundleMono -eq "4.8") { return } # Skip this test for Mono 4.8 because it doesn't contain VERSION file
|
||||
$sourceVersionPath = Join-Path $MONO_VERSIONS_PATH $BundleMono "VERSION"
|
||||
$targetVersionPath = Join-Path $MONO_VERSIONS_PATH $BundleSymlink "VERSION"
|
||||
|
||||
Confirm-IdenticalFileContent -File1 $targetVersionPath -File2 $sourceVersionPath
|
||||
}
|
||||
|
||||
It "iOS symlink <BundleSymlink> exists" -TestCases $allBundles {
|
||||
param ( [string] $BundleSymlink )
|
||||
|
||||
(Join-Path $XAMARIN_IOS_VERSIONS_PATH $BundleSymlink) | Should -Exist
|
||||
}
|
||||
|
||||
It "iOS symlink <BundleSymlink> points to the correct version" -TestCases $allBundles {
|
||||
param (
|
||||
[string] $BundleSymlink,
|
||||
[string] $BundleIos
|
||||
)
|
||||
|
||||
$sourceVersionPath = Join-Path $XAMARIN_IOS_VERSIONS_PATH $BundleIos "VERSION"
|
||||
$targetVersionPath = Join-Path $XAMARIN_IOS_VERSIONS_PATH $BundleSymlink "VERSION"
|
||||
|
||||
Confirm-IdenticalFileContent -File1 $targetVersionPath -File2 $sourceVersionPath
|
||||
}
|
||||
|
||||
It "Mac symlink <BundleSymlink> exists" -TestCases $allBundles {
|
||||
param ( [string] $BundleSymlink )
|
||||
|
||||
(Join-Path $XAMARIN_MAC_VERSIONS_PATH $BundleSymlink) | Should -Exist
|
||||
}
|
||||
|
||||
It "Mac symlink <BundleSymlink> points to the correct version" -TestCases $allBundles {
|
||||
param (
|
||||
[string] $BundleSymlink,
|
||||
[string] $BundleMac
|
||||
)
|
||||
|
||||
$sourceVersionPath = Join-Path $XAMARIN_MAC_VERSIONS_PATH $BundleMac "VERSION"
|
||||
$targetVersionPath = Join-Path $XAMARIN_MAC_VERSIONS_PATH $BundleSymlink "VERSION"
|
||||
|
||||
Confirm-IdenticalFileContent -File1 $targetVersionPath -File2 $sourceVersionPath
|
||||
}
|
||||
|
||||
It "Xamarin.Android symlink <BundleSymlink> exists" -TestCases $allBundles {
|
||||
param ( [string] $BundleSymlink )
|
||||
|
||||
(Join-Path $XAMARIN_ANDROID_VERSIONS_PATH $BundleSymlink) | Should -Exist
|
||||
}
|
||||
|
||||
It "Android symlink <BundleSymlink> points to the correct version" -TestCases $allBundles {
|
||||
param (
|
||||
[string] $BundleSymlink,
|
||||
[string] $BundleAndroid
|
||||
)
|
||||
|
||||
$sourceVersionPath = Join-Path $XAMARIN_ANDROID_VERSIONS_PATH $BundleAndroid "VERSION"
|
||||
$targetVersionPath = Join-Path $XAMARIN_ANDROID_VERSIONS_PATH $BundleSymlink "VERSION"
|
||||
|
||||
Confirm-IdenticalFileContent -File1 $targetVersionPath -File2 $sourceVersionPath
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Nuget" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsSequoia) {
|
||||
It "Nuget config contains nuget.org feed" {
|
||||
Get-Content $env:HOME/.config/NuGet/NuGet.Config | Out-String | Should -Match "nuget.org"
|
||||
}
|
||||
}
|
||||
@@ -122,20 +122,3 @@ Describe "Xcode simulators" {
|
||||
Switch-Xcode -Version $defaultXcode
|
||||
}
|
||||
}
|
||||
|
||||
Describe "Xcode Simulators Naming" -Skip:(-not $os.IsMonterey) {
|
||||
$testCases = Get-BrokenXcodeSimulatorsList
|
||||
It "Simulator '<SimulatorName> [<RuntimeId>]'" -TestCases $testCases {
|
||||
$simctlPath = Get-XcodeToolPath -Version $XcodeVersion -ToolName "simctl"
|
||||
[string]$rawDevicesInfo = Invoke-Expression "$simctlPath list devices --json"
|
||||
$jsonDevicesInfo = ($rawDevicesInfo | ConvertFrom-Json).devices
|
||||
|
||||
$foundSimulators = $jsonDevicesInfo.$RuntimeId | Where-Object { $_.deviceTypeIdentifier -eq $DeviceId }
|
||||
$foundSimulators | Should -HaveCount 1
|
||||
$foundSimulators[0].name | Should -Be $SimulatorName
|
||||
|
||||
$foundSimulators = $jsonDevicesInfo.$RuntimeId | Where-Object { $_.name -eq $SimulatorName }
|
||||
$foundSimulators | Should -HaveCount 1
|
||||
$foundSimulators[0].deviceTypeIdentifier | Should -Be $DeviceId
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,315 +0,0 @@
|
||||
packer {
|
||||
required_plugins {
|
||||
veertu-anka = {
|
||||
version = ">= v3.2.0"
|
||||
source = "github.com/veertuinc/veertu-anka"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
locals {
|
||||
image_folder = "/Users/${var.vm_username}/image-generation"
|
||||
}
|
||||
|
||||
variable "builder_type" {
|
||||
type = string
|
||||
default = "veertu-anka-vm-clone"
|
||||
validation {
|
||||
condition = contains(["veertu-anka-vm-clone", "null"], var.builder_type)
|
||||
error_message = "The builder_type value must be one of [veertu-anka-vm-clone, null]."
|
||||
}
|
||||
}
|
||||
|
||||
variable "source_vm_name" {
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "source_vm_port" {
|
||||
type = number
|
||||
default = 22
|
||||
}
|
||||
|
||||
variable "source_vm_tag" {
|
||||
type = string
|
||||
default = ""
|
||||
}
|
||||
|
||||
variable "socks_proxy" {
|
||||
type = string
|
||||
default = ""
|
||||
}
|
||||
|
||||
variable "build_id" {
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "vm_username" {
|
||||
type = string
|
||||
sensitive = true
|
||||
}
|
||||
|
||||
variable "vm_password" {
|
||||
type = string
|
||||
sensitive = true
|
||||
}
|
||||
|
||||
variable "github_api_pat" {
|
||||
type = string
|
||||
sensitive = true
|
||||
default = ""
|
||||
}
|
||||
|
||||
variable "xcode_install_storage_url" {
|
||||
type = string
|
||||
sensitive = true
|
||||
}
|
||||
|
||||
variable "xcode_install_sas" {
|
||||
type = string
|
||||
sensitive = true
|
||||
}
|
||||
|
||||
variable "vcpu_count" {
|
||||
type = string
|
||||
default = "6"
|
||||
}
|
||||
|
||||
variable "ram_size" {
|
||||
type = string
|
||||
default = "24G"
|
||||
}
|
||||
|
||||
variable "image_os" {
|
||||
type = string
|
||||
default = "macos12"
|
||||
}
|
||||
|
||||
source "veertu-anka-vm-clone" "template" {
|
||||
vm_name = "${var.build_id}"
|
||||
source_vm_name = "${var.source_vm_name}"
|
||||
source_vm_tag = "${var.source_vm_tag}"
|
||||
vcpu_count = "${var.vcpu_count}"
|
||||
ram_size = "${var.ram_size}"
|
||||
stop_vm = "true"
|
||||
}
|
||||
|
||||
source "null" "template" {
|
||||
ssh_host = "${var.source_vm_name}"
|
||||
ssh_port = "${var.source_vm_port}"
|
||||
ssh_username = "${var.vm_username}"
|
||||
ssh_password = "${var.vm_password}"
|
||||
ssh_proxy_host = "${var.socks_proxy}"
|
||||
}
|
||||
|
||||
build {
|
||||
sources = ["source.${var.builder_type}.template"]
|
||||
|
||||
provisioner "shell" {
|
||||
inline = ["mkdir ${local.image_folder}"]
|
||||
}
|
||||
|
||||
provisioner "file" {
|
||||
destination = "${local.image_folder}/"
|
||||
sources = [
|
||||
"${path.root}/../assets/xamarin-selector",
|
||||
"${path.root}/../scripts/tests",
|
||||
"${path.root}/../scripts/docs-gen",
|
||||
"${path.root}/../scripts/helpers"
|
||||
]
|
||||
}
|
||||
|
||||
provisioner "file" {
|
||||
destination = "${local.image_folder}/docs-gen/"
|
||||
source = "${path.root}/../../../helpers/software-report-base"
|
||||
}
|
||||
|
||||
provisioner "file" {
|
||||
destination = "${local.image_folder}/add-certificate.swift"
|
||||
source = "${path.root}/../assets/add-certificate.swift"
|
||||
}
|
||||
|
||||
provisioner "file" {
|
||||
destination = ".bashrc"
|
||||
source = "${path.root}/../assets/bashrc"
|
||||
}
|
||||
|
||||
provisioner "file" {
|
||||
destination = ".bash_profile"
|
||||
source = "${path.root}/../assets/bashprofile"
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
inline = [ "mkdir ~/bootstrap" ]
|
||||
}
|
||||
|
||||
provisioner "file" {
|
||||
destination = "bootstrap"
|
||||
source = "${path.root}/../assets/bootstrap-provisioner/"
|
||||
}
|
||||
|
||||
provisioner "file" {
|
||||
destination = "${local.image_folder}/toolset.json"
|
||||
source = "${path.root}/../toolsets/toolset-12.json"
|
||||
}
|
||||
provisioner "shell" {
|
||||
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
inline = [
|
||||
"mv ${local.image_folder}/docs-gen ${local.image_folder}/software-report",
|
||||
"mv ${local.image_folder}/xamarin-selector ${local.image_folder}/assets",
|
||||
"mkdir ~/utils",
|
||||
"mv ${local.image_folder}/helpers/confirm-identified-developers.scpt ~/utils",
|
||||
"mv ${local.image_folder}/helpers/invoke-tests.sh ~/utils",
|
||||
"mv ${local.image_folder}/helpers/utils.sh ~/utils",
|
||||
"mv ${local.image_folder}/helpers/xamarin-utils.sh ~/utils"
|
||||
]
|
||||
}
|
||||
provisioner "shell" {
|
||||
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; {{ .Vars }} {{ .Path }}"
|
||||
scripts = [
|
||||
"${path.root}/../scripts/build/install-xcode-clt.sh",
|
||||
"${path.root}/../scripts/build/install-homebrew.sh"
|
||||
]
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
environment_vars = ["PASSWORD=${var.vm_password}", "USERNAME=${var.vm_username}"]
|
||||
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; sudo {{ .Vars }} {{ .Path }}"
|
||||
scripts = [
|
||||
"${path.root}/../scripts/build/configure-tccdb-macos.sh",
|
||||
"${path.root}/../scripts/build/configure-network-interface-detection.sh",
|
||||
"${path.root}/../scripts/build/configure-autologin.sh",
|
||||
"${path.root}/../scripts/build/configure-auto-updates.sh",
|
||||
"${path.root}/../scripts/build/configure-screensaver.sh",
|
||||
"${path.root}/../scripts/build/configure-ntpconf.sh",
|
||||
"${path.root}/../scripts/build/configure-max-files-limitation.sh",
|
||||
"${path.root}/../scripts/build/configure-shell.sh"
|
||||
]
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
environment_vars = ["IMAGE_VERSION=${var.build_id}", "IMAGE_OS=${var.image_os}", "PASSWORD=${var.vm_password}"]
|
||||
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; {{ .Vars }} {{ .Path }}"
|
||||
scripts = [
|
||||
"${path.root}/../scripts/build/configure-preimagedata.sh",
|
||||
"${path.root}/../scripts/build/configure-ssh.sh",
|
||||
"${path.root}/../scripts/build/configure-machine.sh"
|
||||
]
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
execute_command = "source $HOME/.bash_profile; sudo {{ .Vars }} {{ .Path }}"
|
||||
expect_disconnect = true
|
||||
inline = ["echo 'Reboot VM'", "shutdown -r now"]
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
environment_vars = ["API_PAT=${var.github_api_pat}", "USER_PASSWORD=${var.vm_password}", "IMAGE_FOLDER=${local.image_folder}"]
|
||||
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; {{ .Vars }} {{ .Path }}"
|
||||
pause_before = "30s"
|
||||
scripts = [
|
||||
"${path.root}/../scripts/build/configure-windows.sh",
|
||||
"${path.root}/../scripts/build/install-powershell.sh",
|
||||
"${path.root}/../scripts/build/install-dotnet.sh",
|
||||
"${path.root}/../scripts/build/install-python.sh",
|
||||
"${path.root}/../scripts/build/install-azcopy.sh",
|
||||
"${path.root}/../scripts/build/install-openssl.sh",
|
||||
"${path.root}/../scripts/build/install-ruby.sh",
|
||||
"${path.root}/../scripts/build/install-rubygems.sh",
|
||||
"${path.root}/../scripts/build/install-git.sh",
|
||||
"${path.root}/../scripts/build/install-mongodb.sh",
|
||||
"${path.root}/../scripts/build/install-node.sh",
|
||||
"${path.root}/../scripts/build/install-common-utils.sh"
|
||||
]
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
environment_vars = ["XCODE_INSTALL_STORAGE_URL=${var.xcode_install_storage_url}", "XCODE_INSTALL_SAS=${var.xcode_install_sas}", "IMAGE_FOLDER=${local.image_folder}"]
|
||||
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; {{ .Vars }} pwsh -f {{ .Path }}"
|
||||
script = "${path.root}/../scripts/build/Install-Xcode.ps1"
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
execute_command = "source $HOME/.bash_profile; sudo {{ .Vars }} {{ .Path }}"
|
||||
expect_disconnect = true
|
||||
inline = ["echo 'Reboot VM'", "shutdown -r now"]
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
environment_vars = ["API_PAT=${var.github_api_pat}", "IMAGE_FOLDER=${local.image_folder}"]
|
||||
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; {{ .Vars }} {{ .Path }}"
|
||||
scripts = [
|
||||
"${path.root}/../scripts/build/install-actions-cache.sh",
|
||||
"${path.root}/../scripts/build/install-llvm.sh",
|
||||
"${path.root}/../scripts/build/install-golang.sh",
|
||||
"${path.root}/../scripts/build/install-swiftlint.sh",
|
||||
"${path.root}/../scripts/build/install-openjdk.sh",
|
||||
"${path.root}/../scripts/build/install-php.sh",
|
||||
"${path.root}/../scripts/build/install-aws-tools.sh",
|
||||
"${path.root}/../scripts/build/install-rust.sh",
|
||||
"${path.root}/../scripts/build/install-gcc.sh",
|
||||
"${path.root}/../scripts/build/install-haskell.sh",
|
||||
"${path.root}/../scripts/build/install-cocoapods.sh",
|
||||
"${path.root}/../scripts/build/install-android-sdk.sh",
|
||||
"${path.root}/../scripts/build/install-xamarin.sh",
|
||||
"${path.root}/../scripts/build/install-visualstudio.sh",
|
||||
"${path.root}/../scripts/build/install-nvm.sh",
|
||||
"${path.root}/../scripts/build/install-apache.sh",
|
||||
"${path.root}/../scripts/build/install-nginx.sh",
|
||||
"${path.root}/../scripts/build/install-postgresql.sh",
|
||||
"${path.root}/../scripts/build/install-audiodevice.sh",
|
||||
"${path.root}/../scripts/build/install-vcpkg.sh",
|
||||
"${path.root}/../scripts/build/install-miniconda.sh",
|
||||
"${path.root}/../scripts/build/install-safari.sh",
|
||||
"${path.root}/../scripts/build/install-chrome.sh",
|
||||
"${path.root}/../scripts/build/install-edge.sh",
|
||||
"${path.root}/../scripts/build/install-firefox.sh",
|
||||
"${path.root}/../scripts/build/install-pypy.sh",
|
||||
"${path.root}/../scripts/build/install-pipx-packages.sh",
|
||||
"${path.root}/../scripts/build/install-bicep.sh",
|
||||
"${path.root}/../scripts/build/install-codeql-bundle.sh",
|
||||
"${path.root}/../scripts/build/install-compilable-brew-packages.sh"
|
||||
]
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
environment_vars = ["IMAGE_FOLDER=${local.image_folder}"]
|
||||
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; {{ .Vars }} pwsh -f {{ .Path }}"
|
||||
scripts = [
|
||||
"${path.root}/../scripts/build/Install-Toolset.ps1",
|
||||
"${path.root}/../scripts/build/Configure-Toolset.ps1"
|
||||
]
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
execute_command = "source $HOME/.bash_profile; ruby {{ .Path }}"
|
||||
script = "${path.root}/../scripts/build/configure-xcode-simulators.rb"
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
execute_command = "chmod +x {{ .Path }}; {{ .Vars }} pwsh -f {{ .Path }}"
|
||||
script = "${path.root}/../scripts/build/Update-XcodeSimulators.ps1"
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
environment_vars = ["IMAGE_FOLDER=${local.image_folder}"]
|
||||
execute_command = "source $HOME/.bash_profile; {{ .Vars }} {{ .Path }}"
|
||||
inline = [
|
||||
"pwsh -File \"${local.image_folder}/software-report/Generate-SoftwareReport.ps1\" -OutputDirectory \"${local.image_folder}/output/software-report\" -ImageName ${var.build_id}",
|
||||
"pwsh -File \"${local.image_folder}/tests/RunAll-Tests.ps1\""
|
||||
]
|
||||
}
|
||||
|
||||
provisioner "file" {
|
||||
destination = "${path.root}/../../image-output/"
|
||||
direction = "download"
|
||||
source = "${local.image_folder}/output/"
|
||||
}
|
||||
|
||||
provisioner "shell" {
|
||||
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; {{ .Vars }} {{ .Path }}"
|
||||
scripts = [
|
||||
"${path.root}/../scripts/build/configure-hostname.sh",
|
||||
"${path.root}/../scripts/build/configure-system.sh"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -111,7 +111,6 @@ build {
|
||||
provisioner "file" {
|
||||
destination = "${local.image_folder}/"
|
||||
sources = [
|
||||
"${path.root}/../assets/xamarin-selector",
|
||||
"${path.root}/../scripts/tests",
|
||||
"${path.root}/../scripts/docs-gen",
|
||||
"${path.root}/../scripts/helpers"
|
||||
@@ -156,12 +155,10 @@ build {
|
||||
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
inline = [
|
||||
"mv ${local.image_folder}/docs-gen ${local.image_folder}/software-report",
|
||||
"mv ${local.image_folder}/xamarin-selector ${local.image_folder}/assets",
|
||||
"mkdir ~/utils",
|
||||
"mv ${local.image_folder}/helpers/confirm-identified-developers-macos13.scpt ~/utils",
|
||||
"mv ${local.image_folder}/helpers/invoke-tests.sh ~/utils",
|
||||
"mv ${local.image_folder}/helpers/utils.sh ~/utils",
|
||||
"mv ${local.image_folder}/helpers/xamarin-utils.sh ~/utils"
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@@ -112,7 +112,6 @@ build {
|
||||
provisioner "file" {
|
||||
destination = "${local.image_folder}/"
|
||||
sources = [
|
||||
"${path.root}/../assets/xamarin-selector",
|
||||
"${path.root}/../scripts/tests",
|
||||
"${path.root}/../scripts/docs-gen",
|
||||
"${path.root}/../scripts/helpers"
|
||||
@@ -157,12 +156,9 @@ build {
|
||||
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
inline = [
|
||||
"mv ${local.image_folder}/docs-gen ${local.image_folder}/software-report",
|
||||
"mv ${local.image_folder}/xamarin-selector ${local.image_folder}/assets",
|
||||
"mkdir ~/utils",
|
||||
"mv ${local.image_folder}/helpers/confirm-identified-developers.scpt ~/utils",
|
||||
"mv ${local.image_folder}/helpers/invoke-tests.sh ~/utils",
|
||||
"mv ${local.image_folder}/helpers/utils.sh ~/utils",
|
||||
"mv ${local.image_folder}/helpers/xamarin-utils.sh ~/utils"
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@@ -111,7 +111,6 @@ build {
|
||||
provisioner "file" {
|
||||
destination = "${local.image_folder}/"
|
||||
sources = [
|
||||
"${path.root}/../assets/xamarin-selector",
|
||||
"${path.root}/../scripts/tests",
|
||||
"${path.root}/../scripts/docs-gen",
|
||||
"${path.root}/../scripts/helpers"
|
||||
@@ -156,12 +155,10 @@ build {
|
||||
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
inline = [
|
||||
"mv ${local.image_folder}/docs-gen ${local.image_folder}/software-report",
|
||||
"mv ${local.image_folder}/xamarin-selector ${local.image_folder}/assets",
|
||||
"mkdir ~/utils",
|
||||
"mv ${local.image_folder}/helpers/confirm-identified-developers-macos14.scpt ~/utils",
|
||||
"mv ${local.image_folder}/helpers/invoke-tests.sh ~/utils",
|
||||
"mv ${local.image_folder}/helpers/utils.sh ~/utils",
|
||||
"mv ${local.image_folder}/helpers/xamarin-utils.sh ~/utils"
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@@ -112,7 +112,6 @@ build {
|
||||
provisioner "file" {
|
||||
destination = "${local.image_folder}/"
|
||||
sources = [
|
||||
"${path.root}/../assets/xamarin-selector",
|
||||
"${path.root}/../scripts/tests",
|
||||
"${path.root}/../scripts/docs-gen",
|
||||
"${path.root}/../scripts/helpers"
|
||||
@@ -157,12 +156,9 @@ build {
|
||||
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
inline = [
|
||||
"mv ${local.image_folder}/docs-gen ${local.image_folder}/software-report",
|
||||
"mv ${local.image_folder}/xamarin-selector ${local.image_folder}/assets",
|
||||
"mkdir ~/utils",
|
||||
"mv ${local.image_folder}/helpers/confirm-identified-developers.scpt ~/utils",
|
||||
"mv ${local.image_folder}/helpers/invoke-tests.sh ~/utils",
|
||||
"mv ${local.image_folder}/helpers/utils.sh ~/utils",
|
||||
"mv ${local.image_folder}/helpers/xamarin-utils.sh ~/utils"
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@@ -6,19 +6,19 @@
|
||||
- `link` property points to the place where Xcode will be located on image. `/Applications/Xcode_<link>.app`
|
||||
- `version` points to Xcode version that will be downloaded and installed
|
||||
- `symlinks` describes the list of aliases where symlinks will be created to
|
||||
- `install_runtimes` is boolean function to control over the related simulator runtimes
|
||||
- `install_runtimes` is an array or boolean function to control over the related simulator runtimes, set of possible values: [ `iOS`, `watchOS`, `visionOS`, `tvOS` ], use `true` if you want to install all runtimes, use `false` if you want to skip runtimes installation
|
||||
- `sha256` used to check integrity of the Xcode installer file
|
||||
- `default` - version of Xcode to set as default (should be metched with any `link` in `versions` property)
|
||||
**Example:** `"11.2"`
|
||||
|
||||
**Note:**
|
||||
|
||||
- If `version` is specified with spaces, it is considered as exact Xcode name like `12.1.1 Release Candidate`.
|
||||
- If `version` doesn't contain spaces, the latest version will be resolved with the following priority:
|
||||
- stable version like `12.1`
|
||||
- release candidate version like `12.1 Release Candidate N` (the latest N will be chosen)
|
||||
- GM version like `12.1 GM Seed N` (the latest N will be chosen)
|
||||
- beta version like `12.1 beta N` (the latest N will be chosen)
|
||||
- `version` is specified with `+` or `-`, exact Xcode name should be like `16.2.0-Beta.3+16C5023f` or `16.2_Release_Candidate+16C5031c` and will be matching `.xip` file name.
|
||||
- `link` is specified with `_` and doesn't contain spaces, example: `16.2_Release_Candidate` or `16.1`; pattern description:
|
||||
- DOWNLOAD_URL="https://download.developer.apple.com/Developer_Tools/$SOURCE_FILE_LOCATION/$SOURCE_FILE_NAME.$FILE_EXTENSION"
|
||||
- SOURCE_FILE_NAME: "Xcode_$link"
|
||||
- SOURCE_FILE_LOCATION: "Xcode_$link"
|
||||
- FILE_EXTENSION: xip
|
||||
|
||||
**Example:**
|
||||
|
||||
@@ -29,62 +29,6 @@
|
||||
]
|
||||
```
|
||||
|
||||
## Xamarin
|
||||
|
||||
- `vsmac` - version of Visual Studio For Mac to install.
|
||||
**Example:** `"8.3.11.1"`
|
||||
|
||||
- `mono_versions` - the array of Mono versions to install.
|
||||
**Example:** `[ "6.4.0.208", "6.0.0.334" ]`
|
||||
|
||||
- `ios_versions` - the array of Xamarin iOS versions to install.
|
||||
**Example:** `[ "13.6.0.12", "13.4.0.2", "13.2.0.47" ]`
|
||||
|
||||
- `mac_versions` - the array of Xamarin iOS versions to install.
|
||||
**Example:** `[ "6.6.0.12", "6.4.0.2", "6.2.0.47" ]`
|
||||
|
||||
- `android_versions` - the array of Xamarin iOS versions to install.
|
||||
**Example:** `[ "10.0.6.2", "9.4.1.0" ]`
|
||||
|
||||
**Note:** More than one version of SDK with the same major.minor version should not be installed. It applies to `mono_versions`, `ios_versions`, `mac_versions`, `android_versions` fields.
|
||||
For example, if Mono `6.4.0.100` is installed and Mono `6.4.1.2` was released recently, we should not install both, just update `6.4.0.100` -> `6.4.1.2`. Only major and minor version changes can break backward compatibility so it is safe.
|
||||
|
||||
- `bundle_default` - the symlink of the bundle that will be set as default on the image.
|
||||
This bundle will be set as `Current`.
|
||||
**Example:** `"5_12_0"` (set bundle with symlink `5_12_0` as default)
|
||||
**Example:** `"latest"` (set latest bundle as default)
|
||||
|
||||
- `bundles` - the array of objects that describe bundles that will be created on image after sdk installation.
|
||||
The first bundle in the list will be as `Latest`.
|
||||
|
||||
Each object should contain the following fields:
|
||||
- `symlink` - unique id of the bundle (usually looks like "<major_mono_version>_<minor_mono_version>_<index>")
|
||||
- `mono` - version of Mono that will be set in this bundle. Only two numbers (`major.minor`) should be specified.
|
||||
- `ios` - version of Xamarin.iOS that will be set in this bundle. Only two numbers (`major.minor`) should be specified.
|
||||
- `mac` - version of Xamarin.Mac that will be set in this bundle. Only two numbers (`major.minor`) should be specified.
|
||||
- `android` - version of Xamarin.Android that will be set in this bundle. Only two numbers (`major.minor`) should be specified.
|
||||
|
||||
**Example:**
|
||||
|
||||
```json
|
||||
[
|
||||
{
|
||||
"symlink": "6_4_2",
|
||||
"mono": "6.4",
|
||||
"ios": "13.6",
|
||||
"mac": "6.6",
|
||||
"android": "10.0"
|
||||
},
|
||||
{
|
||||
"symlink": "6_4_1",
|
||||
"mono": "6.4",
|
||||
"ios": "13.4",
|
||||
"mac": "6.4",
|
||||
"android": "10.0"
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
## Android
|
||||
|
||||
- `platform-list` - the array of android platforms to install.
|
||||
@@ -96,7 +40,7 @@ The first bundle in the list will be as `Latest`.
|
||||
- `extras` - the array of android extra items to install.
|
||||
**Example:** `[ "google;google_play_services", "intel;Hardware_Accelerated_Execution_Manager" ]`
|
||||
|
||||
- `addons` - the array of android addons to install.
|
||||
- `addons` - the array of android add-ons to install.
|
||||
**Example:** `[ "addon-google_apis-google-24", "addon-google_apis-google-23" ]`
|
||||
|
||||
## Toolset JSON validation
|
||||
|
||||
@@ -1,368 +0,0 @@
|
||||
{
|
||||
"xcode": {
|
||||
"default": "14.2",
|
||||
"x64": {
|
||||
"versions": [
|
||||
{ "link": "14.2", "version": "14.2.0+14C18", "install_runtimes": "true", "sha256": "686B9D53CA49E50D563BC0104B1E8B4F7CCFE80064A6D689965FB819BF8EFE72" },
|
||||
{ "link": "14.1", "version": "14.1.0+14B47b", "install_runtimes": "true", "sha256": "12F8A3AEF78BF354470AD8B351ADDD925C8EDAD888137D138CA50A8130EB9F2F" },
|
||||
{ "link": "14.0.1", "version": "14.0.1+14A400", "symlinks": ["14.0"], "install_runtimes": "true", "sha256": "EDB4DDCE02F92338E3D10B011FC86CD26520E3238585F06F3C182880DDD3B2AF" },
|
||||
{ "link": "13.4.1", "version": "13.4.1+13F100", "symlinks": ["13.4"], "sha256": "A1E0DBD6D5A96C4A6D3D63600B58486759AA836C2D9F7E8FA6D7DA4C7399638B" },
|
||||
{ "link": "13.3.1", "version": "13.3.1+13E500a", "symlinks": ["13.3"], "sha256": "D10B4644DB84BA43F7B18CE94FB3CA1ACD255D39781F4AF8FC88BD8581E08F97" },
|
||||
{ "link": "13.2.1", "version": "13.2.1+13C100", "symlinks": ["13.2"], "sha256": "D3BFCC6225D531587490C0DFC0926C80B7D50D17671DC8F25868F965F5D65F9D" },
|
||||
{ "link": "13.1", "version": "13.1.0+13A1030d", "sha256": "4EFDEEA0EEEDA1957BB394128CCCD1DAAC3CB0A3D074224E0FAB90855CCA09C4" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"xamarin": {
|
||||
"vsmac": {
|
||||
"default": "2022",
|
||||
"versions": [ "2019", "2022" ]
|
||||
},
|
||||
"mono_versions": [
|
||||
"6.12.0.188"
|
||||
],
|
||||
"ios_versions": [
|
||||
"16.4.0.23", "16.2.0.5", "16.1.1.27", "16.0.0.72", "15.12.0.2", "15.10.0.5", "15.8.0.3", "15.6.0.3", "15.4.0.0", "15.2.0.17", "15.0.0.6"
|
||||
],
|
||||
"mac_versions": [
|
||||
"9.3.0.23", "9.1.0.5", "9.0.0.27", "8.12.0.2", "8.10.0.5", "8.8.0.3", "8.6.0.3", "8.4.0.0", "8.2.0.17", "7.14.0.27"
|
||||
],
|
||||
"android_versions": [
|
||||
"13.2.2.0", "13.1.0.1", "13.0.0.0", "12.3.3.3", "12.2.8.3", "12.1.0.2", "12.0.0.3", "11.3.0.4"
|
||||
],
|
||||
"bundle_default": "6_12_21",
|
||||
"bundles": [
|
||||
{
|
||||
"symlink": "6_12_25",
|
||||
"mono":"6.12",
|
||||
"ios": "16.4",
|
||||
"mac": "9.3",
|
||||
"android": "13.2"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_24",
|
||||
"mono":"6.12",
|
||||
"ios": "16.2",
|
||||
"mac": "9.1",
|
||||
"android": "13.2"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_23",
|
||||
"mono":"6.12",
|
||||
"ios": "16.2",
|
||||
"mac": "9.1",
|
||||
"android": "13.1"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_22",
|
||||
"mono":"6.12",
|
||||
"ios": "16.1",
|
||||
"mac": "9.0",
|
||||
"android": "13.1"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_21",
|
||||
"mono":"6.12",
|
||||
"ios": "16.0",
|
||||
"mac": "8.12",
|
||||
"android": "13.1"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_20",
|
||||
"mono":"6.12",
|
||||
"ios": "16.0",
|
||||
"mac": "8.12",
|
||||
"android": "13.0"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_19",
|
||||
"mono":"6.12",
|
||||
"ios": "15.12",
|
||||
"mac": "8.12",
|
||||
"android": "13.0"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_18",
|
||||
"mono":"6.12",
|
||||
"ios": "15.10",
|
||||
"mac": "8.10",
|
||||
"android": "12.3"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_17",
|
||||
"mono":"6.12",
|
||||
"ios": "15.10",
|
||||
"mac": "8.10",
|
||||
"android": "12.2"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_16",
|
||||
"mono":"6.12",
|
||||
"ios": "15.8",
|
||||
"mac": "8.8",
|
||||
"android": "12.2"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_15",
|
||||
"mono":"6.12",
|
||||
"ios": "15.8",
|
||||
"mac": "8.8",
|
||||
"android": "12.1"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_14",
|
||||
"mono":"6.12",
|
||||
"ios": "15.8",
|
||||
"mac": "8.8",
|
||||
"android": "12.0"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_13",
|
||||
"mono":"6.12",
|
||||
"ios": "15.6",
|
||||
"mac": "8.6",
|
||||
"android": "12.0"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_12",
|
||||
"mono":"6.12",
|
||||
"ios": "15.4",
|
||||
"mac": "8.4",
|
||||
"android": "12.0"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_11",
|
||||
"mono":"6.12",
|
||||
"ios": "15.2",
|
||||
"mac": "8.2",
|
||||
"android": "12.0"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_10",
|
||||
"mono":"6.12",
|
||||
"ios": "15.0",
|
||||
"mac": "7.14",
|
||||
"android": "11.3"
|
||||
}
|
||||
]
|
||||
},
|
||||
"java": {
|
||||
"x64": {
|
||||
"default": "8",
|
||||
"versions": [ "8", "11", "17", "21"]
|
||||
}
|
||||
},
|
||||
"android": {
|
||||
"cmdline-tools": "commandlinetools-mac-9123335_latest.zip",
|
||||
"platform_min_version": "31",
|
||||
"build_tools_min_version": "31.0.0",
|
||||
"extras": [
|
||||
"android;m2repository", "google;m2repository", "google;google_play_services"
|
||||
],
|
||||
"addons": [],
|
||||
"additional_tools": [
|
||||
"cmake;3.18.1",
|
||||
"cmake;3.22.1"
|
||||
],
|
||||
"ndk": {
|
||||
"default": "25",
|
||||
"versions": [
|
||||
"24", "25", "26", "27"
|
||||
]
|
||||
}
|
||||
},
|
||||
"powershellModules": [
|
||||
{ "name": "Az" },
|
||||
{ "name": "MarkdownPS" },
|
||||
{ "name": "Pester" },
|
||||
{ "name": "PSScriptAnalyzer" }
|
||||
],
|
||||
"npm": {
|
||||
"global_packages": [
|
||||
{ "name": "appcenter-cli", "test": "appcenter --version" }
|
||||
]
|
||||
},
|
||||
"brew": {
|
||||
"common_packages": [
|
||||
"aria2",
|
||||
"azure-cli",
|
||||
"bazelisk",
|
||||
"carthage",
|
||||
"cmake",
|
||||
"colima",
|
||||
"gh",
|
||||
"gnupg",
|
||||
"gnu-tar",
|
||||
"libpq",
|
||||
"p7zip",
|
||||
"packer",
|
||||
"perl",
|
||||
"pkg-config",
|
||||
"subversion",
|
||||
"swiftformat",
|
||||
"swig",
|
||||
"zstd",
|
||||
"gmp",
|
||||
"zlib",
|
||||
"libxext",
|
||||
"libxft",
|
||||
"tcl-tk",
|
||||
"r",
|
||||
"yq",
|
||||
"imagemagick",
|
||||
"unxip",
|
||||
"xcbeautify",
|
||||
"xcodes"
|
||||
],
|
||||
"cask_packages": [
|
||||
"julia",
|
||||
"vagrant",
|
||||
"virtualbox",
|
||||
"parallels"
|
||||
],
|
||||
"compilable_packages": [
|
||||
"ant",
|
||||
"kotlin",
|
||||
"sbt"
|
||||
]
|
||||
},
|
||||
"gcc": {
|
||||
"versions": [
|
||||
"12",
|
||||
"13",
|
||||
"14"
|
||||
]
|
||||
},
|
||||
"toolcache": [
|
||||
{
|
||||
"name": "Python",
|
||||
"url" : "https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json",
|
||||
"platform" : "darwin",
|
||||
"arch": {
|
||||
"x64": {
|
||||
"versions": [
|
||||
"3.7.*",
|
||||
"3.8.*",
|
||||
"3.9.*",
|
||||
"3.10.*",
|
||||
"3.11.*",
|
||||
"3.12.*"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "PyPy",
|
||||
"platform" : "darwin",
|
||||
"arch": {
|
||||
"x64": {
|
||||
"versions": [
|
||||
"2.7",
|
||||
"3.7",
|
||||
"3.8",
|
||||
"3.9",
|
||||
"3.10"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Node",
|
||||
"url" : "https://raw.githubusercontent.com/actions/node-versions/main/versions-manifest.json",
|
||||
"platform" : "darwin",
|
||||
"arch": {
|
||||
"x64": {
|
||||
"versions": [
|
||||
"16.*",
|
||||
"18.*",
|
||||
"20.*"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Go",
|
||||
"url" : "https://raw.githubusercontent.com/actions/go-versions/main/versions-manifest.json",
|
||||
"platform" : "darwin",
|
||||
"arch": {
|
||||
"x64": {
|
||||
"variable_template" : "GOROOT_{0}_{1}_X64",
|
||||
"versions": [
|
||||
"1.20.*",
|
||||
"1.21.*",
|
||||
"1.22.*",
|
||||
"1.23.*"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Ruby",
|
||||
"arch": {
|
||||
"x64": {
|
||||
"versions": [
|
||||
"3.0.*",
|
||||
"3.1.*",
|
||||
"3.2.*",
|
||||
"3.3.*"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"pipx": [
|
||||
{
|
||||
"package": "yamllint",
|
||||
"cmd": "yamllint --version"
|
||||
}
|
||||
],
|
||||
"dotnet": {
|
||||
"arch":{
|
||||
"x64": {
|
||||
"versions": [
|
||||
"6.0",
|
||||
"7.0",
|
||||
"8.0"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"ruby": {
|
||||
"default": "3.0",
|
||||
"rubygems": [
|
||||
"xcode-install",
|
||||
"cocoapods",
|
||||
"xcpretty",
|
||||
"bundler",
|
||||
"fastlane",
|
||||
"jazzy"
|
||||
]
|
||||
},
|
||||
"go": {
|
||||
"default": "1.21"
|
||||
},
|
||||
"node": {
|
||||
"default": "18",
|
||||
"nvm_installer": "0.39.7",
|
||||
"nvm_versions": [
|
||||
"16",
|
||||
"18",
|
||||
"20"
|
||||
]
|
||||
},
|
||||
"llvm": {
|
||||
"version": "15"
|
||||
},
|
||||
"php": {
|
||||
"version": "8.3"
|
||||
},
|
||||
"mongodb": {
|
||||
"version": "5.0"
|
||||
},
|
||||
"postgresql": {
|
||||
"version": "14"
|
||||
},
|
||||
"pwsh": {
|
||||
"version": "7.4"
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,7 @@
|
||||
"x64": {
|
||||
"versions": [
|
||||
{ "link": "16.2", "version": "16.2+16C5032a", "install_runtimes": ["iOS", "watchOS", "tvOS"], "sha256": "0e367d06eb7c334ea143bada5e4422f56688aabff571bedf0d2ad9434b7290de"},
|
||||
{ "link": "16.1", "version": "16.1+16B40", "runtimes": ["iOS", "watchOS", "tvOS"], "sha256": "8ca961d55981f983d21b99a95a6b0ac04905b837f6e11346ee86d28f12afe720"},
|
||||
{ "link": "16.1", "version": "16.1+16B40", "install_runtimes": ["iOS", "watchOS", "tvOS"], "sha256": "8ca961d55981f983d21b99a95a6b0ac04905b837f6e11346ee86d28f12afe720"},
|
||||
{ "link": "15.4", "version": "15.4.0+15F31d", "install_runtimes": "true", "sha256": "82d3d61804ff3f4c7c82085e91dc701037ddaa770e542848b2477e22f4e8aa7a"},
|
||||
{ "link": "15.3", "version": "15.3.0+15E204a", "install_runtimes": "true", "sha256": "f13f6a2e2df432c3008e394640b8549a18c285acd7fd148d6c4bac8c3a5af234"},
|
||||
{ "link": "15.2", "version": "15.2.0+15C500b", "install_runtimes": "true", "sha256": "04E93680C6DDBEC84666531BE412DE778AFC8EAC6AB2037F4C2BE7290818B59B"},
|
||||
@@ -15,7 +15,7 @@
|
||||
"arm64":{
|
||||
"versions": [
|
||||
{ "link": "16.2", "version": "16.2+16C5032a", "install_runtimes": ["iOS", "watchOS", "tvOS"], "sha256": "0e367d06eb7c334ea143bada5e4422f56688aabff571bedf0d2ad9434b7290de"},
|
||||
{ "link": "16.1", "version": "16.1+16B40", "runtimes": ["iOS", "watchOS", "tvOS"], "sha256": "8ca961d55981f983d21b99a95a6b0ac04905b837f6e11346ee86d28f12afe720"},
|
||||
{ "link": "16.1", "version": "16.1+16B40", "install_runtimes": ["iOS", "watchOS", "tvOS"], "sha256": "8ca961d55981f983d21b99a95a6b0ac04905b837f6e11346ee86d28f12afe720"},
|
||||
{ "link": "15.4", "version": "15.4.0+15F31d", "install_runtimes": "true", "sha256": "82d3d61804ff3f4c7c82085e91dc701037ddaa770e542848b2477e22f4e8aa7a"},
|
||||
{ "link": "15.3", "version": "15.3.0+15E204a", "install_runtimes": "true", "sha256": "f13f6a2e2df432c3008e394640b8549a18c285acd7fd148d6c4bac8c3a5af234"},
|
||||
{ "link": "15.2", "version": "15.2.0+15C500b", "install_runtimes": "true", "sha256": "04E93680C6DDBEC84666531BE412DE778AFC8EAC6AB2037F4C2BE7290818B59B"},
|
||||
|
||||
@@ -1,13 +1,7 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[Windows & Ubuntu] Breaking change : Maven 3.8.* version will be updated to Maven 3.9.* from January 17,2025](https://github.com/actions/runner-images/issues/11093) |
|
||||
| [[Ubuntu] Breaking Change: runner user will have UID 1001 instead of 1000 for larger runners](https://github.com/actions/runner-images/issues/10936) |
|
||||
| [Ubuntu-latest workflows will use Ubuntu-24.04 image](https://github.com/actions/runner-images/issues/10636) |
|
||||
***
|
||||
# Ubuntu 20.04
|
||||
- OS Version: 20.04.6 LTS
|
||||
- Kernel Version: 5.15.0-1074-azure
|
||||
- Image Version: 20250105.1.0
|
||||
- Kernel Version: 5.15.0-1078-azure
|
||||
- Image Version: 20250126.1.0
|
||||
- Systemd version: 245.4-4ubuntu3.24
|
||||
|
||||
## Installed Software
|
||||
@@ -22,11 +16,11 @@
|
||||
- Erlang rebar3 3.24.0
|
||||
- GNU C++: 10.5.0
|
||||
- GNU Fortran: 10.5.0
|
||||
- Julia 1.11.2
|
||||
- Julia 1.11.3
|
||||
- Kotlin 2.1.0-release-394
|
||||
- Mono 6.12.0.200
|
||||
- MSBuild 16.10.1.31701 (Mono 6.12.0.200)
|
||||
- Node.js 18.20.5
|
||||
- Node.js 18.20.6
|
||||
- Perl 5.30.0
|
||||
- Python 3.8.10
|
||||
- Ruby 2.7.0p0
|
||||
@@ -34,8 +28,8 @@
|
||||
|
||||
### Package Management
|
||||
- cpan 1.64
|
||||
- Helm 3.16.4
|
||||
- Homebrew 4.4.14
|
||||
- Helm 3.17.0
|
||||
- Homebrew 4.4.17
|
||||
- Miniconda 24.11.1
|
||||
- Npm 10.8.2
|
||||
- NuGet 6.6.1.2
|
||||
@@ -43,7 +37,7 @@
|
||||
- Pip3 20.0.2
|
||||
- Pipx 1.7.1
|
||||
- RubyGems 3.1.2
|
||||
- Vcpkg (build from commit 65be70199)
|
||||
- Vcpkg (build from commit 57c08a322)
|
||||
- Yarn 1.22.22
|
||||
|
||||
#### Environment variables
|
||||
@@ -62,37 +56,37 @@ to accomplish this.
|
||||
|
||||
### Project Management
|
||||
- Ant 1.10.7
|
||||
- Gradle 8.12
|
||||
- Gradle 8.12.1
|
||||
- Lerna 8.1.9
|
||||
- Maven 3.8.8
|
||||
- Maven 3.9.9
|
||||
- Sbt 1.10.7
|
||||
|
||||
### Tools
|
||||
- Ansible 2.13.13
|
||||
- apt-fast 1.10.0
|
||||
- AzCopy 10.27.1 - available by `azcopy` and `azcopy10` aliases
|
||||
- Bazel 8.0.0
|
||||
- Bazel 8.0.1
|
||||
- Bazelisk 1.25.0
|
||||
- Bicep 0.32.4
|
||||
- Bicep 0.33.13
|
||||
- Buildah 1.22.3
|
||||
- CMake 3.31.3
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- CMake 3.31.5
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Docker Amazon ECR Credential Helper 0.9.0
|
||||
- Docker Compose v2 2.27.1
|
||||
- Docker-Buildx 0.19.3
|
||||
- Docker-Buildx 0.20.1
|
||||
- Docker Client 26.1.3
|
||||
- Docker Server 26.1.3
|
||||
- Fastlane 2.226.0
|
||||
- Git 2.47.1
|
||||
- Git LFS 3.6.0
|
||||
- Git 2.48.1
|
||||
- Git LFS 3.6.1
|
||||
- Git-ftp 1.6.0
|
||||
- Haveged 1.9.1
|
||||
- Heroku 10.0.0
|
||||
- Heroku 10.0.2
|
||||
- HHVM (HipHop VM) 4.172.1
|
||||
- jq 1.6
|
||||
- Kind 0.26.0
|
||||
- Kubectl 1.32.0
|
||||
- Kustomize 5.5.0
|
||||
- Kubectl 1.32.1
|
||||
- Kustomize 5.6.0
|
||||
- Leiningen 2.11.2
|
||||
- MediaInfo 19.09
|
||||
- Mercurial 5.3.1
|
||||
@@ -101,45 +95,45 @@ to accomplish this.
|
||||
- Newman 6.2.1
|
||||
- nvm 0.40.1
|
||||
- OpenSSL 1.1.1f-1ubuntu2.23
|
||||
- Packer 1.11.2
|
||||
- Packer 1.12.0
|
||||
- Parcel 2.13.3
|
||||
- PhantomJS 2.1.1 2.1.1
|
||||
- Podman 3.4.2
|
||||
- Pulumi 3.144.1
|
||||
- Pulumi 3.147.0
|
||||
- R 4.4.2
|
||||
- Skopeo 1.5.0
|
||||
- Sphinx Open Source Search Server 2.2.11
|
||||
- SVN 1.13.0
|
||||
- Terraform 1.10.3
|
||||
- Terraform 1.10.5
|
||||
- yamllint 1.35.1
|
||||
- yq 4.44.6
|
||||
- yq 4.45.1
|
||||
- zstd 1.5.6
|
||||
|
||||
### CLI Tools
|
||||
- Alibaba Cloud CLI 3.0.174
|
||||
- AWS CLI 2.22.28
|
||||
- AWS CLI 2.23.6
|
||||
- AWS CLI Session Manager Plugin 1.2.694.0
|
||||
- AWS SAM CLI 1.132.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure CLI (azure-devops) 1.0.1
|
||||
- GitHub CLI 2.64.0
|
||||
- Google Cloud CLI 504.0.1
|
||||
- Netlify CLI 17.38.1
|
||||
- GitHub CLI 2.65.0
|
||||
- Google Cloud CLI 507.0.0
|
||||
- Netlify CLI 18.0.2
|
||||
- OpenShift CLI 4.15.19
|
||||
- ORAS CLI 1.2.2
|
||||
- Vercel CLI 39.2.5
|
||||
- Vercel CLI 39.3.0
|
||||
|
||||
### Java
|
||||
| Version | Environment Variable |
|
||||
| ------------------- | -------------------- |
|
||||
| 8.0.432+6 | JAVA_HOME_8_X64 |
|
||||
| 11.0.25+9 (default) | JAVA_HOME_11_X64 |
|
||||
| 17.0.13+11 | JAVA_HOME_17_X64 |
|
||||
| 21.0.5+11 | JAVA_HOME_21_X64 |
|
||||
| 8.0.442+6 | JAVA_HOME_8_X64 |
|
||||
| 11.0.26+4 (default) | JAVA_HOME_11_X64 |
|
||||
| 17.0.14+7 | JAVA_HOME_17_X64 |
|
||||
| 21.0.6+7 | JAVA_HOME_21_X64 |
|
||||
|
||||
### PHP Tools
|
||||
- PHP: 7.4.33, 8.0.30, 8.1.31, 8.2.27, 8.3.15
|
||||
- Composer 2.8.4
|
||||
- PHP: 7.4.33, 8.0.30, 8.1.31, 8.2.27, 8.3.16
|
||||
- Composer 2.8.5
|
||||
- PHPUnit 8.5.41
|
||||
```
|
||||
Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
|
||||
@@ -152,27 +146,27 @@ Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
|
||||
- Stack 3.3.1
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- Bindgen 0.71.1
|
||||
- Cargo audit 0.21.0
|
||||
- Cargo clippy 0.1.83
|
||||
- Cargo audit 0.21.1
|
||||
- Cargo clippy 0.1.84
|
||||
- Cargo outdated 0.16.0
|
||||
- Cbindgen 0.27.0
|
||||
- Cbindgen 0.28.0
|
||||
- Rustfmt 1.8.0
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 131.0.6778.204
|
||||
- ChromeDriver 131.0.6778.204
|
||||
- Chromium 131.0.6778.0
|
||||
- Microsoft Edge 131.0.2903.112
|
||||
- Microsoft Edge WebDriver 131.0.2903.112
|
||||
- Selenium server 4.27.0
|
||||
- Mozilla Firefox 133.0.3
|
||||
- Google Chrome 132.0.6834.110
|
||||
- ChromeDriver 132.0.6834.110
|
||||
- Chromium 132.0.6834.0
|
||||
- Microsoft Edge 132.0.2957.127
|
||||
- Microsoft Edge WebDriver 132.0.2957.127
|
||||
- Selenium server 4.28.1
|
||||
- Mozilla Firefox 134.0.2
|
||||
- Geckodriver 0.35.0
|
||||
|
||||
#### Environment variables
|
||||
@@ -184,8 +178,8 @@ Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
|
||||
| SELENIUM_JAR_PATH | /usr/share/java/selenium-server.jar |
|
||||
|
||||
### .NET Tools
|
||||
- .NET Core SDK: 6.0.428, 7.0.410, 8.0.404
|
||||
- nbgv 3.7.112+63bbe780b0
|
||||
- .NET Core SDK: 6.0.428, 8.0.405, 9.0.102
|
||||
- nbgv 3.7.115+d31f50f4d1
|
||||
|
||||
### Databases
|
||||
- MongoDB 5.0.30
|
||||
@@ -216,13 +210,13 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
|
||||
#### Go
|
||||
- 1.21.13
|
||||
- 1.22.10
|
||||
- 1.23.4
|
||||
- 1.22.11
|
||||
- 1.23.5
|
||||
|
||||
#### Node.js
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 18.20.6
|
||||
- 20.18.2
|
||||
- 22.13.1
|
||||
|
||||
#### Python
|
||||
- 3.8.18
|
||||
@@ -230,6 +224,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
- 3.10.16
|
||||
- 3.11.11
|
||||
- 3.12.8
|
||||
- 3.13.1
|
||||
|
||||
#### PyPy
|
||||
- 2.7.18 [PyPy 7.3.17]
|
||||
@@ -243,15 +238,16 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
- 3.0.7
|
||||
- 3.1.6
|
||||
- 3.2.6
|
||||
- 3.3.7
|
||||
|
||||
### PowerShell Tools
|
||||
- PowerShell 7.4.6
|
||||
- PowerShell 7.4.7
|
||||
|
||||
#### PowerShell Modules
|
||||
- Az: 12.1.0
|
||||
- MarkdownPS: 1.10
|
||||
- Microsoft.Graph: 2.25.0
|
||||
- Pester: 5.6.1
|
||||
- Pester: 5.7.1
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
|
||||
### Web Servers
|
||||
@@ -265,7 +261,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 9.0 |
|
||||
| Android SDK Build-tools | 35.0.0<br>34.0.0<br>33.0.0 33.0.1 33.0.2 33.0.3<br>32.0.0<br>31.0.0 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1<br>34.0.0<br>33.0.0 33.0.1 33.0.2 33.0.3<br>32.0.0<br>31.0.0 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3)<br>android-32 (rev 1)<br>android-31 (rev 1) |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| CMake | 3.10.2<br>3.18.1<br>3.22.1 |
|
||||
@@ -288,18 +284,18 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| -------------------- | ------------------------------------------------------------------------ | ---------- |
|
||||
| alpine:3.16 | sha256:452e7292acee0ee16c332324d7de05fa2c99f9994ecc9f0779c602916a672ae4 | 2024-01-27 |
|
||||
| alpine:3.17 | sha256:8fc3dacfb6d69da8d44e42390de777e48577085db99aa4e4af35f483eb08b989 | 2024-09-06 |
|
||||
| alpine:3.18 | sha256:2995c82e8e723d9a5c8585cb8e901d1c50e3c2759031027d3bff577449435157 | 2024-09-06 |
|
||||
| alpine:3.19 | sha256:7a85bf5dc56c949be827f84f9185161265c58f589bb8b2a6b6bb6d3076c1be21 | 2024-09-06 |
|
||||
| alpine:3.18 | sha256:dd60c75fba961ecc5e918961c713f3c42dd5665171c58f9b2ef5aafe081ad5a0 | 2025-01-08 |
|
||||
| alpine:3.19 | sha256:6380aa6b04faa579332d4c9d1f65bd7093012ba6e01d9bbcd5e2d8a4f9fae38f | 2025-01-08 |
|
||||
| debian:10 | sha256:58ce6f1271ae1c8a2006ff7d3e54e9874d839f573d8009c20154ad0f2fb0a225 | 2024-06-13 |
|
||||
| debian:11 | sha256:21b74d95871e8676a0cf47df9caebb1021b2af60b9a6e4777ce92f92f98e3a90 | 2024-12-23 |
|
||||
| debian:11 | sha256:e5bfb7364038fd100c2faebdd674145bd1bc758a57f3c67023cced99d0eff0f7 | 2025-01-13 |
|
||||
| debian:9 | sha256:c5c5200ff1e9c73ffbf188b4a67eb1c91531b644856b4aefe86a58d2f0cb05be | 2022-06-23 |
|
||||
| moby/buildkit:latest | sha256:86c0ad9d1137c186e9d455912167df20e530bdf7f7c19de802e892bb8ca16552 | 2024-12-16 |
|
||||
| node:18 | sha256:7f31a1eb14c61719b8bb0eaa029310cc33851f71d3578cc422b390f8096977c5 | 2024-11-15 |
|
||||
| node:18-alpine | sha256:6eb9c3d9bd191bd2cc6ce7ec3d5ec4c2127616140c8586af96a6bec8f28689d1 | 2024-12-05 |
|
||||
| node:20 | sha256:d17aaa2a2fd82e09bd6a6da7cc4a79741340d2a3e39d172d1b30f295b1a850ff | 2024-11-20 |
|
||||
| node:20-alpine | sha256:426f843809ae05f324883afceebaa2b9cab9cb697097dbb1a2a7a41c5701de72 | 2024-12-05 |
|
||||
| node:22 | sha256:0e910f435308c36ea60b4cfd7b80208044d77a074d16b768a81901ce938a62dc | 2024-12-03 |
|
||||
| node:22-alpine | sha256:6e80991f69cc7722c561e5d14d5e72ab47c0d6b6cfb3ae50fb9cf9a7b30fdf97 | 2024-12-05 |
|
||||
| moby/buildkit:latest | sha256:14aa1b4dd92ea0a4cd03a54d0c6079046ea98cd0c0ae6176bdd7036ba370cbbe | 2025-01-20 |
|
||||
| node:18 | sha256:720eeea325b3da50e108ba34dde0fd69feeb3c59485199c5e22b0ea49a792aa5 | 2025-01-22 |
|
||||
| node:18-alpine | sha256:974afb6cbc0314dc6502b14243b8a39fbb2d04d975e9059dd066be3e274fbb25 | 2025-01-22 |
|
||||
| node:20 | sha256:bc3d86568d9a9e062cdf7036367f6e2ce201925e2912758bcd3b0e2657875a63 | 2025-01-22 |
|
||||
| node:20-alpine | sha256:2cd2a6f4cb37cf8a007d5f1e9aef090ade6b62974c7a274098c390599e8c72b4 | 2025-01-22 |
|
||||
| node:22 | sha256:ae2f3d4cc65d251352eca01ba668824f651a2ee4d2a37e2efb22649521a483fd | 2025-01-22 |
|
||||
| node:22-alpine | sha256:e2b39f7b64281324929257d0f8004fb6cb4bf0fdfb9aa8cedb235a766aec31da | 2025-01-22 |
|
||||
| ubuntu:20.04 | sha256:8e5c4f0285ecbb4ead070431d29b576a530d3166df73ec44affc1cd27555141b | 2024-10-11 |
|
||||
|
||||
### Installed apt packages
|
||||
@@ -316,7 +312,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| coreutils | 8.30-3ubuntu2 |
|
||||
| curl | 7.68.0-1ubuntu2.25 |
|
||||
| dbus | 1.12.16-2ubuntu2.3 |
|
||||
| dnsutils | 1:9.18.28-0ubuntu0.20.04.1 |
|
||||
| dnsutils | 1:9.18.30-0ubuntu0.20.04.1 |
|
||||
| dpkg | 1.19.7ubuntu3.2 |
|
||||
| dpkg-dev | 1.19.7ubuntu3.2 |
|
||||
| fakeroot | 1.24-1 |
|
||||
@@ -370,7 +366,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| pollinate | 4.33-3ubuntu1.20.04.1 |
|
||||
| python-is-python3 | 3.8.2-4 |
|
||||
| rpm | 4.14.2.1+dfsg1-1build2 |
|
||||
| rsync | 3.1.3-8ubuntu0.7 |
|
||||
| rsync | 3.1.3-8ubuntu0.9 |
|
||||
| shellcheck | 0.7.0-2build2 |
|
||||
| sphinxsearch | 2.2.11-2ubuntu2 |
|
||||
| sqlite3 | 3.31.1-4ubuntu0.6 |
|
||||
@@ -394,4 +390,3 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| xz-utils | 5.2.4-1ubuntu1.1 |
|
||||
| zip | 3.0-11build1 |
|
||||
| zsync | 0.6.2-3ubuntu1 |
|
||||
|
||||
|
||||
@@ -1,13 +1,7 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[Windows & Ubuntu] Breaking change : Maven 3.8.* version will be updated to Maven 3.9.* from January 10,2025](https://github.com/actions/runner-images/issues/11093) |
|
||||
| [[Ubuntu] Breaking Change: runner user will have UID 1001 instead of 1000 for larger runners](https://github.com/actions/runner-images/issues/10936) |
|
||||
| [Ubuntu-latest workflows will use Ubuntu-24.04 image](https://github.com/actions/runner-images/issues/10636) |
|
||||
***
|
||||
# Ubuntu 22.04
|
||||
- OS Version: 22.04.5 LTS
|
||||
- Kernel Version: 6.5.0-1025-azure
|
||||
- Image Version: 20250105.1.0
|
||||
- Image Version: 20250126.1.0
|
||||
- Systemd version: 249.11-0ubuntu3.12
|
||||
|
||||
## Installed Software
|
||||
@@ -20,11 +14,11 @@
|
||||
- Dash 0.5.11+git20210903+057cd650a4ed-3build1
|
||||
- GNU C++: 10.5.0, 11.4.0, 12.3.0
|
||||
- GNU Fortran: 10.5.0, 11.4.0, 12.3.0
|
||||
- Julia 1.11.2
|
||||
- Julia 1.11.3
|
||||
- Kotlin 2.1.0-release-394
|
||||
- Mono 6.12.0.200
|
||||
- MSBuild 16.10.1.31701 (Mono 6.12.0.200)
|
||||
- Node.js 18.20.5
|
||||
- Node.js 18.20.6
|
||||
- Perl 5.34.0
|
||||
- Python 3.10.12
|
||||
- Ruby 3.0.2p107
|
||||
@@ -32,8 +26,8 @@
|
||||
|
||||
### Package Management
|
||||
- cpan 1.64
|
||||
- Helm 3.16.4
|
||||
- Homebrew 4.4.14
|
||||
- Helm 3.17.0
|
||||
- Homebrew 4.4.17
|
||||
- Miniconda 24.11.1
|
||||
- Npm 10.8.2
|
||||
- NuGet 6.6.1.2
|
||||
@@ -41,7 +35,7 @@
|
||||
- Pip3 22.0.2
|
||||
- Pipx 1.7.1
|
||||
- RubyGems 3.3.5
|
||||
- Vcpkg (build from commit 65be70199)
|
||||
- Vcpkg (build from commit 57c08a322)
|
||||
- Yarn 1.22.22
|
||||
|
||||
#### Environment variables
|
||||
@@ -60,36 +54,36 @@ to accomplish this.
|
||||
|
||||
### Project Management
|
||||
- Ant 1.10.12
|
||||
- Gradle 8.12
|
||||
- Gradle 8.12.1
|
||||
- Lerna 8.1.9
|
||||
- Maven 3.8.8
|
||||
- Maven 3.9.9
|
||||
- Sbt 1.10.7
|
||||
|
||||
### Tools
|
||||
- Ansible 2.17.7
|
||||
- apt-fast 1.10.0
|
||||
- AzCopy 10.27.1 - available by `azcopy` and `azcopy10` aliases
|
||||
- Bazel 8.0.0
|
||||
- Bazel 8.0.1
|
||||
- Bazelisk 1.25.0
|
||||
- Bicep 0.32.4
|
||||
- Bicep 0.33.13
|
||||
- Buildah 1.23.1
|
||||
- CMake 3.31.3
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- CMake 3.31.5
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Docker Amazon ECR Credential Helper 0.9.0
|
||||
- Docker Compose v2 2.27.1
|
||||
- Docker-Buildx 0.19.3
|
||||
- Docker-Buildx 0.20.1
|
||||
- Docker Client 26.1.3
|
||||
- Docker Server 26.1.3
|
||||
- Fastlane 2.226.0
|
||||
- Git 2.47.1
|
||||
- Git LFS 3.6.0
|
||||
- Git 2.48.1
|
||||
- Git LFS 3.6.1
|
||||
- Git-ftp 1.6.0
|
||||
- Haveged 1.9.14
|
||||
- Heroku 10.0.0
|
||||
- Heroku 10.0.2
|
||||
- jq 1.6
|
||||
- Kind 0.26.0
|
||||
- Kubectl 1.32.0
|
||||
- Kustomize 5.5.0
|
||||
- Kubectl 1.32.1
|
||||
- Kustomize 5.6.0
|
||||
- Leiningen 2.11.2
|
||||
- MediaInfo 21.09
|
||||
- Mercurial 6.1.1
|
||||
@@ -98,44 +92,44 @@ to accomplish this.
|
||||
- Newman 6.2.1
|
||||
- nvm 0.40.1
|
||||
- OpenSSL 3.0.2-0ubuntu1.18
|
||||
- Packer 1.11.2
|
||||
- Packer 1.12.0
|
||||
- Parcel 2.13.3
|
||||
- Podman 3.4.4
|
||||
- Pulumi 3.144.1
|
||||
- Pulumi 3.147.0
|
||||
- R 4.4.2
|
||||
- Skopeo 1.4.1
|
||||
- Sphinx Open Source Search Server 2.2.11
|
||||
- SVN 1.14.1
|
||||
- Terraform 1.10.3
|
||||
- Terraform 1.10.5
|
||||
- yamllint 1.35.1
|
||||
- yq 4.44.6
|
||||
- yq 4.45.1
|
||||
- zstd 1.5.6
|
||||
|
||||
### CLI Tools
|
||||
- Alibaba Cloud CLI 3.0.244
|
||||
- AWS CLI 2.22.28
|
||||
- Alibaba Cloud CLI 3.0.250
|
||||
- AWS CLI 2.23.6
|
||||
- AWS CLI Session Manager Plugin 1.2.694.0
|
||||
- AWS SAM CLI 1.132.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure CLI (azure-devops) 1.0.1
|
||||
- GitHub CLI 2.64.0
|
||||
- Google Cloud CLI 504.0.1
|
||||
- Netlify CLI 17.38.1
|
||||
- OpenShift CLI 4.17.10
|
||||
- GitHub CLI 2.65.0
|
||||
- Google Cloud CLI 507.0.0
|
||||
- Netlify CLI 18.0.2
|
||||
- OpenShift CLI 4.17.12
|
||||
- ORAS CLI 1.2.2
|
||||
- Vercel CLI 39.2.5
|
||||
- Vercel CLI 39.3.0
|
||||
|
||||
### Java
|
||||
| Version | Environment Variable |
|
||||
| ------------------- | -------------------- |
|
||||
| 8.0.432+6 | JAVA_HOME_8_X64 |
|
||||
| 11.0.25+9 (default) | JAVA_HOME_11_X64 |
|
||||
| 17.0.13+11 | JAVA_HOME_17_X64 |
|
||||
| 21.0.5+11 | JAVA_HOME_21_X64 |
|
||||
| 8.0.442+6 | JAVA_HOME_8_X64 |
|
||||
| 11.0.26+4 (default) | JAVA_HOME_11_X64 |
|
||||
| 17.0.14+7 | JAVA_HOME_17_X64 |
|
||||
| 21.0.6+7 | JAVA_HOME_21_X64 |
|
||||
|
||||
### PHP Tools
|
||||
- PHP: 8.1.2
|
||||
- Composer 2.8.4
|
||||
- Composer 2.8.5
|
||||
- PHPUnit 8.5.41
|
||||
```
|
||||
Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
|
||||
@@ -148,27 +142,27 @@ Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
|
||||
- Stack 3.3.1
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- Bindgen 0.71.1
|
||||
- Cargo audit 0.21.0
|
||||
- Cargo clippy 0.1.83
|
||||
- Cargo audit 0.21.1
|
||||
- Cargo clippy 0.1.84
|
||||
- Cargo outdated 0.16.0
|
||||
- Cbindgen 0.27.0
|
||||
- Cbindgen 0.28.0
|
||||
- Rustfmt 1.8.0
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 131.0.6778.204
|
||||
- ChromeDriver 131.0.6778.204
|
||||
- Chromium 131.0.6778.0
|
||||
- Microsoft Edge 131.0.2903.112
|
||||
- Microsoft Edge WebDriver 131.0.2903.112
|
||||
- Selenium server 4.27.0
|
||||
- Mozilla Firefox 133.0.3
|
||||
- Google Chrome 132.0.6834.110
|
||||
- ChromeDriver 132.0.6834.110
|
||||
- Chromium 132.0.6834.0
|
||||
- Microsoft Edge 132.0.2957.127
|
||||
- Microsoft Edge WebDriver 132.0.2957.127
|
||||
- Selenium server 4.28.1
|
||||
- Mozilla Firefox 134.0.2
|
||||
- Geckodriver 0.35.0
|
||||
|
||||
#### Environment variables
|
||||
@@ -180,8 +174,8 @@ Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
|
||||
| SELENIUM_JAR_PATH | /usr/share/java/selenium-server.jar |
|
||||
|
||||
### .NET Tools
|
||||
- .NET Core SDK: 6.0.428, 7.0.410, 8.0.404
|
||||
- nbgv 3.7.112+63bbe780b0
|
||||
- .NET Core SDK: 6.0.428, 8.0.405, 9.0.102
|
||||
- nbgv 3.7.115+d31f50f4d1
|
||||
|
||||
### Databases
|
||||
- sqlite3 3.37.2
|
||||
@@ -211,13 +205,13 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
|
||||
#### Go
|
||||
- 1.21.13
|
||||
- 1.22.10
|
||||
- 1.23.4
|
||||
- 1.22.11
|
||||
- 1.23.5
|
||||
|
||||
#### Node.js
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 18.20.6
|
||||
- 20.18.2
|
||||
- 22.13.1
|
||||
|
||||
#### Python
|
||||
- 3.8.18
|
||||
@@ -225,6 +219,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
- 3.10.16
|
||||
- 3.11.11
|
||||
- 3.12.8
|
||||
- 3.13.1
|
||||
|
||||
#### PyPy
|
||||
- 3.7.13 [PyPy 7.3.9]
|
||||
@@ -235,15 +230,16 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
#### Ruby
|
||||
- 3.1.6
|
||||
- 3.2.6
|
||||
- 3.3.7
|
||||
|
||||
### PowerShell Tools
|
||||
- PowerShell 7.4.6
|
||||
- PowerShell 7.4.7
|
||||
|
||||
#### PowerShell Modules
|
||||
- Az: 12.1.0
|
||||
- MarkdownPS: 1.10
|
||||
- Microsoft.Graph: 2.25.0
|
||||
- Pester: 5.6.1
|
||||
- Pester: 5.7.1
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
|
||||
### Web Servers
|
||||
@@ -256,7 +252,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 9.0 |
|
||||
| Android SDK Build-tools | 35.0.0<br>34.0.0<br>33.0.0 33.0.1 33.0.2 33.0.3<br>32.0.0<br>31.0.0 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1<br>34.0.0<br>33.0.0 33.0.1 33.0.2 33.0.3<br>32.0.0<br>31.0.0 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3)<br>android-32 (rev 1)<br>android-31 (rev 1) |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| CMake | 3.10.2<br>3.18.1<br>3.22.1 |
|
||||
@@ -279,17 +275,17 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| -------------------- | ------------------------------------------------------------------------ | ---------- |
|
||||
| alpine:3.16 | sha256:452e7292acee0ee16c332324d7de05fa2c99f9994ecc9f0779c602916a672ae4 | 2024-01-27 |
|
||||
| alpine:3.17 | sha256:8fc3dacfb6d69da8d44e42390de777e48577085db99aa4e4af35f483eb08b989 | 2024-09-06 |
|
||||
| alpine:3.18 | sha256:2995c82e8e723d9a5c8585cb8e901d1c50e3c2759031027d3bff577449435157 | 2024-09-06 |
|
||||
| alpine:3.19 | sha256:7a85bf5dc56c949be827f84f9185161265c58f589bb8b2a6b6bb6d3076c1be21 | 2024-09-06 |
|
||||
| alpine:3.18 | sha256:dd60c75fba961ecc5e918961c713f3c42dd5665171c58f9b2ef5aafe081ad5a0 | 2025-01-08 |
|
||||
| alpine:3.19 | sha256:6380aa6b04faa579332d4c9d1f65bd7093012ba6e01d9bbcd5e2d8a4f9fae38f | 2025-01-08 |
|
||||
| debian:10 | sha256:58ce6f1271ae1c8a2006ff7d3e54e9874d839f573d8009c20154ad0f2fb0a225 | 2024-06-13 |
|
||||
| debian:11 | sha256:21b74d95871e8676a0cf47df9caebb1021b2af60b9a6e4777ce92f92f98e3a90 | 2024-12-23 |
|
||||
| moby/buildkit:latest | sha256:86c0ad9d1137c186e9d455912167df20e530bdf7f7c19de802e892bb8ca16552 | 2024-12-16 |
|
||||
| node:18 | sha256:7f31a1eb14c61719b8bb0eaa029310cc33851f71d3578cc422b390f8096977c5 | 2024-11-15 |
|
||||
| node:18-alpine | sha256:6eb9c3d9bd191bd2cc6ce7ec3d5ec4c2127616140c8586af96a6bec8f28689d1 | 2024-12-05 |
|
||||
| node:20 | sha256:d17aaa2a2fd82e09bd6a6da7cc4a79741340d2a3e39d172d1b30f295b1a850ff | 2024-11-20 |
|
||||
| node:20-alpine | sha256:426f843809ae05f324883afceebaa2b9cab9cb697097dbb1a2a7a41c5701de72 | 2024-12-05 |
|
||||
| node:22 | sha256:0e910f435308c36ea60b4cfd7b80208044d77a074d16b768a81901ce938a62dc | 2024-12-03 |
|
||||
| node:22-alpine | sha256:6e80991f69cc7722c561e5d14d5e72ab47c0d6b6cfb3ae50fb9cf9a7b30fdf97 | 2024-12-05 |
|
||||
| debian:11 | sha256:e5bfb7364038fd100c2faebdd674145bd1bc758a57f3c67023cced99d0eff0f7 | 2025-01-13 |
|
||||
| moby/buildkit:latest | sha256:14aa1b4dd92ea0a4cd03a54d0c6079046ea98cd0c0ae6176bdd7036ba370cbbe | 2025-01-20 |
|
||||
| node:18 | sha256:720eeea325b3da50e108ba34dde0fd69feeb3c59485199c5e22b0ea49a792aa5 | 2025-01-22 |
|
||||
| node:18-alpine | sha256:974afb6cbc0314dc6502b14243b8a39fbb2d04d975e9059dd066be3e274fbb25 | 2025-01-22 |
|
||||
| node:20 | sha256:bc3d86568d9a9e062cdf7036367f6e2ce201925e2912758bcd3b0e2657875a63 | 2025-01-22 |
|
||||
| node:20-alpine | sha256:2cd2a6f4cb37cf8a007d5f1e9aef090ade6b62974c7a274098c390599e8c72b4 | 2025-01-22 |
|
||||
| node:22 | sha256:ae2f3d4cc65d251352eca01ba668824f651a2ee4d2a37e2efb22649521a483fd | 2025-01-22 |
|
||||
| node:22-alpine | sha256:e2b39f7b64281324929257d0f8004fb6cb4bf0fdfb9aa8cedb235a766aec31da | 2025-01-22 |
|
||||
| ubuntu:20.04 | sha256:8e5c4f0285ecbb4ead070431d29b576a530d3166df73ec44affc1cd27555141b | 2024-10-11 |
|
||||
| ubuntu:22.04 | sha256:0e5e4a57c2499249aafc3b40fcd541e9a456aab7296681a3994d631587203f97 | 2024-09-11 |
|
||||
|
||||
@@ -307,7 +303,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| coreutils | 8.32-4.1ubuntu1.2 |
|
||||
| curl | 7.81.0-1ubuntu1.20 |
|
||||
| dbus | 1.12.20-2ubuntu4.1 |
|
||||
| dnsutils | 1:9.18.28-0ubuntu0.22.04.1 |
|
||||
| dnsutils | 1:9.18.30-0ubuntu0.22.04.1 |
|
||||
| dpkg | 1.21.1ubuntu2.3 |
|
||||
| dpkg-dev | 1.21.1ubuntu2.3 |
|
||||
| fakeroot | 1.28-1ubuntu1 |
|
||||
@@ -363,7 +359,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| pollinate | 4.33-3ubuntu2 |
|
||||
| python-is-python3 | 3.9.2-2 |
|
||||
| rpm | 4.17.0+dfsg1-4build1 |
|
||||
| rsync | 3.2.7-0ubuntu0.22.04.2 |
|
||||
| rsync | 3.2.7-0ubuntu0.22.04.4 |
|
||||
| shellcheck | 0.8.0-2 |
|
||||
| sphinxsearch | 2.2.11-8 |
|
||||
| sqlite3 | 3.37.2-2ubuntu0.3 |
|
||||
@@ -387,4 +383,3 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| xz-utils | 5.2.5-2ubuntu1 |
|
||||
| zip | 3.0-12build2 |
|
||||
| zsync | 0.6.2-3ubuntu1 |
|
||||
|
||||
|
||||
@@ -1,13 +1,7 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[Windows & Ubuntu] Breaking change : Maven 3.8.* version will be updated to Maven 3.9.* from January 10,2025](https://github.com/actions/runner-images/issues/11093) |
|
||||
| [[Ubuntu] Breaking Change: runner user will have UID 1001 instead of 1000 for larger runners](https://github.com/actions/runner-images/issues/10936) |
|
||||
| [Ubuntu-latest workflows will use Ubuntu-24.04 image](https://github.com/actions/runner-images/issues/10636) |
|
||||
***
|
||||
# Ubuntu 24.04
|
||||
- OS Version: 24.04.1 LTS
|
||||
- Kernel Version: 6.8.0-1017-azure
|
||||
- Image Version: 20250105.1.0
|
||||
- Kernel Version: 6.8.0-1020-azure
|
||||
- Image Version: 20250126.1.0
|
||||
- Systemd version: 255.4-1ubuntu8.4
|
||||
|
||||
## Installed Software
|
||||
@@ -20,9 +14,9 @@
|
||||
- Dash 0.5.12-6ubuntu5
|
||||
- GNU C++: 12.3.0, 13.3.0, 14.2.0
|
||||
- GNU Fortran: 12.3.0, 13.3.0, 14.2.0
|
||||
- Julia 1.11.2
|
||||
- Julia 1.11.3
|
||||
- Kotlin 2.1.0-release-394
|
||||
- Node.js 20.18.1
|
||||
- Node.js 20.18.2
|
||||
- Perl 5.38.2
|
||||
- Python 3.12.3
|
||||
- Ruby 3.2.3
|
||||
@@ -30,15 +24,15 @@
|
||||
|
||||
### Package Management
|
||||
- cpan 1.64
|
||||
- Helm 3.16.4
|
||||
- Homebrew 4.4.14
|
||||
- Helm 3.17.0
|
||||
- Homebrew 4.4.17
|
||||
- Miniconda 24.11.1
|
||||
- Npm 10.8.2
|
||||
- Pip 24.0
|
||||
- Pip3 24.0
|
||||
- Pipx 1.7.1
|
||||
- RubyGems 3.4.20
|
||||
- Vcpkg (build from commit 65be70199)
|
||||
- Vcpkg (build from commit 57c08a322)
|
||||
- Yarn 1.22.22
|
||||
|
||||
#### Environment variables
|
||||
@@ -57,33 +51,33 @@ to accomplish this.
|
||||
|
||||
### Project Management
|
||||
- Ant 1.10.14
|
||||
- Gradle 8.12
|
||||
- Gradle 8.12.1
|
||||
- Lerna 8.1.9
|
||||
- Maven 3.8.8
|
||||
- Maven 3.9.9
|
||||
|
||||
### Tools
|
||||
- Ansible 2.18.1
|
||||
- AzCopy 10.27.1 - available by `azcopy` and `azcopy10` aliases
|
||||
- Bazel 8.0.0
|
||||
- Bazel 8.0.1
|
||||
- Bazelisk 1.25.0
|
||||
- Bicep 0.32.4
|
||||
- Bicep 0.33.13
|
||||
- Buildah 1.33.7
|
||||
- CMake 3.31.3
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- CMake 3.31.5
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Docker Amazon ECR Credential Helper 0.9.0
|
||||
- Docker Compose v2 2.27.1
|
||||
- Docker-Buildx 0.19.3
|
||||
- Docker-Buildx 0.20.1
|
||||
- Docker Client 26.1.3
|
||||
- Docker Server 26.1.3
|
||||
- Fastlane 2.226.0
|
||||
- Git 2.47.1
|
||||
- Git LFS 3.6.0
|
||||
- Git 2.48.1
|
||||
- Git LFS 3.6.1
|
||||
- Git-ftp 1.6.0
|
||||
- Haveged 1.9.14
|
||||
- jq 1.7
|
||||
- Kind 0.26.0
|
||||
- Kubectl 1.32.0
|
||||
- Kustomize 5.5.0
|
||||
- Kubectl 1.32.1
|
||||
- Kustomize 5.6.0
|
||||
- MediaInfo 24.01
|
||||
- Mercurial 6.7.2
|
||||
- Minikube 1.34.0
|
||||
@@ -91,36 +85,36 @@ to accomplish this.
|
||||
- Newman 6.2.1
|
||||
- nvm 0.40.1
|
||||
- OpenSSL 3.0.13-0ubuntu3.4
|
||||
- Packer 1.11.2
|
||||
- Packer 1.12.0
|
||||
- Parcel 2.13.3
|
||||
- Podman 4.9.3
|
||||
- Pulumi 3.144.1
|
||||
- Pulumi 3.147.0
|
||||
- Skopeo 1.13.3
|
||||
- Sphinx Open Source Search Server 2.2.11
|
||||
- yamllint 1.35.1
|
||||
- yq 4.44.6
|
||||
- yq 4.45.1
|
||||
- zstd 1.5.6
|
||||
|
||||
### CLI Tools
|
||||
- AWS CLI 2.22.28
|
||||
- AWS CLI 2.23.6
|
||||
- AWS CLI Session Manager Plugin 1.2.694.0
|
||||
- AWS SAM CLI 1.132.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure CLI (azure-devops) 1.0.1
|
||||
- GitHub CLI 2.64.0
|
||||
- Google Cloud CLI 504.0.1
|
||||
- GitHub CLI 2.65.0
|
||||
- Google Cloud CLI 507.0.0
|
||||
|
||||
### Java
|
||||
| Version | Environment Variable |
|
||||
| -------------------- | -------------------- |
|
||||
| 8.0.432+6 | JAVA_HOME_8_X64 |
|
||||
| 11.0.25+9 | JAVA_HOME_11_X64 |
|
||||
| 17.0.13+11 (default) | JAVA_HOME_17_X64 |
|
||||
| 21.0.5+11 | JAVA_HOME_21_X64 |
|
||||
| Version | Environment Variable |
|
||||
| ------------------- | -------------------- |
|
||||
| 8.0.442+6 | JAVA_HOME_8_X64 |
|
||||
| 11.0.26+4 | JAVA_HOME_11_X64 |
|
||||
| 17.0.14+7 (default) | JAVA_HOME_17_X64 |
|
||||
| 21.0.6+7 | JAVA_HOME_21_X64 |
|
||||
|
||||
### PHP Tools
|
||||
- PHP: 8.3.6
|
||||
- Composer 2.8.4
|
||||
- Composer 2.8.5
|
||||
- PHPUnit 8.5.41
|
||||
```
|
||||
Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
|
||||
@@ -133,22 +127,22 @@ Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
|
||||
- Stack 3.3.1
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- Rustfmt 1.8.0
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 131.0.6778.204
|
||||
- ChromeDriver 131.0.6778.204
|
||||
- Chromium 131.0.6778.0
|
||||
- Microsoft Edge 131.0.2903.112
|
||||
- Microsoft Edge WebDriver 131.0.2903.112
|
||||
- Selenium server 4.27.0
|
||||
- Mozilla Firefox 133.0.3
|
||||
- Google Chrome 132.0.6834.110
|
||||
- ChromeDriver 132.0.6834.110
|
||||
- Chromium 132.0.6834.0
|
||||
- Microsoft Edge 132.0.2957.127
|
||||
- Microsoft Edge WebDriver 132.0.2957.127
|
||||
- Selenium server 4.28.1
|
||||
- Mozilla Firefox 134.0.2
|
||||
- Geckodriver 0.35.0
|
||||
|
||||
#### Environment variables
|
||||
@@ -160,8 +154,8 @@ Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
|
||||
| SELENIUM_JAR_PATH | /usr/share/java/selenium-server.jar |
|
||||
|
||||
### .NET Tools
|
||||
- .NET Core SDK: 8.0.111
|
||||
- nbgv 3.7.112+63bbe780b0
|
||||
- .NET Core SDK: 8.0.112
|
||||
- nbgv 3.7.115+d31f50f4d1
|
||||
|
||||
### Databases
|
||||
- sqlite3 3.45.1
|
||||
@@ -187,31 +181,36 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
|
||||
#### Go
|
||||
- 1.21.13
|
||||
- 1.22.10
|
||||
- 1.23.4
|
||||
- 1.22.11
|
||||
- 1.23.5
|
||||
|
||||
#### Node.js
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 18.20.6
|
||||
- 20.18.2
|
||||
- 22.13.1
|
||||
|
||||
#### Python
|
||||
- 3.9.21
|
||||
- 3.10.16
|
||||
- 3.11.11
|
||||
- 3.12.8
|
||||
- 3.13.1
|
||||
|
||||
#### PyPy
|
||||
- 3.9.19 [PyPy 7.3.16]
|
||||
- 3.10.14 [PyPy 7.3.17]
|
||||
|
||||
#### Ruby
|
||||
- 3.2.6
|
||||
- 3.3.7
|
||||
|
||||
### PowerShell Tools
|
||||
- PowerShell 7.4.6
|
||||
- PowerShell 7.4.7
|
||||
|
||||
#### PowerShell Modules
|
||||
- Az: 12.1.0
|
||||
- Microsoft.Graph: 2.25.0
|
||||
- Pester: 5.6.1
|
||||
- Pester: 5.7.1
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
|
||||
### Web Servers
|
||||
@@ -224,7 +223,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 12.0 |
|
||||
| Android SDK Build-tools | 35.0.0<br>34.0.0 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1<br>34.0.0 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1) |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| Google Play services | 49 |
|
||||
@@ -255,7 +254,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| coreutils | 9.4-3ubuntu6 |
|
||||
| curl | 8.5.0-2ubuntu10.6 |
|
||||
| dbus | 1.14.10-4ubuntu4.1 |
|
||||
| dnsutils | 1:9.18.28-0ubuntu0.24.04.1 |
|
||||
| dnsutils | 1:9.18.30-0ubuntu0.24.04.1 |
|
||||
| dpkg | 1.22.6ubuntu6.1 |
|
||||
| dpkg-dev | 1.22.6ubuntu6.1 |
|
||||
| fakeroot | 1.33-1 |
|
||||
@@ -271,6 +270,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| iproute2 | 6.1.0-1ubuntu6 |
|
||||
| iputils-ping | 3:20240117-1build1 |
|
||||
| jq | 1.7.1-3build1 |
|
||||
| libsqlite3-dev | 3.45.1-1ubuntu2 |
|
||||
| libssl-dev | 3.0.13-0ubuntu3.4 |
|
||||
| libtool | 2.4.7-7build1 |
|
||||
| libyaml-dev | 0.2.5-1build1 |
|
||||
@@ -292,7 +292,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| pollinate | 4.33-3.1ubuntu1 |
|
||||
| python-is-python3 | 3.11.4-1 |
|
||||
| rpm | 4.18.2+dfsg-2.1build2 |
|
||||
| rsync | 3.2.7-1ubuntu1 |
|
||||
| rsync | 3.2.7-1ubuntu1.2 |
|
||||
| shellcheck | 0.9.0-1 |
|
||||
| sphinxsearch | 2.2.11-8build1 |
|
||||
| sqlite3 | 3.45.1-1ubuntu2 |
|
||||
@@ -315,4 +315,3 @@ Use the following command as a part of your job to start the service: 'sudo syst
|
||||
| xz-utils | 5.6.1+really5.4.5-1build0.1 |
|
||||
| zip | 3.0-13ubuntu0.1 |
|
||||
| zsync | 0.6.2-5build1 |
|
||||
|
||||
|
||||
@@ -19,13 +19,6 @@ if command -v journalctl; then
|
||||
journalctl --vacuum-time=1s
|
||||
fi
|
||||
|
||||
# remove redundant folders from azcli
|
||||
if [[ -z "${AZURE_CONFIG_DIR}" ]]; then
|
||||
rm -rf $AZURE_CONFIG_DIR/logs
|
||||
rm -rf $AZURE_CONFIG_DIR/commands
|
||||
rm -rf $AZURE_CONFIG_DIR/telemetry
|
||||
fi
|
||||
|
||||
# delete all .gz and rotated file
|
||||
find /var/log -type f -regex ".*\.gz$" -delete
|
||||
find /var/log -type f -regex ".*\.[0-9]$" -delete
|
||||
|
||||
@@ -4,40 +4,12 @@
|
||||
## Desc: Install Azure CLI (az)
|
||||
################################################################################
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/etc-environment.sh
|
||||
|
||||
# AZURE_CONFIG_DIR shell variable defines where the CLI configuration file for managing behavior are stored
|
||||
# https://learn.microsoft.com/en-us/cli/azure/azure-cli-configuration#cli-configuration-file
|
||||
# This path SHOULD be different from the installation directory /opt/az/
|
||||
export AZURE_CONFIG_DIR="/opt/az-config"
|
||||
mkdir -p $AZURE_CONFIG_DIR
|
||||
set_etc_environment_variable "AZURE_CONFIG_DIR" "${AZURE_CONFIG_DIR}"
|
||||
|
||||
# AZURE_EXTENSION_DIR shell variable defines where modules are installed
|
||||
# https://docs.microsoft.com/en-us/cli/azure/azure-cli-extensions-overview
|
||||
# This path SHOULD be different from the installation directory /opt/az/
|
||||
export AZURE_EXTENSION_DIR="/opt/az-extension"
|
||||
mkdir -p $AZURE_EXTENSION_DIR
|
||||
set_etc_environment_variable "AZURE_EXTENSION_DIR" "${AZURE_EXTENSION_DIR}"
|
||||
|
||||
# Install Azure CLI (instructions taken from https://docs.microsoft.com/en-us/cli/azure/install-azure-cli)
|
||||
curl -fsSL https://aka.ms/InstallAzureCLIDeb | sudo bash
|
||||
|
||||
echo "azure-cli https://docs.microsoft.com/en-us/cli/azure/install-azure-cli-linux?pivots=apt" >> $HELPER_SCRIPTS/apt-sources.txt
|
||||
|
||||
# Remove Azure CLI repository (instructions taken from https://learn.microsoft.com/en-us/cli/azure/install-azure-cli-linux?pivots=apt#uninstall-azure-cli)
|
||||
rm -f /etc/apt/sources.list.d/azure-cli.sources
|
||||
|
||||
echo "Warmup 'az'"
|
||||
az --help > /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Command 'az --help' failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Hand over the ownership of the directories and files to the non-root user
|
||||
chown -R "$SUDO_USER:$SUDO_USER" $AZURE_CONFIG_DIR
|
||||
chown -R "$SUDO_USER:$SUDO_USER" $AZURE_EXTENSION_DIR
|
||||
rm -f /etc/apt/sources.list.d/azure-cli.list
|
||||
rm -f /etc/apt/sources.list.d/azure-cli.list.save
|
||||
|
||||
invoke_tests "CLI.Tools" "Azure CLI"
|
||||
|
||||
@@ -4,6 +4,14 @@
|
||||
## Desc: Install Azure DevOps CLI (az devops)
|
||||
################################################################################
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/etc-environment.sh
|
||||
|
||||
# AZURE_EXTENSION_DIR shell variable defines where modules are installed
|
||||
# https://docs.microsoft.com/en-us/cli/azure/azure-cli-extensions-overview
|
||||
export AZURE_EXTENSION_DIR=/opt/az/azcliextensions
|
||||
set_etc_environment_variable "AZURE_EXTENSION_DIR" "${AZURE_EXTENSION_DIR}"
|
||||
|
||||
# install azure devops Cli extension
|
||||
az extension add -n azure-devops
|
||||
|
||||
|
||||
@@ -30,11 +30,12 @@ rm -f /etc/apt/sources.list.d/kubernetes.list
|
||||
# Install Helm
|
||||
curl -fsSL https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
|
||||
|
||||
# Temporarily pinning the version
|
||||
# Download minikube
|
||||
curl -fsSL -O https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
|
||||
curl -fsSL -O https://storage.googleapis.com/minikube/releases/v1.34.0/minikube-linux-amd64
|
||||
|
||||
# Supply chain security - minikube
|
||||
minikube_hash=$(get_checksum_from_github_release "kubernetes/minikube" "linux-amd64" "latest" "SHA256")
|
||||
minikube_hash=$(get_checksum_from_github_release "kubernetes/minikube" "linux-amd64" "1.34.0" "SHA256")
|
||||
use_checksum_comparison "minikube-linux-amd64" "${minikube_hash}"
|
||||
|
||||
# Install minikube
|
||||
|
||||
@@ -251,9 +251,8 @@ $cachedTools.AddToolVersionsList("Go", $(Get-ToolcacheGoVersions), "^\d+\.\d+")
|
||||
$cachedTools.AddToolVersionsList("Node.js", $(Get-ToolcacheNodeVersions), "^\d+")
|
||||
$cachedTools.AddToolVersionsList("Python", $(Get-ToolcachePythonVersions), "^\d+\.\d+")
|
||||
$cachedTools.AddToolVersionsList("PyPy", $(Get-ToolcachePyPyVersions), "^\d+\.\d+")
|
||||
if (-not $(Test-IsUbuntu24)) {
|
||||
$cachedTools.AddToolVersionsList("Ruby", $(Get-ToolcacheRubyVersions), "^\d+\.\d+")
|
||||
}
|
||||
$cachedTools.AddToolVersionsList("Ruby", $(Get-ToolcacheRubyVersions), "^\d+\.\d+")
|
||||
|
||||
|
||||
# PowerShell Tools
|
||||
$powerShellTools = $installedSoftware.AddHeader("PowerShell Tools")
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
################################################################################
|
||||
|
||||
# NB: sed expression use '%' as a delimiter in order to simplify handling
|
||||
# values containg slashes (i.e. directory path)
|
||||
# values containing slashes (i.e. directory path)
|
||||
# The values containing '%' will break the functions
|
||||
|
||||
get_etc_environment_variable() {
|
||||
|
||||
@@ -11,7 +11,8 @@
|
||||
"3.9.*",
|
||||
"3.10.*",
|
||||
"3.11.*",
|
||||
"3.12.*"
|
||||
"3.12.*",
|
||||
"3.13.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -57,7 +58,8 @@
|
||||
"versions": [
|
||||
"3.0.*",
|
||||
"3.1.*",
|
||||
"3.2.*"
|
||||
"3.2.*",
|
||||
"3.3.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -268,11 +270,13 @@
|
||||
"dotnet": {
|
||||
"aptPackages": [
|
||||
"dotnet-sdk-6.0",
|
||||
"dotnet-sdk-8.0"
|
||||
"dotnet-sdk-8.0",
|
||||
"dotnet-sdk-9.0"
|
||||
],
|
||||
"versions": [
|
||||
"6.0",
|
||||
"8.0"
|
||||
"8.0",
|
||||
"9.0"
|
||||
],
|
||||
"tools": [
|
||||
{ "name": "nbgv", "test": "nbgv --version", "getversion" : "nbgv --version" }
|
||||
|
||||
@@ -11,7 +11,8 @@
|
||||
"3.9.*",
|
||||
"3.10.*",
|
||||
"3.11.*",
|
||||
"3.12.*"
|
||||
"3.12.*",
|
||||
"3.13.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -54,7 +55,8 @@
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"3.1.*",
|
||||
"3.2.*"
|
||||
"3.2.*",
|
||||
"3.3.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -267,11 +269,13 @@
|
||||
"dotnet": {
|
||||
"aptPackages": [
|
||||
"dotnet-sdk-6.0",
|
||||
"dotnet-sdk-8.0"
|
||||
"dotnet-sdk-8.0",
|
||||
"dotnet-sdk-9.0"
|
||||
],
|
||||
"versions": [
|
||||
"6.0",
|
||||
"8.0"
|
||||
"8.0",
|
||||
"9.0"
|
||||
],
|
||||
"tools": [
|
||||
{ "name": "nbgv", "test": "nbgv --version", "getversion" : "nbgv --version" }
|
||||
|
||||
@@ -10,7 +10,8 @@
|
||||
"3.9.*",
|
||||
"3.10.*",
|
||||
"3.11.*",
|
||||
"3.12.*"
|
||||
"3.12.*",
|
||||
"3.13.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -50,7 +51,8 @@
|
||||
"platform_version": "24.04",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"3.2.*"
|
||||
"3.2.*",
|
||||
"3.3.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -1,15 +1,13 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[Windows] Removal of Azure and Azure Powershell module from windows images from Febraury 14](https://github.com/actions/runner-images/issues/11483) |
|
||||
| [[Windows ] Breaking change : PHP 8.3.* version will be updated to PHP 8.4.* from January 31,2025](https://github.com/actions/runner-images/issues/11256) |
|
||||
| [Windows Server 2025 is now available](https://github.com/actions/runner-images/issues/11228) |
|
||||
| [[Windows] Breaking change : Docker Engine Version 26.* will be updated to Docker Engine Version 27.* from January 17,2025](https://github.com/actions/runner-images/issues/11104) |
|
||||
| [[Windows & Ubuntu] Breaking change : Maven 3.8.* version will be updated to Maven 3.9.* from January 17,2025](https://github.com/actions/runner-images/issues/11093) |
|
||||
| [[Windows & Ubuntu] .NET 7.x will be removed from the images on January 17,2025](https://github.com/actions/runner-images/issues/10894) |
|
||||
| [[Windows & Ubuntu] Python 3.7.x will be removed from January 10 ,2025](https://github.com/actions/runner-images/issues/10893) |
|
||||
| [[Windows] Breaking change : Docker Engine Version 26.* will be updated to Docker Engine Version 27.* from February 07,2025](https://github.com/actions/runner-images/issues/11104) |
|
||||
***
|
||||
# Windows Server 2019
|
||||
- OS Version: 10.0.17763 Build 6659
|
||||
- Image Version: 20250105.1.0
|
||||
- OS Version: 10.0.17763 Build 6775
|
||||
- Image Version: 20250127.1.0
|
||||
|
||||
## Windows features
|
||||
- Windows Subsystem for Linux (WSLv1): Enabled
|
||||
@@ -20,25 +18,25 @@
|
||||
- Bash 5.2.37(1)-release
|
||||
- Go 1.21.13
|
||||
- Julia 1.10.5
|
||||
- Kotlin 2.1.0
|
||||
- Kotlin 2.1.10
|
||||
- LLVM 18.1.8
|
||||
- Node 18.20.5
|
||||
- Node 18.20.6
|
||||
- Perl 5.32.1
|
||||
- PHP 8.3.15
|
||||
- PHP 8.4.3
|
||||
- Python 3.9.13
|
||||
- Ruby 3.0.7p220
|
||||
|
||||
### Package Management
|
||||
- Chocolatey 2.4.1
|
||||
- Composer 2.8.4
|
||||
- Helm 3.16.3
|
||||
- Composer 2.8.5
|
||||
- Helm 3.16.4
|
||||
- Miniconda 24.11.1 (pre-installed on the image but not added to PATH)
|
||||
- NPM 10.8.2
|
||||
- NuGet 6.12.1.1
|
||||
- pip 24.3.1 (python 3.9)
|
||||
- NuGet 6.12.2.1
|
||||
- pip 25.0 (python 3.9)
|
||||
- Pipx 1.7.1
|
||||
- RubyGems 3.2.33
|
||||
- Vcpkg (build from commit 65be70199)
|
||||
- Vcpkg (build from commit f3a67b0c4)
|
||||
- Yarn 1.22.22
|
||||
|
||||
#### Environment variables
|
||||
@@ -50,31 +48,31 @@
|
||||
### Project Management
|
||||
- Ant 1.10.14
|
||||
- Gradle 8.12
|
||||
- Maven 3.8.7
|
||||
- Maven 3.9.9
|
||||
- sbt 1.10.7
|
||||
|
||||
### Tools
|
||||
- 7zip 24.09
|
||||
- aria2 1.37.0
|
||||
- azcopy 10.27.1
|
||||
- Bazel 8.0.0
|
||||
- Bazel 8.0.1
|
||||
- Bazelisk 1.25.0
|
||||
- Bicep 0.32.4
|
||||
- Bicep 0.33.13
|
||||
- Cabal 3.14.1.1
|
||||
- CMake 3.31.3
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- CMake 3.31.4
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Docker 26.1.3
|
||||
- Docker Compose v2 2.27.1
|
||||
- Docker-wincred 0.8.2
|
||||
- ghc 9.12.1
|
||||
- Git 2.47.1.windows.1
|
||||
- Git LFS 3.6.0
|
||||
- Google Cloud CLI 504.0.1
|
||||
- Git 2.47.1.windows.2
|
||||
- Git LFS 3.6.1
|
||||
- Google Cloud CLI 507.0.0
|
||||
- ImageMagick 7.1.1-43
|
||||
- InnoSetup 6.3.3
|
||||
- InnoSetup 6.4.0
|
||||
- jq 1.7.1
|
||||
- Kind 0.26.0
|
||||
- Kubectl 1.32.0
|
||||
- Kubectl 1.32.1
|
||||
- Mercurial 5.0
|
||||
- gcc 8.1.0
|
||||
- gdb 8.1
|
||||
@@ -84,7 +82,7 @@
|
||||
- OpenSSL 1.1.1w
|
||||
- Packer 1.11.2
|
||||
- Parcel 2.13.3
|
||||
- Pulumi 3.144.1
|
||||
- Pulumi 3.147.0
|
||||
- R 4.4.2
|
||||
- Service Fabric SDK 9.1.1436.9590
|
||||
- Stack 3.3.1
|
||||
@@ -97,38 +95,38 @@
|
||||
- zstd 1.5.6
|
||||
|
||||
### CLI Tools
|
||||
- Alibaba Cloud CLI 3.0.244
|
||||
- AWS CLI 2.22.28
|
||||
- Alibaba Cloud CLI 3.0.250
|
||||
- AWS CLI 2.23.6
|
||||
- AWS SAM CLI 1.132.0
|
||||
- AWS Session Manager CLI 1.2.694.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure DevOps CLI extension 1.0.1
|
||||
- Cloud Foundry CLI 8.9.0
|
||||
- GitHub CLI 2.64.0
|
||||
- GitHub CLI 2.65.0
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- bindgen 0.71.1
|
||||
- cargo-audit 0.21.0
|
||||
- cargo-audit 0.21.1
|
||||
- cargo-outdated 0.16.0
|
||||
- cbindgen 0.27.0
|
||||
- Clippy 0.1.83
|
||||
- cbindgen 0.28.0
|
||||
- Clippy 0.1.84
|
||||
- Rustfmt 1.8.0
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 131.0.6778.205
|
||||
- Chrome Driver 131.0.6778.204
|
||||
- Microsoft Edge 131.0.2903.112
|
||||
- Microsoft Edge Driver 131.0.2903.112
|
||||
- Mozilla Firefox 133.0.3
|
||||
- Google Chrome 132.0.6834.111
|
||||
- Chrome Driver 132.0.6834.110
|
||||
- Microsoft Edge 132.0.2957.127
|
||||
- Microsoft Edge Driver 132.0.2957.127
|
||||
- Mozilla Firefox 134.0.2
|
||||
- Gecko Driver 0.35.0
|
||||
- IE Driver 4.14.0.0
|
||||
- Selenium server 4.27.0
|
||||
- Selenium server 4.28.0
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
@@ -141,10 +139,10 @@
|
||||
### Java
|
||||
| Version | Environment Variable |
|
||||
| ------------------- | -------------------- |
|
||||
| 8.0.432+6 (default) | JAVA_HOME_8_X64 |
|
||||
| 11.0.25+9 | JAVA_HOME_11_X64 |
|
||||
| 17.0.13+11 | JAVA_HOME_17_X64 |
|
||||
| 21.0.5+11.0 | JAVA_HOME_21_X64 |
|
||||
| 8.0.442+6 (default) | JAVA_HOME_8_X64 |
|
||||
| 11.0.26+4 | JAVA_HOME_11_X64 |
|
||||
| 17.0.14+7 | JAVA_HOME_17_X64 |
|
||||
| 21.0.6+7.0 | JAVA_HOME_21_X64 |
|
||||
|
||||
### Shells
|
||||
| Name | Target |
|
||||
@@ -171,14 +169,14 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
#### Go
|
||||
- 1.20.14
|
||||
- 1.21.13
|
||||
- 1.22.10
|
||||
- 1.23.4
|
||||
- 1.22.11
|
||||
- 1.23.5
|
||||
|
||||
#### Node.js
|
||||
- 16.20.2
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 18.20.6
|
||||
- 20.18.2
|
||||
- 22.13.1
|
||||
|
||||
#### Python
|
||||
- 3.8.10
|
||||
@@ -186,6 +184,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
- 3.10.11
|
||||
- 3.11.9
|
||||
- 3.12.8
|
||||
- 3.13.1
|
||||
|
||||
#### PyPy
|
||||
- 2.7.18 [PyPy 7.3.17]
|
||||
@@ -199,6 +198,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
- 3.0.7
|
||||
- 3.1.6
|
||||
- 3.2.6
|
||||
- 3.3.7
|
||||
|
||||
### Databases
|
||||
|
||||
@@ -206,7 +206,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Property | Value |
|
||||
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| ServiceName | postgresql-x64-14 |
|
||||
| Version | 14.12 |
|
||||
| Version | 14.15 |
|
||||
| ServiceStatus | Stopped |
|
||||
| ServiceStartType | Disabled |
|
||||
| EnvironmentVariables | PGBIN=C:\Program Files\PostgreSQL\14\bin <br> PGDATA=C:\Program Files\PostgreSQL\14\data <br> PGROOT=C:\Program Files\PostgreSQL\14 |
|
||||
@@ -235,12 +235,12 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
### Visual Studio Enterprise 2019
|
||||
| Name | Version | Path |
|
||||
| ----------------------------- | --------------- | -------------------------------------------------------------- |
|
||||
| Visual Studio Enterprise 2019 | 16.11.35425.106 | C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise |
|
||||
| Visual Studio Enterprise 2019 | 16.11.35706.149 | C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise |
|
||||
|
||||
#### Workloads, components and extensions
|
||||
| Package | Version |
|
||||
| ------------------------------------------------------------------------- | --------------- |
|
||||
| Component.Android.NDK.R16B | 16.11.35425.106 |
|
||||
| Component.Android.NDK.R16B | 16.11.35704.18 |
|
||||
| Component.Android.SDK25.Private | 16.0.28625.61 |
|
||||
| Component.Android.SDK30 | 16.10.31205.252 |
|
||||
| Component.Ant | 1.9.3.8 |
|
||||
@@ -497,27 +497,27 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
- 10.0.22621.0
|
||||
|
||||
### .NET Core Tools
|
||||
- .NET Core SDK: 6.0.136, 6.0.203, 6.0.321, 6.0.428, 7.0.120, 7.0.203, 7.0.317, 7.0.410, 8.0.111, 8.0.206, 8.0.307, 8.0.404, 9.0.101
|
||||
- .NET Core SDK: 6.0.136, 6.0.203, 6.0.321, 6.0.428, 8.0.112, 8.0.206, 8.0.308, 8.0.405, 9.0.102
|
||||
- .NET Framework: 4.7.2, 4.8
|
||||
- Microsoft.AspNetCore.App: 6.0.5, 6.0.26, 6.0.36, 7.0.5, 7.0.20, 8.0.6, 8.0.11, 9.0.0
|
||||
- Microsoft.NETCore.App: 6.0.5, 6.0.26, 6.0.36, 7.0.5, 7.0.20, 8.0.6, 8.0.11, 9.0.0
|
||||
- Microsoft.WindowsDesktop.App: 6.0.5, 6.0.26, 6.0.36, 7.0.5, 7.0.20, 8.0.6, 8.0.11, 9.0.0
|
||||
- nbgv 3.7.112+63bbe780b0
|
||||
- Microsoft.AspNetCore.App: 6.0.5, 6.0.26, 6.0.36, 8.0.6, 8.0.12, 9.0.1
|
||||
- Microsoft.NETCore.App: 6.0.5, 6.0.26, 6.0.36, 8.0.6, 8.0.12, 9.0.1
|
||||
- Microsoft.WindowsDesktop.App: 6.0.5, 6.0.26, 6.0.36, 8.0.6, 8.0.12, 9.0.1
|
||||
- nbgv 3.7.115+d31f50f4d1
|
||||
|
||||
### PowerShell Tools
|
||||
- PowerShell 7.4.6
|
||||
- PowerShell 7.4.7
|
||||
|
||||
#### Powershell Modules
|
||||
- Az: 12.1.0
|
||||
- Azure: 2.1.0 (Default), 5.3.0
|
||||
- AzureRM: 2.1.0 (Default), 6.13.1
|
||||
- Azure (Cached): 3.8.0.zip, 4.2.1.zip, 5.1.1.zip
|
||||
- AzureRM (Cached): 3.8.0.zip, 4.2.1.zip, 5.1.1.zip, 6.7.0.zip
|
||||
- AWSPowershell: 4.1.729
|
||||
- Azure: 5.3.0
|
||||
- AzureRM: 6.13.1
|
||||
- Azure (Cached): 5.1.1.zip
|
||||
- AzureRM (Cached): 6.7.0.zip
|
||||
- AWSPowershell: 4.1.743
|
||||
- DockerMsftProvider: 1.0.0.8
|
||||
- MarkdownPS: 1.10
|
||||
- Microsoft.Graph: 2.25.0
|
||||
- Pester: 3.4.0, 5.6.1
|
||||
- Pester: 3.4.0, 5.7.1
|
||||
- PowerShellGet: 1.0.0.1, 2.2.5
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
- PSWindowsUpdate: 2.2.1.5
|
||||
@@ -533,8 +533,8 @@ All other versions are saved but not installed.
|
||||
| Package Name | Version |
|
||||
| -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 8.0 |
|
||||
| Android Emulator | 35.2.10 |
|
||||
| Android SDK Build-tools | 35.0.0<br>34.0.0<br>33.0.0 33.0.1 33.0.2 33.0.3<br>32.0.0<br>31.0.0<br>30.0.2 |
|
||||
| Android Emulator | 35.3.11 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1<br>34.0.0<br>33.0.0 33.0.1 33.0.2 33.0.3<br>32.0.0<br>31.0.0<br>30.0.2 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3)<br>android-32 (rev 1)<br>android-31 (rev 1)<br>android-30 (rev 3) |
|
||||
| Android SDK Platform-Tools | 35.0.2 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
@@ -557,9 +557,9 @@ All other versions are saved but not installed.
|
||||
### Cached Docker images
|
||||
| Repository:Tag | Digest | Created |
|
||||
| ------------------------------------------------------------------------- | ------------------------------------------------------------------------ | ---------- |
|
||||
| mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019 | sha256:1fa02716b8fb36dc4d0f24d0afcfe29301b1e67b176a2fa0624c5463ee302296 | 2024-12-10 |
|
||||
| mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 | sha256:ee07f32af7ffae810146282e5bfa37fa319fb483e551e03b3a5b63c3f2130d3e | 2024-12-10 |
|
||||
| mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 | sha256:f1a2e331287782ecc403dfd56717fbd32fdae9486ffaacaab8cb1798ee214e6d | 2024-12-10 |
|
||||
| mcr.microsoft.com/windows/nanoserver:1809 | sha256:579994616649b876dd2e4009dae4af92f6e53561045230b8cdd53b3baf2f99d0 | 2024-12-05 |
|
||||
| mcr.microsoft.com/windows/servercore:ltsc2019 | sha256:0cb5fd75c08e7246afc6cc16bfe769d91af54fdb72ca58df150ebf5e3a2972ad | 2024-12-05 |
|
||||
| mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019 | sha256:a2d8245de6d6992c05b615df01bfdf903ff6f9799ee797076ae3113a907350af | 2025-01-14 |
|
||||
| mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 | sha256:afbf97e3682b2e0460152a5e57502373acf2f2264bc80bba7c4959a72c25fd36 | 2025-01-14 |
|
||||
| mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 | sha256:ee59ff9393e277bc86a68cd47df9f81a6519c1c7c6afa025a18e2082a68ceccb | 2025-01-14 |
|
||||
| mcr.microsoft.com/windows/nanoserver:1809 | sha256:d96a6c2108e1449c872cc2b224a9b3444fa1415b4d6947280aba2d2bb3bd0025 | 2025-01-09 |
|
||||
| mcr.microsoft.com/windows/servercore:ltsc2019 | sha256:fb07dd14e84db4b84909be0a989597c31e28e199e7f47964fce763623d68e5d9 | 2025-01-09 |
|
||||
|
||||
|
||||
@@ -1,15 +1,13 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[Windows] Removal of Azure and Azure Powershell module from windows images from Febraury 14](https://github.com/actions/runner-images/issues/11483) |
|
||||
| [[Windows ] Breaking change : PHP 8.3.* version will be updated to PHP 8.4.* from January 31,2025](https://github.com/actions/runner-images/issues/11256) |
|
||||
| [Windows Server 2025 is now available](https://github.com/actions/runner-images/issues/11228) |
|
||||
| [[Windows] Breaking change : Docker Engine Version 26.* will be updated to Docker Engine Version 27.* from January 17,2025](https://github.com/actions/runner-images/issues/11104) |
|
||||
| [[Windows & Ubuntu] Breaking change : Maven 3.8.* version will be updated to Maven 3.9.* from January 17,2025](https://github.com/actions/runner-images/issues/11093) |
|
||||
| [[Windows & Ubuntu] .NET 7.x will be removed from the images on January 17,2025](https://github.com/actions/runner-images/issues/10894) |
|
||||
| [[Windows & Ubuntu] Python 3.7.x will be removed from January 10 ,2025](https://github.com/actions/runner-images/issues/10893) |
|
||||
| [[Windows] Breaking change : Docker Engine Version 26.* will be updated to Docker Engine Version 27.* from February 07,2025](https://github.com/actions/runner-images/issues/11104) |
|
||||
***
|
||||
# Windows Server 2022
|
||||
- OS Version: 10.0.20348 Build 2966
|
||||
- Image Version: 20250105.1.0
|
||||
- OS Version: 10.0.20348 Build 3091
|
||||
- Image Version: 20250127.1.0
|
||||
|
||||
## Windows features
|
||||
- Windows Subsystem for Linux (WSLv1): Enabled
|
||||
@@ -20,25 +18,25 @@
|
||||
- Bash 5.2.37(1)-release
|
||||
- Go 1.21.13
|
||||
- Julia 1.10.5
|
||||
- Kotlin 2.1.0
|
||||
- Kotlin 2.1.10
|
||||
- LLVM 18.1.8
|
||||
- Node 18.20.5
|
||||
- Node 18.20.6
|
||||
- Perl 5.32.1
|
||||
- PHP 8.3.15
|
||||
- PHP 8.4.3
|
||||
- Python 3.9.13
|
||||
- Ruby 3.0.7p220
|
||||
|
||||
### Package Management
|
||||
- Chocolatey 2.4.1
|
||||
- Composer 2.8.4
|
||||
- Helm 3.16.3
|
||||
- Composer 2.8.5
|
||||
- Helm 3.16.4
|
||||
- Miniconda 24.11.1 (pre-installed on the image but not added to PATH)
|
||||
- NPM 10.8.2
|
||||
- NuGet 6.12.1.1
|
||||
- pip 24.3.1 (python 3.9)
|
||||
- NuGet 6.12.2.1
|
||||
- pip 25.0 (python 3.9)
|
||||
- Pipx 1.7.1
|
||||
- RubyGems 3.2.33
|
||||
- Vcpkg (build from commit 65be70199)
|
||||
- Vcpkg (build from commit f3a67b0c4)
|
||||
- Yarn 1.22.22
|
||||
|
||||
#### Environment variables
|
||||
@@ -50,30 +48,30 @@
|
||||
### Project Management
|
||||
- Ant 1.10.14
|
||||
- Gradle 8.12
|
||||
- Maven 3.8.7
|
||||
- Maven 3.9.9
|
||||
- sbt 1.10.7
|
||||
|
||||
### Tools
|
||||
- 7zip 24.09
|
||||
- aria2 1.37.0
|
||||
- azcopy 10.27.1
|
||||
- Bazel 8.0.0
|
||||
- Bazel 8.0.1
|
||||
- Bazelisk 1.25.0
|
||||
- Bicep 0.32.4
|
||||
- Bicep 0.33.13
|
||||
- Cabal 3.14.1.1
|
||||
- CMake 3.31.3
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- CMake 3.31.4
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Docker 26.1.3
|
||||
- Docker Compose v2 2.27.1
|
||||
- Docker-wincred 0.8.2
|
||||
- ghc 9.12.1
|
||||
- Git 2.47.1.windows.1
|
||||
- Git LFS 3.6.0
|
||||
- Git 2.47.1.windows.2
|
||||
- Git LFS 3.6.1
|
||||
- ImageMagick 7.1.1-43
|
||||
- InnoSetup 6.3.3
|
||||
- InnoSetup 6.4.0
|
||||
- jq 1.7.1
|
||||
- Kind 0.26.0
|
||||
- Kubectl 1.32.0
|
||||
- Kubectl 1.32.1
|
||||
- Mercurial 5.0
|
||||
- gcc 12.2.0
|
||||
- gdb 11.2
|
||||
@@ -82,7 +80,7 @@
|
||||
- NSIS 3.10
|
||||
- OpenSSL 1.1.1w
|
||||
- Packer 1.11.2
|
||||
- Pulumi 3.144.1
|
||||
- Pulumi 3.147.0
|
||||
- R 4.4.2
|
||||
- Service Fabric SDK 9.1.1436.9590
|
||||
- Stack 3.3.1
|
||||
@@ -95,37 +93,37 @@
|
||||
- zstd 1.5.6
|
||||
|
||||
### CLI Tools
|
||||
- Alibaba Cloud CLI 3.0.244
|
||||
- AWS CLI 2.22.28
|
||||
- Alibaba Cloud CLI 3.0.250
|
||||
- AWS CLI 2.23.6
|
||||
- AWS SAM CLI 1.132.0
|
||||
- AWS Session Manager CLI 1.2.694.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure DevOps CLI extension 1.0.1
|
||||
- GitHub CLI 2.64.0
|
||||
- GitHub CLI 2.65.0
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- bindgen 0.71.1
|
||||
- cargo-audit 0.21.0
|
||||
- cargo-audit 0.21.1
|
||||
- cargo-outdated 0.16.0
|
||||
- cbindgen 0.27.0
|
||||
- Clippy 0.1.83
|
||||
- cbindgen 0.28.0
|
||||
- Clippy 0.1.84
|
||||
- Rustfmt 1.8.0
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 131.0.6778.205
|
||||
- Chrome Driver 131.0.6778.204
|
||||
- Microsoft Edge 131.0.2903.112
|
||||
- Microsoft Edge Driver 131.0.2903.112
|
||||
- Mozilla Firefox 133.0.3
|
||||
- Google Chrome 132.0.6834.111
|
||||
- Chrome Driver 132.0.6834.110
|
||||
- Microsoft Edge 132.0.2957.127
|
||||
- Microsoft Edge Driver 132.0.2957.127
|
||||
- Mozilla Firefox 134.0.2
|
||||
- Gecko Driver 0.35.0
|
||||
- IE Driver 4.14.0.0
|
||||
- Selenium server 4.27.0
|
||||
- Selenium server 4.28.0
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
@@ -138,10 +136,10 @@
|
||||
### Java
|
||||
| Version | Environment Variable |
|
||||
| ------------------- | -------------------- |
|
||||
| 8.0.432+6 (default) | JAVA_HOME_8_X64 |
|
||||
| 11.0.25+9 | JAVA_HOME_11_X64 |
|
||||
| 17.0.13+11 | JAVA_HOME_17_X64 |
|
||||
| 21.0.5+11.0 | JAVA_HOME_21_X64 |
|
||||
| 8.0.442+6 (default) | JAVA_HOME_8_X64 |
|
||||
| 11.0.26+4 | JAVA_HOME_11_X64 |
|
||||
| 17.0.14+7 | JAVA_HOME_17_X64 |
|
||||
| 21.0.6+7.0 | JAVA_HOME_21_X64 |
|
||||
|
||||
### Shells
|
||||
| Name | Target |
|
||||
@@ -165,14 +163,14 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
#### Go
|
||||
- 1.20.14
|
||||
- 1.21.13
|
||||
- 1.22.10
|
||||
- 1.23.4
|
||||
- 1.22.11
|
||||
- 1.23.5
|
||||
|
||||
#### Node.js
|
||||
- 16.20.2
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 18.20.6
|
||||
- 20.18.2
|
||||
- 22.13.1
|
||||
|
||||
#### Python
|
||||
- 3.8.10
|
||||
@@ -180,6 +178,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
- 3.10.11
|
||||
- 3.11.9
|
||||
- 3.12.8
|
||||
- 3.13.1
|
||||
|
||||
#### PyPy
|
||||
- 2.7.18 [PyPy 7.3.17]
|
||||
@@ -192,6 +191,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
- 3.0.7
|
||||
- 3.1.6
|
||||
- 3.2.6
|
||||
- 3.3.7
|
||||
|
||||
### Databases
|
||||
|
||||
@@ -199,7 +199,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Property | Value |
|
||||
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| ServiceName | postgresql-x64-14 |
|
||||
| Version | 14.12 |
|
||||
| Version | 14.15 |
|
||||
| ServiceStatus | Stopped |
|
||||
| ServiceStartType | Disabled |
|
||||
| EnvironmentVariables | PGBIN=C:\Program Files\PostgreSQL\14\bin <br> PGDATA=C:\Program Files\PostgreSQL\14\data <br> PGROOT=C:\Program Files\PostgreSQL\14 |
|
||||
@@ -215,7 +215,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
### Database tools
|
||||
- Azure CosmosDb Emulator 2.14.21.0
|
||||
- DacFx 162.5.57.1
|
||||
- MySQL 8.0.40.0
|
||||
- MySQL 8.0.41.0
|
||||
- SQL OLEDB Driver 18.7.4.0
|
||||
- SQLPS 1.0
|
||||
|
||||
@@ -228,7 +228,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
### Visual Studio Enterprise 2022
|
||||
| Name | Version | Path |
|
||||
| ----------------------------- | --------------- | -------------------------------------------------------- |
|
||||
| Visual Studio Enterprise 2022 | 17.12.35527.113 | C:\Program Files\Microsoft Visual Studio\2022\Enterprise |
|
||||
| Visual Studio Enterprise 2022 | 17.12.35707.178 | C:\Program Files\Microsoft Visual Studio\2022\Enterprise |
|
||||
|
||||
#### Workloads, components and extensions
|
||||
| Package | Version |
|
||||
@@ -254,7 +254,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Component.Unreal | 17.12.35410.122 |
|
||||
| Component.Unreal.Android | 17.12.35410.122 |
|
||||
| Component.Unreal.Ide | 17.12.35410.122 |
|
||||
| Component.VisualStudio.GitHub.Copilot | 17.12.35527.66 |
|
||||
| Component.VisualStudio.GitHub.Copilot | 17.12.35707.178 |
|
||||
| Component.VSInstallerProjects2022 | 2.0.1 |
|
||||
| Component.WixToolset.VisualStudioExtension.Dev17 | 1.0.0.22 |
|
||||
| Component.WixToolset.VisualStudioExtension.Schemas3 | 1.0.0.22 |
|
||||
@@ -262,9 +262,9 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Component.Xamarin.RemotedSimulator | 17.12.35410.122 |
|
||||
| ios | 18.1.9163.0 |
|
||||
| maccatalyst | 18.1.9163.0 |
|
||||
| maui.blazor | 9.0.0.11787 |
|
||||
| maui.core | 9.0.0.11787 |
|
||||
| maui.windows | 9.0.0.11787 |
|
||||
| maui.blazor | 9.0.14.12048 |
|
||||
| maui.core | 9.0.14.12048 |
|
||||
| maui.windows | 9.0.14.12048 |
|
||||
| Microsoft.Component.Azure.DataLake.Tools | 17.12.35410.122 |
|
||||
| Microsoft.Component.ClickOnce | 17.12.35410.122 |
|
||||
| Microsoft.Component.CodeAnalysis.SDK | 17.12.35410.122 |
|
||||
@@ -289,22 +289,21 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Microsoft.Net.ComponentGroup.4.8.DeveloperTools | 17.12.35410.122 |
|
||||
| Microsoft.Net.ComponentGroup.DevelopmentPrerequisites | 17.12.35410.122 |
|
||||
| Microsoft.Net.ComponentGroup.TargetingPacks.Common | 17.12.35410.122 |
|
||||
| microsoft.net.runtime.android | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.android.aot | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.android.aot.net8 | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.android.net8 | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.ios | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.ios.net8 | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.maccatalyst | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.maccatalyst.net8 | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.mono.tooling | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.mono.tooling.net8 | 9.0.24.52809 |
|
||||
| microsoft.net.sdk.emscripten | 9.0.11.2802 |
|
||||
| microsoft.net.runtime.android | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.android.aot | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.android.aot.net8 | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.android.net8 | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.ios | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.ios.net8 | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.maccatalyst | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.maccatalyst.net8 | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.mono.tooling | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.mono.tooling.net8 | 9.0.124.61010 |
|
||||
| microsoft.net.sdk.emscripten | 9.0.11.10403 |
|
||||
| Microsoft.NetCore.Component.DevelopmentTools | 17.12.35410.122 |
|
||||
| Microsoft.NetCore.Component.Runtime.6.0 | 17.12.35504.99 |
|
||||
| Microsoft.NetCore.Component.Runtime.8.0 | 17.12.35504.99 |
|
||||
| Microsoft.NetCore.Component.Runtime.9.0 | 17.12.35527.66 |
|
||||
| Microsoft.NetCore.Component.SDK | 17.12.35527.66 |
|
||||
| Microsoft.NetCore.Component.Runtime.8.0 | 17.12.35707.178 |
|
||||
| Microsoft.NetCore.Component.Runtime.9.0 | 17.12.35707.178 |
|
||||
| Microsoft.NetCore.Component.SDK | 17.12.35707.178 |
|
||||
| Microsoft.NetCore.Component.Web | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.AppInsights.Tools | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.AspNet | 17.12.35410.122 |
|
||||
@@ -415,7 +414,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Microsoft.VisualStudio.Component.Windows11SDK.22621 | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.Windows11SDK.26100 | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.Windows11Sdk.WindowsPerformanceToolkit | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.WindowsAppSdkSupport.CSharp | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.WindowsAppSdkSupport.CSharp | 17.12.35707.178 |
|
||||
| Microsoft.VisualStudio.Component.Workflow | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.WslDebugging | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.ComponentGroup.ArchitectureTools.Native | 17.12.35410.122 |
|
||||
@@ -461,11 +460,11 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Microsoft.VisualStudio.Workload.Python | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Workload.Universal | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Workload.VisualStudioExtension | 17.12.35410.122 |
|
||||
| runtimes.ios | 9.0.24.52809 |
|
||||
| runtimes.ios.net8 | 9.0.24.52809 |
|
||||
| runtimes.maccatalyst | 9.0.24.52809 |
|
||||
| runtimes.maccatalyst.net8 | 9.0.24.52809 |
|
||||
| wasm.tools | 9.0.24.52809 |
|
||||
| runtimes.ios | 9.0.124.61010 |
|
||||
| runtimes.ios.net8 | 9.0.124.61010 |
|
||||
| runtimes.maccatalyst | 9.0.124.61010 |
|
||||
| runtimes.maccatalyst.net8 | 9.0.124.61010 |
|
||||
| wasm.tools | 9.0.124.61010 |
|
||||
| ProBITools.MicrosoftAnalysisServicesModelingProjects2022 | 3.0.4 |
|
||||
| ProBITools.MicrosoftReportProjectsforVisualStudio2022 | 3.0.1 |
|
||||
| SSIS.MicrosoftDataToolsIntegrationServices | 1.5 |
|
||||
@@ -496,27 +495,27 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
- 10.0.26100.0
|
||||
|
||||
### .NET Core Tools
|
||||
- .NET Core SDK: 6.0.136, 6.0.203, 6.0.321, 6.0.428, 7.0.120, 7.0.203, 7.0.317, 7.0.410, 8.0.111, 8.0.206, 8.0.307, 8.0.404, 9.0.101
|
||||
- .NET Core SDK: 6.0.136, 6.0.203, 6.0.321, 6.0.428, 8.0.112, 8.0.206, 8.0.308, 8.0.405, 9.0.102
|
||||
- .NET Framework: 4.7.2, 4.8, 4.8.1
|
||||
- Microsoft.AspNetCore.App: 6.0.5, 6.0.26, 6.0.35, 6.0.36, 7.0.5, 7.0.20, 8.0.6, 8.0.11, 9.0.0
|
||||
- Microsoft.NETCore.App: 6.0.5, 6.0.26, 6.0.35, 6.0.36, 7.0.5, 7.0.20, 8.0.6, 8.0.11, 9.0.0
|
||||
- Microsoft.WindowsDesktop.App: 6.0.5, 6.0.26, 6.0.36, 7.0.5, 7.0.20, 8.0.6, 8.0.11, 9.0.0
|
||||
- nbgv 3.7.112+63bbe780b0
|
||||
- Microsoft.AspNetCore.App: 6.0.5, 6.0.26, 6.0.36, 6.0.37, 8.0.6, 8.0.12, 9.0.1
|
||||
- Microsoft.NETCore.App: 6.0.5, 6.0.26, 6.0.36, 6.0.37, 8.0.6, 8.0.12, 9.0.1
|
||||
- Microsoft.WindowsDesktop.App: 6.0.5, 6.0.26, 6.0.36, 8.0.6, 8.0.12, 9.0.1
|
||||
- nbgv 3.7.115+d31f50f4d1
|
||||
|
||||
### PowerShell Tools
|
||||
- PowerShell 7.4.6
|
||||
- PowerShell 7.4.7
|
||||
|
||||
#### Powershell Modules
|
||||
- Az: 12.1.0
|
||||
- Azure: 2.1.0 (Default), 5.3.0
|
||||
- AzureRM: 2.1.0 (Default), 6.13.1
|
||||
- Azure (Cached): 3.8.0.zip, 4.2.1.zip, 5.1.1.zip
|
||||
- AzureRM (Cached): 3.8.0.zip, 4.2.1.zip, 5.1.1.zip, 6.7.0.zip
|
||||
- AWSPowershell: 4.1.729
|
||||
- Azure: 5.3.0
|
||||
- AzureRM: 6.13.1
|
||||
- Azure (Cached): 5.1.1.zip
|
||||
- AzureRM (Cached): 6.7.0.zip
|
||||
- AWSPowershell: 4.1.743
|
||||
- DockerMsftProvider: 1.0.0.8
|
||||
- MarkdownPS: 1.10
|
||||
- Microsoft.Graph: 2.25.0
|
||||
- Pester: 3.4.0, 5.6.1
|
||||
- Pester: 3.4.0, 5.7.1
|
||||
- PowerShellGet: 1.0.0.1, 2.2.5
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
- PSWindowsUpdate: 2.2.1.5
|
||||
@@ -532,8 +531,8 @@ All other versions are saved but not installed.
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 8.0 |
|
||||
| Android Emulator | 35.2.10 |
|
||||
| Android SDK Build-tools | 35.0.0<br>34.0.0<br>33.0.0 33.0.1 33.0.2 33.0.3<br>32.0.0<br>31.0.0 |
|
||||
| Android Emulator | 35.3.11 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1<br>34.0.0<br>33.0.0 33.0.1 33.0.2 33.0.3<br>32.0.0<br>31.0.0 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3)<br>android-32 (rev 1)<br>android-31 (rev 1) |
|
||||
| Android SDK Platform-Tools | 35.0.2 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
@@ -555,9 +554,9 @@ All other versions are saved but not installed.
|
||||
### Cached Docker images
|
||||
| Repository:Tag | Digest | Created |
|
||||
| ------------------------------------------------------------------------- | ------------------------------------------------------------------------ | ---------- |
|
||||
| mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2022 | sha256:c49042631c866daf7ce7337cff2e8c881c8b15e3be6abfed03e0b22b685d4b49 | 2024-12-10 |
|
||||
| mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2022 | sha256:81845776459f460d3e50bc4e3fcb0db08f9f36722f5314c4281da3951cbb2fd4 | 2024-12-10 |
|
||||
| mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022 | sha256:5dfdecd584d2f7c6852e4e807b6bb308da8f8350a0131ddef3cb0a0e6237523c | 2024-12-10 |
|
||||
| mcr.microsoft.com/windows/nanoserver:ltsc2022 | sha256:eb59dfa1056e41b65cb12b679280e29f10d64e2b569b877710e227a77fef223f | 2024-12-05 |
|
||||
| mcr.microsoft.com/windows/servercore:ltsc2022 | sha256:cd409960f9b87fcc02e1c236fea3852e1323ffb16d9522bf693330ebf878f5c0 | 2024-12-05 |
|
||||
| mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2022 | sha256:84079c734ab5aec702409ef7967ec47af9468c56ff4046882239cabacda78097 | 2025-01-14 |
|
||||
| mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2022 | sha256:a2ca87058709f998d60ab5a49bd05db18005363b3368d0061bb48f99ee1658d5 | 2025-01-14 |
|
||||
| mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022 | sha256:142e06b06dd9922d1e259c83cc057997a3ae71164ef7589bb3a2aa4f8690b9d8 | 2025-01-14 |
|
||||
| mcr.microsoft.com/windows/nanoserver:ltsc2022 | sha256:55474b390b2d25e98450356b381d6dc422e15fb79808970f724c0f34df0b217e | 2025-01-12 |
|
||||
| mcr.microsoft.com/windows/servercore:ltsc2022 | sha256:a7faef3c463f53996b00abff1cad6e979c75230bf9a55fdce77fe99c764971a5 | 2025-01-12 |
|
||||
|
||||
|
||||
@@ -2,14 +2,13 @@
|
||||
|-|
|
||||
| [[Windows ] Breaking change : PHP 8.3.* version will be updated to PHP 8.4.* from January 31,2025](https://github.com/actions/runner-images/issues/11256) |
|
||||
| [Windows Server 2025 is now available](https://github.com/actions/runner-images/issues/11228) |
|
||||
| [[Windows] Breaking change : Docker Engine Version 26.* will be updated to Docker Engine Version 27.* from January 17,2025](https://github.com/actions/runner-images/issues/11104) |
|
||||
| [[Windows] Breaking change : Docker Engine Version 26.* will be updated to Docker Engine Version 27.* from February 07,2025](https://github.com/actions/runner-images/issues/11104) |
|
||||
| [[Windows & Ubuntu] Breaking change : Maven 3.8.* version will be updated to Maven 3.9.* from January 17,2025](https://github.com/actions/runner-images/issues/11093) |
|
||||
| [[Windows & Ubuntu] .NET 7.x will be removed from the images on January 17,2025](https://github.com/actions/runner-images/issues/10894) |
|
||||
| [[Windows & Ubuntu] Python 3.7.x will be removed from January 10 ,2025](https://github.com/actions/runner-images/issues/10893) |
|
||||
***
|
||||
# Windows Server 2025
|
||||
- OS Version: 10.0.26100 Build 2605
|
||||
- Image Version: 20250105.1.0
|
||||
- OS Version: 10.0.26100 Build 2894
|
||||
- Image Version: 20250120.2.0
|
||||
|
||||
## Windows features
|
||||
- Windows Subsystem for Linux (WSLv1): Enabled
|
||||
@@ -23,23 +22,23 @@
|
||||
- Julia 1.10.5
|
||||
- Kotlin 2.1.0
|
||||
- LLVM 19.1.5
|
||||
- Node 22.12.0
|
||||
- Node 22.13.0
|
||||
- Perl 5.40.0
|
||||
- PHP 8.3.15
|
||||
- PHP 8.3.16
|
||||
- Python 3.9.13
|
||||
- Ruby 3.3.6
|
||||
- Ruby 3.3.7
|
||||
|
||||
### Package Management
|
||||
- Chocolatey 2.4.1
|
||||
- Composer 2.8.4
|
||||
- Helm 3.16.3
|
||||
- Helm 3.16.4
|
||||
- Miniconda 24.11.1 (pre-installed on the image but not added to PATH)
|
||||
- NPM 10.9.0
|
||||
- NuGet 6.12.1.1
|
||||
- NPM 10.9.2
|
||||
- NuGet 6.12.2.1
|
||||
- pip 24.3.1 (python 3.9)
|
||||
- Pipx 1.7.1
|
||||
- RubyGems 3.5.22
|
||||
- Vcpkg (build from commit 65be70199)
|
||||
- Vcpkg (build from commit cf035d991)
|
||||
- Yarn 1.22.22
|
||||
|
||||
#### Environment variables
|
||||
@@ -58,29 +57,29 @@
|
||||
- 7zip 24.09
|
||||
- aria2 1.37.0
|
||||
- azcopy 10.27.1
|
||||
- Bazel 8.0.0
|
||||
- Bazel 8.0.1
|
||||
- Bazelisk 1.25.0
|
||||
- Bicep 0.32.4
|
||||
- Cabal 3.14.1.1
|
||||
- CMake 3.31.3
|
||||
- CodeQL Action Bundle 2.20.0
|
||||
- CMake 3.31.4
|
||||
- CodeQL Action Bundle 2.20.1
|
||||
- Docker 26.1.3
|
||||
- Docker Compose v2 2.27.1
|
||||
- Docker-wincred 0.8.2
|
||||
- ghc 9.12.1
|
||||
- Git 2.47.1.windows.1
|
||||
- Git LFS 3.6.0
|
||||
- Git 2.47.1.windows.2
|
||||
- Git LFS 3.6.1
|
||||
- ImageMagick 7.1.1-43
|
||||
- jq 1.7.1
|
||||
- Kind 0.26.0
|
||||
- Kubectl 1.32.0
|
||||
- Kubectl 1.32.1
|
||||
- gcc 14.2.0
|
||||
- gdb 14.2
|
||||
- GNU Binutils 2.42
|
||||
- GNU Binutils 2.43
|
||||
- Newman 6.2.1
|
||||
- OpenSSL 3.4.0
|
||||
- Packer 1.11.2
|
||||
- Pulumi 3.144.1
|
||||
- Pulumi 3.146.0
|
||||
- R 4.4.2
|
||||
- Service Fabric SDK 10.1.2493.9590
|
||||
- Stack 3.3.1
|
||||
@@ -92,32 +91,32 @@
|
||||
- zstd 1.5.6
|
||||
|
||||
### CLI Tools
|
||||
- AWS CLI 2.22.28
|
||||
- AWS CLI 2.23.2
|
||||
- AWS SAM CLI 1.132.0
|
||||
- AWS Session Manager CLI 1.2.694.0
|
||||
- Azure CLI 2.67.0
|
||||
- Azure CLI 2.68.0
|
||||
- Azure DevOps CLI extension 1.0.1
|
||||
- GitHub CLI 2.64.0
|
||||
- GitHub CLI 2.65.0
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.83.0
|
||||
- Rust 1.83.0
|
||||
- Rustdoc 1.83.0
|
||||
- Cargo 1.84.0
|
||||
- Rust 1.84.0
|
||||
- Rustdoc 1.84.0
|
||||
- Rustup 1.27.1
|
||||
|
||||
#### Packages
|
||||
- Clippy 0.1.83
|
||||
- Clippy 0.1.84
|
||||
- Rustfmt 1.8.0
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 131.0.6778.205
|
||||
- Chrome Driver 131.0.6778.204
|
||||
- Microsoft Edge 131.0.2903.112
|
||||
- Microsoft Edge Driver 131.0.2903.112
|
||||
- Mozilla Firefox 133.0.3
|
||||
- Google Chrome 132.0.6834.84
|
||||
- Chrome Driver 132.0.6834.83
|
||||
- Microsoft Edge 132.0.2957.115
|
||||
- Microsoft Edge Driver 132.0.2957.115
|
||||
- Mozilla Firefox 134.0.1
|
||||
- Gecko Driver 0.35.0
|
||||
- IE Driver 4.14.0.0
|
||||
- Selenium server 4.27.0
|
||||
- Selenium server 4.28.0
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
@@ -162,7 +161,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
#### Node.js
|
||||
- 18.20.5
|
||||
- 20.18.1
|
||||
- 22.12.0
|
||||
- 22.13.0
|
||||
|
||||
#### Python
|
||||
- 3.9.13
|
||||
@@ -178,7 +177,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
#### Ruby
|
||||
- 3.1.6
|
||||
- 3.2.6
|
||||
- 3.3.6
|
||||
- 3.3.7
|
||||
|
||||
### Databases
|
||||
|
||||
@@ -205,7 +204,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
- MySQL 8.0.40.0
|
||||
- SQL OLEDB Driver 18.7.4.0
|
||||
- SQLPS 1.0
|
||||
- MongoDB Shell (mongosh) 2.3.7
|
||||
- MongoDB Shell (mongosh) 2.3.8
|
||||
|
||||
### Web Servers
|
||||
| Name | Version | ConfigFile | ServiceName | ServiceStatus | ListenPort |
|
||||
@@ -216,7 +215,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
### Visual Studio Enterprise 2022
|
||||
| Name | Version | Path |
|
||||
| ----------------------------- | --------------- | -------------------------------------------------------- |
|
||||
| Visual Studio Enterprise 2022 | 17.12.35527.113 | C:\Program Files\Microsoft Visual Studio\2022\Enterprise |
|
||||
| Visual Studio Enterprise 2022 | 17.12.35707.178 | C:\Program Files\Microsoft Visual Studio\2022\Enterprise |
|
||||
|
||||
#### Workloads, components and extensions
|
||||
| Package | Version |
|
||||
@@ -240,16 +239,16 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Component.OpenJDK | 17.12.35410.122 |
|
||||
| Component.UnityEngine.x64 | 17.12.35410.122 |
|
||||
| Component.Unreal.Ide | 17.12.35410.122 |
|
||||
| Component.VisualStudio.GitHub.Copilot | 17.12.35527.66 |
|
||||
| Component.VisualStudio.GitHub.Copilot | 17.12.35707.178 |
|
||||
| Component.VSInstallerProjects2022 | 2.0.1 |
|
||||
| Component.WixToolset.VisualStudioExtension.Dev17 | 1.0.0.22 |
|
||||
| Component.WixToolset.VisualStudioExtension.Schemas3 | 1.0.0.22 |
|
||||
| Component.Xamarin.RemotedSimulator | 17.12.35410.122 |
|
||||
| ios | 18.1.9163.0 |
|
||||
| maccatalyst | 18.1.9163.0 |
|
||||
| maui.blazor | 9.0.0.11787 |
|
||||
| maui.core | 9.0.0.11787 |
|
||||
| maui.windows | 9.0.0.11787 |
|
||||
| maui.blazor | 9.0.14.12048 |
|
||||
| maui.core | 9.0.14.12048 |
|
||||
| maui.windows | 9.0.14.12048 |
|
||||
| Microsoft.Component.Azure.DataLake.Tools | 17.12.35410.122 |
|
||||
| Microsoft.Component.ClickOnce | 17.12.35410.122 |
|
||||
| Microsoft.Component.CodeAnalysis.SDK | 17.12.35410.122 |
|
||||
@@ -273,22 +272,21 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Microsoft.Net.ComponentGroup.4.8.DeveloperTools | 17.12.35410.122 |
|
||||
| Microsoft.Net.ComponentGroup.DevelopmentPrerequisites | 17.12.35410.122 |
|
||||
| Microsoft.Net.ComponentGroup.TargetingPacks.Common | 17.12.35410.122 |
|
||||
| microsoft.net.runtime.android | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.android.aot | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.android.aot.net8 | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.android.net8 | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.ios | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.ios.net8 | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.maccatalyst | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.maccatalyst.net8 | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.mono.tooling | 9.0.24.52809 |
|
||||
| microsoft.net.runtime.mono.tooling.net8 | 9.0.24.52809 |
|
||||
| microsoft.net.sdk.emscripten | 9.0.11.2802 |
|
||||
| microsoft.net.runtime.android | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.android.aot | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.android.aot.net8 | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.android.net8 | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.ios | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.ios.net8 | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.maccatalyst | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.maccatalyst.net8 | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.mono.tooling | 9.0.124.61010 |
|
||||
| microsoft.net.runtime.mono.tooling.net8 | 9.0.124.61010 |
|
||||
| microsoft.net.sdk.emscripten | 9.0.11.10403 |
|
||||
| Microsoft.NetCore.Component.DevelopmentTools | 17.12.35410.122 |
|
||||
| Microsoft.NetCore.Component.Runtime.6.0 | 17.12.35504.99 |
|
||||
| Microsoft.NetCore.Component.Runtime.8.0 | 17.12.35504.99 |
|
||||
| Microsoft.NetCore.Component.Runtime.9.0 | 17.12.35527.66 |
|
||||
| Microsoft.NetCore.Component.SDK | 17.12.35527.66 |
|
||||
| Microsoft.NetCore.Component.Runtime.8.0 | 17.12.35707.178 |
|
||||
| Microsoft.NetCore.Component.Runtime.9.0 | 17.12.35707.178 |
|
||||
| Microsoft.NetCore.Component.SDK | 17.12.35707.178 |
|
||||
| Microsoft.NetCore.Component.Web | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.AppInsights.Tools | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.AspNet | 17.12.35410.122 |
|
||||
@@ -396,7 +394,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Microsoft.VisualStudio.Component.Windows11SDK.22621 | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.Windows11SDK.26100 | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.Windows11Sdk.WindowsPerformanceToolkit | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.WindowsAppSdkSupport.CSharp | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.WindowsAppSdkSupport.CSharp | 17.12.35707.178 |
|
||||
| Microsoft.VisualStudio.Component.Workflow | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Component.WslDebugging | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.ComponentGroup.ArchitectureTools.Native | 17.12.35410.122 |
|
||||
@@ -442,11 +440,11 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Microsoft.VisualStudio.Workload.Python | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Workload.Universal | 17.12.35410.122 |
|
||||
| Microsoft.VisualStudio.Workload.VisualStudioExtension | 17.12.35410.122 |
|
||||
| runtimes.ios | 9.0.24.52809 |
|
||||
| runtimes.ios.net8 | 9.0.24.52809 |
|
||||
| runtimes.maccatalyst | 9.0.24.52809 |
|
||||
| runtimes.maccatalyst.net8 | 9.0.24.52809 |
|
||||
| wasm.tools | 9.0.24.52809 |
|
||||
| runtimes.ios | 9.0.124.61010 |
|
||||
| runtimes.ios.net8 | 9.0.124.61010 |
|
||||
| runtimes.maccatalyst | 9.0.124.61010 |
|
||||
| runtimes.maccatalyst.net8 | 9.0.124.61010 |
|
||||
| wasm.tools | 9.0.124.61010 |
|
||||
| ProBITools.MicrosoftAnalysisServicesModelingProjects2022 | 3.0.4 |
|
||||
| ProBITools.MicrosoftReportProjectsforVisualStudio2022 | 3.0.1 |
|
||||
| SSIS.MicrosoftDataToolsIntegrationServices | 1.5 |
|
||||
@@ -472,23 +470,23 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
- 10.0.26100.0
|
||||
|
||||
### .NET Core Tools
|
||||
- .NET Core SDK: 8.0.111, 8.0.206, 8.0.307, 8.0.404, 9.0.101
|
||||
- .NET Core SDK: 8.0.112, 8.0.206, 8.0.308, 8.0.405, 9.0.102
|
||||
- .NET Framework: 4.8, 4.8.1
|
||||
- Microsoft.AspNetCore.App: 6.0.36, 8.0.6, 8.0.11, 9.0.0
|
||||
- Microsoft.NETCore.App: 6.0.36, 8.0.6, 8.0.11, 9.0.0
|
||||
- Microsoft.WindowsDesktop.App: 6.0.36, 8.0.6, 8.0.11, 9.0.0
|
||||
- nbgv 3.7.112+63bbe780b0
|
||||
- Microsoft.AspNetCore.App: 8.0.6, 8.0.12, 9.0.1
|
||||
- Microsoft.NETCore.App: 8.0.6, 8.0.12, 9.0.1
|
||||
- Microsoft.WindowsDesktop.App: 8.0.6, 8.0.12, 9.0.1
|
||||
- nbgv 3.7.115+d31f50f4d1
|
||||
|
||||
### PowerShell Tools
|
||||
- PowerShell 7.4.6
|
||||
|
||||
#### Powershell Modules
|
||||
- Az: 12.4.0
|
||||
- AWSPowershell: 4.1.729
|
||||
- AWSPowershell: 4.1.739
|
||||
- DockerMsftProvider: 1.0.0.8
|
||||
- MarkdownPS: 1.10
|
||||
- Microsoft.Graph: 2.25.0
|
||||
- Pester: 3.4.0, 5.6.1
|
||||
- Pester: 3.4.0, 5.7.1
|
||||
- PowerShellGet: 1.0.0.1, 2.2.5
|
||||
- PSScriptAnalyzer: 1.23.0
|
||||
- PSWindowsUpdate: 2.2.1.5
|
||||
@@ -499,8 +497,8 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 16.0 |
|
||||
| Android Emulator | 35.2.10 |
|
||||
| Android SDK Build-tools | 35.0.0<br>34.0.0 |
|
||||
| Android Emulator | 35.3.11 |
|
||||
| Android SDK Build-tools | 35.0.0 35.0.1<br>34.0.0 |
|
||||
| Android SDK Platforms | android-35-ext14 (rev 1)<br>android-35 (rev 2)<br>android-34-ext8 (rev 1)<br>android-34-ext12 (rev 1)<br>android-34-ext11 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 3) |
|
||||
| Android SDK Platform-Tools | 35.0.2 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
|
||||
@@ -27,7 +27,7 @@ Write-Host "Expand Microsoft Edge WebDriver archive..."
|
||||
Expand-7ZipArchive -Path $archivePath -DestinationPath $edgeDriverPath
|
||||
|
||||
#Validate the EdgeDriver signature
|
||||
$signatureThumbprint = "0BD8C56733FDCC06F8CB919FF5A200E39B1ACF71"
|
||||
$signatureThumbprint = "7920AC8FB05E0FFFE21E8FF4B4F03093BA6AC16E"
|
||||
Test-FileSignature -Path "$edgeDriverPath\msedgedriver.exe" -ExpectedThumbprint $signatureThumbprint
|
||||
|
||||
Write-Host "Setting the environment variables..."
|
||||
|
||||
@@ -58,13 +58,24 @@ if ($null -ne ($toolsetVersion | Select-String -Pattern '\d+\.\d+\.\d+')) {
|
||||
} while (!$response)
|
||||
}
|
||||
|
||||
if ((Get-ToolsetContent).postgresql.installVcRedist) {
|
||||
# Postgres 14 requires the vs 17 redistributable
|
||||
$vs17RedistUrl = "https://aka.ms/vs/17/release/vc_redist.x64.exe"
|
||||
Install-Binary `
|
||||
-Url $vs17RedistUrl `
|
||||
-InstallArgs @("/install", "/quiet", "/norestart") `
|
||||
-ExpectedSignature (Get-ToolsetContent).postgresql.vcRedistSignature
|
||||
}
|
||||
|
||||
# Return the previous value of ErrorAction and invoke Install-Binary function
|
||||
$ErrorActionPreference = $errorActionOldValue
|
||||
$installerArgs = @("--install_runtimes 0", "--superpassword root", "--enable_acledit 1", "--unattendedmodeui none", "--mode unattended")
|
||||
|
||||
Install-Binary `
|
||||
-Url $installerUrl `
|
||||
-InstallArgs $installerArgs `
|
||||
-ExpectedSignature (Get-ToolsetContent).postgresql.signature
|
||||
-ExpectedSignature (Get-ToolsetContent).postgresql.signature `
|
||||
-InstallerLogPath "$env:TEMP\**\install-postgresql.log"
|
||||
|
||||
# Get Path to pg_ctl.exe
|
||||
$pgPath = (Get-CimInstance Win32_Service -Filter "Name LIKE 'postgresql-%'").PathName
|
||||
|
||||
@@ -30,6 +30,10 @@ function Install-Binary {
|
||||
.PARAMETER ExpectedSHA512Sum
|
||||
The expected SHA512 sum of the binary. If specified, the binary's SHA512 sum is checked before installation.
|
||||
|
||||
.PARAMETER InstallerLogPath
|
||||
The path to the log file which is produced when the installation fails. This can be used for debugging purposes.
|
||||
This is only displayed when the installation fails.
|
||||
|
||||
.EXAMPLE
|
||||
Install-Binary -Url "https://go.microsoft.com/fwlink/p/?linkid=2083338" -Type EXE -InstallArgs ("/features", "+", "/quiet") -ExpectedSignature "A5C7D5B7C838D5F89DDBEDB85B2C566B4CDA881F"
|
||||
#>
|
||||
@@ -46,7 +50,8 @@ function Install-Binary {
|
||||
[String[]] $ExtraInstallArgs,
|
||||
[String[]] $ExpectedSignature,
|
||||
[String] $ExpectedSHA256Sum,
|
||||
[String] $ExpectedSHA512Sum
|
||||
[String] $ExpectedSHA512Sum,
|
||||
[String] $InstallerLogPath
|
||||
)
|
||||
|
||||
if ($PSCmdlet.ParameterSetName -eq "LocalPath") {
|
||||
@@ -122,6 +127,15 @@ function Install-Binary {
|
||||
} else {
|
||||
Write-Host "Installation process returned unexpected exit code: $exitCode"
|
||||
Write-Host "Time elapsed: $installCompleteTime seconds"
|
||||
|
||||
if ($InstallerLogPath) {
|
||||
Write-Host "Searching for logs maching $InstallerLogPath pattern"
|
||||
Get-ChildItem -Recurse -Path $InstallerLogPath | ForEach-Object {
|
||||
Write-Output "Found Installer Log: $InstallerLogPath"
|
||||
Write-Output "File content:"
|
||||
Get-Content -Path $_.FullName
|
||||
}
|
||||
}
|
||||
exit $exitCode
|
||||
}
|
||||
} catch {
|
||||
@@ -438,13 +452,15 @@ function Get-WindowsUpdateStates {
|
||||
19 {
|
||||
$state = "Installed"
|
||||
$title = $event.Properties[0].Value
|
||||
$completedUpdates[$title] = ""
|
||||
$completedUpdates[$title] = $state
|
||||
break
|
||||
}
|
||||
20 {
|
||||
$state = "Failed"
|
||||
$title = $event.Properties[1].Value
|
||||
$completedUpdates[$title] = ""
|
||||
if (-not $completedUpdates.ContainsKey($title)) {
|
||||
$completedUpdates[$title] = $state
|
||||
}
|
||||
break
|
||||
}
|
||||
43 {
|
||||
@@ -454,8 +470,13 @@ function Get-WindowsUpdateStates {
|
||||
}
|
||||
}
|
||||
|
||||
# Skip update started event if it was already completed
|
||||
if ( $state -eq "Running" -and $completedUpdates.ContainsKey($title) ) {
|
||||
# Skip Running update event if it was already completed
|
||||
if ( ($state -eq "Running") -and $completedUpdates.ContainsKey($title) ) {
|
||||
continue
|
||||
}
|
||||
|
||||
# Skip Failed update event if it was already successfully installed
|
||||
if ( ($state -eq "Failed") -and $completedUpdates[$title] -eq "Installed" ) {
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
@@ -7,7 +7,8 @@
|
||||
"versions": [
|
||||
"3.0",
|
||||
"3.1",
|
||||
"3.2"
|
||||
"3.2",
|
||||
"3.3"
|
||||
],
|
||||
"default": "3.0"
|
||||
},
|
||||
@@ -21,7 +22,8 @@
|
||||
"3.9.*",
|
||||
"3.10.*",
|
||||
"3.11.*",
|
||||
"3.12.*"
|
||||
"3.12.*",
|
||||
"3.13.*"
|
||||
],
|
||||
"default": "3.9.*"
|
||||
},
|
||||
@@ -35,7 +37,8 @@
|
||||
"3.9.*",
|
||||
"3.10.*",
|
||||
"3.11.*",
|
||||
"3.12.*"
|
||||
"3.12.*",
|
||||
"3.13.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -93,29 +96,22 @@
|
||||
{
|
||||
"name": "azurerm",
|
||||
"versions": [
|
||||
"2.1.0",
|
||||
"6.13.1"
|
||||
],
|
||||
"zip_versions": [
|
||||
"3.8.0",
|
||||
"4.2.1",
|
||||
"5.1.1",
|
||||
"6.7.0"
|
||||
],
|
||||
"default": "2.1.0"
|
||||
"default": "6.13.1"
|
||||
},
|
||||
{
|
||||
"name": "azure",
|
||||
"versions": [
|
||||
"2.1.0",
|
||||
"5.3.0"
|
||||
],
|
||||
"zip_versions": [
|
||||
"3.8.0",
|
||||
"4.2.1",
|
||||
"5.1.1"
|
||||
],
|
||||
"default": "2.1.0"
|
||||
"default": "5.3.0"
|
||||
},
|
||||
{
|
||||
"name": "az",
|
||||
@@ -247,8 +243,8 @@
|
||||
"subversion" : "16",
|
||||
"edition" : "Enterprise",
|
||||
"channel": "release",
|
||||
"signature": ["F9A7CF9FBE13BAC767F4781061332DA6E8B4E0EE",
|
||||
"245D262748012A4FE6CE8BA6C951A4C4AFBC3E5D"
|
||||
"signature": [
|
||||
"8F985BE8FD256085C90A95D3C74580511A1DB975"
|
||||
],
|
||||
"workloads": [
|
||||
"Component.Dotfuscator",
|
||||
@@ -419,8 +415,8 @@
|
||||
"choco": {
|
||||
"common_packages": [
|
||||
{ "name": "7zip.install" },
|
||||
{ "name": "aria2" },
|
||||
{ "name": "azcopy10" },
|
||||
{ "name": "aria2" },
|
||||
{ "name": "Bicep" },
|
||||
{ "name": "gitversion.portable"},
|
||||
{ "name": "innosetup" },
|
||||
@@ -463,19 +459,16 @@
|
||||
"version": "3.10"
|
||||
},
|
||||
"php": {
|
||||
"version": "8.3"
|
||||
"version": "8.4"
|
||||
},
|
||||
"llvm": {
|
||||
"version": "18"
|
||||
},
|
||||
"postgresql": {
|
||||
"version": "14.12.1",
|
||||
"signature": "698BA51AA27CC31282AACA5055E4B9190BC6C0E9",
|
||||
"pinnedDetails": {
|
||||
"link": "https://github.com/EnterpriseDB/edb-installers/issues/196#issuecomment-2489021239",
|
||||
"reason": "this was pinned due to a downstream issue with the installer",
|
||||
"review-at": "2023-12-31"
|
||||
}
|
||||
"version": "14",
|
||||
"vcRedistSignature": "245D262748012A4FE6CE8BA6C951A4C4AFBC3E5D",
|
||||
"installVcRedist": true
|
||||
},
|
||||
"kotlin": {
|
||||
"version": "latest"
|
||||
|
||||
@@ -7,7 +7,8 @@
|
||||
"versions": [
|
||||
"3.0",
|
||||
"3.1",
|
||||
"3.2"
|
||||
"3.2",
|
||||
"3.3"
|
||||
],
|
||||
"default": "3.0"
|
||||
},
|
||||
@@ -21,7 +22,8 @@
|
||||
"3.9.*",
|
||||
"3.10.*",
|
||||
"3.11.*",
|
||||
"3.12.*"
|
||||
"3.12.*",
|
||||
"3.13.*"
|
||||
],
|
||||
"default": "3.9.*"
|
||||
},
|
||||
@@ -35,7 +37,8 @@
|
||||
"3.9.*",
|
||||
"3.10.*",
|
||||
"3.11.*",
|
||||
"3.12.*"
|
||||
"3.12.*",
|
||||
"3.13.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -92,29 +95,22 @@
|
||||
{
|
||||
"name": "azurerm",
|
||||
"versions": [
|
||||
"2.1.0",
|
||||
"6.13.1"
|
||||
],
|
||||
"zip_versions": [
|
||||
"3.8.0",
|
||||
"4.2.1",
|
||||
"5.1.1",
|
||||
"6.7.0"
|
||||
],
|
||||
"default": "2.1.0"
|
||||
"default": "6.13.1"
|
||||
},
|
||||
{
|
||||
"name": "azure",
|
||||
"versions": [
|
||||
"2.1.0",
|
||||
"5.3.0"
|
||||
],
|
||||
"zip_versions": [
|
||||
"3.8.0",
|
||||
"4.2.1",
|
||||
"5.1.1"
|
||||
],
|
||||
"default": "2.1.0"
|
||||
"default": "5.3.0"
|
||||
},
|
||||
{
|
||||
"name": "az",
|
||||
@@ -376,17 +372,13 @@
|
||||
"version": "18"
|
||||
},
|
||||
"php": {
|
||||
"version": "8.3"
|
||||
"version": "8.4"
|
||||
},
|
||||
"postgresql": {
|
||||
"version": "14.12.1",
|
||||
"signature": "698BA51AA27CC31282AACA5055E4B9190BC6C0E9",
|
||||
"pinnedDetails": {
|
||||
"link": "https://github.com/actions/runner-images-internal/pull/6702",
|
||||
"reason": "Meaningful reason must be added at next update.",
|
||||
"review-at": "2025-06-01",
|
||||
"type": "preexisting-pinned-version-without-reason"
|
||||
}
|
||||
"version": "14",
|
||||
"vcRedistSignature": "245D262748012A4FE6CE8BA6C951A4C4AFBC3E5D",
|
||||
"installVcRedist": true
|
||||
},
|
||||
"kotlin": {
|
||||
"version": "latest"
|
||||
|
||||
@@ -314,7 +314,7 @@
|
||||
"version": "19"
|
||||
},
|
||||
"php": {
|
||||
"version": "8.3"
|
||||
"version": "8.4"
|
||||
},
|
||||
"postgresql": {
|
||||
"version": "17",
|
||||
|
||||
Reference in New Issue
Block a user