Compare commits

..
119 changed files with 1684 additions and 3160 deletions
+7 -5
View File
@@ -10,13 +10,15 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v3
- name: Create release for ${{ github.event.client_payload.ReleaseBranchName }}
uses: ncipollo/release-action@v1.14.0
uses: actions/create-release@v1.1.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag: ${{ github.event.client_payload.ReleaseBranchName }}
name: ${{ github.event.client_payload.ReleaseTitle }}
tag_name: ${{ github.event.client_payload.ReleaseBranchName }}
release_name: ${{ github.event.client_payload.ReleaseTitle }}
body: ${{ github.event.client_payload.ReleaseBody }}
prerelease: ${{ github.event.client_payload.Prerelease }}
commit: ${{ github.event.client_payload.Commitish }}
commitish: ${{ github.event.client_payload.Commitish }}
+5 -5
View File
@@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v3
with:
fetch-depth: 0
@@ -22,11 +22,11 @@ jobs:
- name: Create pull request for ${{ github.event.client_payload.ReleaseBranchName }}
id: create-pr
uses: actions/github-script@v7
uses: actions/github-script@v2
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
let response = await github.rest.pulls.create({
let response = await github.pulls.create({
owner: context.repo.owner,
repo: context.repo.repo,
title: "${{ github.event.client_payload.PullRequestTitle }}",
@@ -37,11 +37,11 @@ jobs:
return response.data.number
- name: Request reviewers
uses: actions/github-script@v7
uses: actions/github-script@v2
with:
github-token: ${{secrets.PRAPPROVAL_SECRET}}
script: |
github.rest.pulls.requestReviewers({
github.pulls.requestReviewers({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: ${{ steps.create-pr.outputs.result }},
+2 -2
View File
@@ -58,7 +58,7 @@ jobs:
run: curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b D:/syft
- name: Install SYFT tool on Ubuntu or macOS
if: ${{ runner.os != 'Windows' }}
run: curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b /usr/local/bin v0.100.0
run: curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b /usr/local/bin
#Running section.
- name: Run SYFT on Windows
if: ${{ runner.os == 'Windows' }}
@@ -74,7 +74,7 @@ jobs:
- name: Compress SBOM file
run: Compress-Archive sbom.json sbom.json.zip
#Upload artifact action
- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v3
with:
name: sbom-${{ github.event.client_payload.agentSpec }}-${{ github.event.client_payload.imageVersion }}
path: sbom.json.zip
+5 -5
View File
@@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v3
with:
fetch-depth: 0
@@ -24,11 +24,11 @@ jobs:
sleep 30
- name: Approve pull request by GitHub-Actions bot
uses: actions/github-script@v7
uses: actions/github-script@v2
with:
github-token: ${{secrets.PRAPPROVAL_SECRET}}
script: |
github.rest.pulls.createReview({
github.pulls.createReview({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: ${{ github.event.client_payload.PullRequestNumber }},
@@ -36,11 +36,11 @@ jobs:
});
- name: Merge pull request for ${{ github.event.client_payload.ReleaseBranchName }}
uses: actions/github-script@v7
uses: actions/github-script@v2
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
github.rest.pulls.merge({
github.pulls.merge({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: ${{ github.event.client_payload.PullRequestNumber }},
+4 -4
View File
@@ -10,19 +10,19 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v3
- name: Update release for ${{ github.event.client_payload.ReleaseBranchName }}
uses: actions/github-script@v7
uses: actions/github-script@v2
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
const response = await github.rest.repos.getReleaseByTag({
const response = await github.repos.getReleaseByTag({
owner: context.repo.owner,
repo: context.repo.repo,
tag: "${{ github.event.client_payload.ReleaseBranchName }}"
});
github.rest.repos.updateRelease({
github.repos.updateRelease({
owner: context.repo.owner,
repo: context.repo.repo,
release_id: response.data.id,
+12 -23
View File
@@ -19,26 +19,22 @@ To build a VM machine from this repo's source, see the [instructions](docs/creat
## Available Images
| Image | YAML Label | Included Software | Rollout Status of Latest Image Release |
| --------------------|---------------------|--------------------|--------------------|
| Ubuntu 24.04 | `ubuntu-24.04` | [ubuntu-24.04] | ![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fmikhailkoliada%2F35b243dd6e217d041fe3dfa5b4e2e2ed%2Fraw%2Fubuntu24.json) |
| Ubuntu 22.04 | `ubuntu-latest` or `ubuntu-22.04` | [ubuntu-22.04] | ![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fmikhailkoliada%2F35b243dd6e217d041fe3dfa5b4e2e2ed%2Fraw%2Fubuntu22.json) |
| Ubuntu 20.04 | `ubuntu-20.04` | [ubuntu-20.04] | ![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fmikhailkoliada%2F35b243dd6e217d041fe3dfa5b4e2e2ed%2Fraw%2Fubuntu20.json) |
| macOS 14 | `macos-latest-large` or `macos-14-large`| [macOS-14] | ![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fmikhailkoliada%2F35b243dd6e217d041fe3dfa5b4e2e2ed%2Fraw%2Fmacos-14.json) |
| macOS 14 Arm64 |`macos-latest`, `macos-14`, `macos-latest-xlarge` or `macos-14-xlarge`| [macOS-14-arm64] | ![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fmikhailkoliada%2F35b243dd6e217d041fe3dfa5b4e2e2ed%2Fraw%2Fmacos-14-arm64.json) |
| macOS 13 | `macos-13` or `macos-13-large` | [macOS-13] | ![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fmikhailkoliada%2F35b243dd6e217d041fe3dfa5b4e2e2ed%2Fraw%2Fmacos-13.json) |
| macOS 13 Arm64 | `macos-13-xlarge` | [macOS-13-arm64] | ![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fmikhailkoliada%2F35b243dd6e217d041fe3dfa5b4e2e2ed%2Fraw%2Fmacos-13-arm64.json) |
| macOS 12 | `macos-12` or `macos-12-large`| [macOS-12] | ![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fmikhailkoliada%2F35b243dd6e217d041fe3dfa5b4e2e2ed%2Fraw%2FmacOS-12.json) |
| macOS 11 [deprecated] | `macos-11`| [macOS-11] | ![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fmikhailkoliada%2F35b243dd6e217d041fe3dfa5b4e2e2ed%2Fraw%2FmacOS-11.json) |
| Windows Server 2022 | `windows-latest` or `windows-2022` | [windows-2022] | ![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fmikhailkoliada%2F35b243dd6e217d041fe3dfa5b4e2e2ed%2Fraw%2Fwin22.json) |
| Windows Server 2019 | `windows-2019` | [windows-2019] | ![Endpoint Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fgist.githubusercontent.com%2Fmikhailkoliada%2F35b243dd6e217d041fe3dfa5b4e2e2ed%2Fraw%2Fwin19.json) |
| Image | YAML Label | Included Software |
| --------------------|---------------------|--------------------|
| Ubuntu 22.04 | `ubuntu-latest` or `ubuntu-22.04` | [ubuntu-22.04] |
| Ubuntu 20.04 | `ubuntu-20.04` | [ubuntu-20.04] |
| macOS 14 [beta] | `macos-14`, `macos-14-large`, or `macos-14-xlarge`| [macOS-14] |
| macOS 13 | `macos-13`, `macos-13-large`, or `macos-13-xlarge`| [macOS-13] |
| macOS 12 | `macos-latest`,`macos-12`, `macos-latest-large`, or `macos-12-large`| [macOS-12] |
| macOS 11 [deprecated] | `macos-11`| [macOS-11] |
| Windows Server 2022 | `windows-latest` or `windows-2022` | [windows-2022] |
| Windows Server 2019 | `windows-2019` | [windows-2019] |
### Label scheme
- In general the `-latest` label is used for the latest OS image version that is GA
- Before moving the`-latest` label to a new OS version we will announce the change and give sufficient lead time for users to update their workflows
[ubuntu-24.04]: https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2404-Readme.md
[ubuntu-22.04]: https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2204-Readme.md
[ubuntu-20.04]: https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2004-Readme.md
[windows-2022]: https://github.com/actions/runner-images/blob/main/images/windows/Windows2022-Readme.md
@@ -46,9 +42,7 @@ To build a VM machine from this repo's source, see the [instructions](docs/creat
[macOS-11]: https://github.com/actions/runner-images/blob/main/images/macos/macos-11-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
[macOS-14-arm64]: https://github.com/actions/runner-images/blob/main/images/macos/macos-14-arm64-Readme.md
[self-hosted runners]: https://help.github.com/en/actions/hosting-your-own-runners
## Announcements
@@ -83,6 +77,7 @@ GitHub Actions and Azure DevOps use the `-latest` YAML label (ex: `ubuntu-latest
The `-latest` migration process is gradual and happens over 1-2 months in order to allow customers to adapt their workflows to the newest OS version. During this process, any workflow using the `-latest` label, may see changes in the OS version in their workflows or pipelines. To avoid unwanted migration, users can specify a specific OS version in the yaml file (ex: macos-12, windows-2022, ubuntu-22.04).
## Image Releases
*How to best follow along with changes*
@@ -129,7 +124,7 @@ We use third-party package managers to install software during the image generat
| Operating system | Package manager | Third-party repos and packages |
| :--- | :---: | ---: |
| Ubuntu | [APT](https://wiki.debian.org/Apt) | [containers](https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable) (Ubuntu 20 only) <br/> [docker](https://download.docker.com/linux/ubuntu) (Ubuntu20 0nly) <br/> [Eclipse-Temurin (Adoptium)](https://packages.adoptium.net/artifactory/deb/) <br/> [Erlang](https://packages.erlang-solutions.com/ubuntu) <br/> [Firefox](http://ppa.launchpad.net/mozillateam/ppa/ubuntu) <br/> [git-lfs](https://packagecloud.io/install/repositories/github/git-lfs) <br/> [git](https://launchpad.net/~git-core/+archive/ubuntu/ppa) <br/> [Google Cloud CLI](https://packages.cloud.google.com/apt) <br/> [Heroku](https://cli-assets.heroku.com/channels/stable/apt) <br/> [HHvm](https://dl.hhvm.com/ubuntu) <br/> [MongoDB](https://repo.mongodb.org/apt/ubuntu) <br/> [Mono](https://download.mono-project.com/repo/ubuntu) <br/> [MS Edge](https://packages.microsoft.com/repos/edge) <br/> [PostgreSQL](https://apt.postgresql.org/pub/repos/apt/) <br/> [R](https://cloud.r-project.org/bin/linux/ubuntu) |
| Ubuntu | [APT](https://wiki.debian.org/Apt) | [containers](https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable) (Ubuntu 20 only) <br/> [docker](https://download.docker.com/linux/ubuntu) <br/> [Eclipse-Temurin (Adoptium)](https://packages.adoptium.net/artifactory/deb/) <br/> [Erlang](https://packages.erlang-solutions.com/ubuntu) <br/> [Firefox](http://ppa.launchpad.net/mozillateam/ppa/ubuntu) <br/> [gcc, gfortran](https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test) <br/> [git-lfs](https://packagecloud.io/install/repositories/github/git-lfs) <br/> [git](https://launchpad.net/~git-core/+archive/ubuntu/ppa) <br/> [Google Cloud CLI](https://packages.cloud.google.com/apt) <br/> [Heroku](https://cli-assets.heroku.com/channels/stable/apt) <br/> [HHvm](https://dl.hhvm.com/ubuntu) <br/> [MongoDB](https://repo.mongodb.org/apt/ubuntu) <br/> [Mono](https://download.mono-project.com/repo/ubuntu) <br/> [MS Edge](https://packages.microsoft.com/repos/edge) <br/> [PostgreSQL](https://apt.postgresql.org/pub/repos/apt/) <br/> [R](https://cloud.r-project.org/bin/linux/ubuntu) |
| | [pipx](https://pypa.github.io/pipx) | ansible-core <br/>yamllint |
| Windows | [Chocolatey](https://chocolatey.org) | No third-party repos installed |
| macOS | [Homebrew](https://brew.sh) | [aws-cli v2](https://github.com/aws/homebrew-tap) </br> [azure/bicep](https://github.com/Azure/homebrew-bicep) </br> [mongodb/brew](https://github.com/mongodb/homebrew-brew) |
@@ -206,9 +201,3 @@ For some tools, we always install the latest at the time of the deployment; for
<summary><b><i>How do I request that a new tool be pre-installed on the image?</b></i></summary>
Please create an issue and get an approval from us to add this tool to the image before creating the pull request.
</details>
<details>
<summary><b><i>What branch should I use to build custom image?</b></i></summary>
We strongly encourage customers to build their own images using the main branch.
This repository contains multiple branches and releases that serve as document milestones to reflect what software is installed in the images at certain point of time. Current builds are not idempotent and if one tries to build a runner image using the specific tag it is not guaranteed that the build will succeed.
</details>
+26
View File
@@ -0,0 +1,26 @@
# Debugging Failed Packer Builds
## Step 1: Run packer build `-on-error=ask`
When you run the `packer build` command, give it the `-on-error=ask` flag.
By default, `packer build` will delete the resource group as soon as the build fails.
`-on-error=ask` will pause it and wait for your input so you have time to remote in to the VM and diagnose the failure.
When the build fails, you will see this:
![Ask on error screenshot](/docs/resources/askOnError.png "Ask on error screenshot")
## Step 2: Find the resource group name in the build log
At the beginning of the build log (written to console), find the resource group name for the VM:
![Resource group from log screenshot](/docs/resources/resourceGroupName.png "Resource group from log screenshot")
Log into the Azure Portal. Find that resource group under `Resource groups`. You should see the resources for the Packer build:
![Packer resource group in Azure screenshot](/docs/resources/packerResourceGroup.png "Packer resource group in Azure screenshot")
## Step 3: Connect to the VM
Select the VM in the resource group. Click `Connect:`
This will download an RDP file. Open that and enter the credentials found in the HCL2 file you pass to `packer build`:
![VM credentials screenshot](/docs/resources/vmCredentials.png "VM credentials screenshot")
Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

@@ -13,15 +13,15 @@ class BaseNode {
}
[String] ToMarkdown([Int32] $Level) {
throw "Abstract method 'ToMarkdown(level)' is not implemented for '$($this.GetType().Name)'"
throw "Abtract method 'ToMarkdown(level)' is not implemented for '$($this.GetType().Name)'"
}
[Boolean] IsSimilarTo([BaseNode] $OtherNode) {
throw "Abstract method 'IsSimilarTo' is not implemented for '$($this.GetType().Name)'"
throw "Abtract method 'IsSimilarTo' is not implemented for '$($this.GetType().Name)'"
}
[Boolean] IsIdenticalTo([BaseNode] $OtherNode) {
throw "Abstract method 'IsIdenticalTo' is not implemented for '$($this.GetType().Name)'"
throw "Abtract method 'IsIdenticalTo' is not implemented for '$($this.GetType().Name)'"
}
}
@@ -39,7 +39,7 @@ class BaseToolNode: BaseNode {
}
[String] GetValue() {
throw "Abstract method 'GetValue' is not implemented for '$($this.GetType().Name)'"
throw "Abtract method 'GetValue' is not implemented for '$($this.GetType().Name)'"
}
[Boolean] IsSimilarTo([BaseNode] $OtherNode) {
@@ -53,4 +53,4 @@ class BaseToolNode: BaseNode {
[Boolean] IsIdenticalTo([BaseNode] $OtherNode) {
return $this.IsSimilarTo($OtherNode) -and ($this.GetValue() -eq $OtherNode.GetValue())
}
}
}
@@ -59,13 +59,11 @@ jobs:
arguments: -RepoUrl $(CUSTOM_REPOSITORY_URL) `
-RepoBranch $(CUSTOM_REPOSITORY_BRANCH)
- task: AzureCLI@2
- task: PowerShell@2
displayName: 'Set variables'
inputs:
azureSubscription: 'spn-hosted-runners'
scriptType: 'pscore'
scriptLocation: 'inlineScript'
inlineScript: |
targetType: 'inline'
script: |
$ImageType = "${{ parameters.image_type }}"
$TemplateDirectoryName = if ($ImageType.StartsWith("ubuntu")) { "ubuntu/templates" } else { "windows/templates" }
$TemplateDirectoryPath = Join-Path "images" $TemplateDirectoryName | Resolve-Path
@@ -81,16 +79,13 @@ jobs:
$TempResourceGroupName = "packer-temp-$ManagedImageName"
Write-Host "##vso[task.setvariable variable=TempResourceGroupName;]$TempResourceGroupName"
$clientSecret = $(az keyvault secret show --name "spnhostedrunners" --vault-name "gh-imagegeneration" --query value -o tsv)
Write-Host "##vso[task.setvariable variable=ClientSecret;issecret=true]$clientSecret"
- task: PowerShell@2
displayName: 'Build VM'
inputs:
targetType: filePath
filePath: ./images.CI/linux-and-win/build-image.ps1
arguments: -ClientId $(CLIENT_ID) `
-ClientSecret "$(ClientSecret)" `
-ClientSecret $(CLIENT_SECRET) `
-TemplatePath $(TemplatePath) `
-ImageName "$(ManagedImageName)" `
-ImageResourceGroupName $(AZURE_RESOURCE_GROUP) `
@@ -177,5 +172,5 @@ jobs:
arguments: -TempResourceGroupName "$(TempResourceGroupName)" `
-SubscriptionId $(AZURE_SUBSCRIPTION) `
-ClientId $(CLIENT_ID) `
-ClientSecret "$(ClientSecret)" `
-ClientSecret $(CLIENT_SECRET) `
-TenantId $(AZURE_TENANT)
@@ -1,21 +0,0 @@
schedules:
- cron: "0 0 * * *"
displayName: Daily
branches:
include:
- main
always: true
trigger: none
pr:
autoCancel: true
branches:
include:
- main
jobs:
- template: image-generation.yml
parameters:
image_type: ubuntu2404
image_readme_name: Ubuntu2404-Readme.md
image_template_name: ubuntu-24.04.pkr.hcl
+1 -1
View File
@@ -13,7 +13,7 @@ function Push-AnkaTemplateToRegistry {
[string] $TemplateName
)
# if registry uuid doesn't match then delete an image in registry
# if registry uuid doesn't match than delete an image in registry
$AnkaCaCrtPath="$HOME/.config/anka/certs/anka-ca-crt.pem"
$images = anka --machine-readable registry --cacert $AnkaCaCrtPath --registry-path $RegistryUrl list | ConvertFrom-Json | ForEach-Object body
$images | Where-Object name -eq $TemplateName | ForEach-Object {
@@ -76,7 +76,7 @@ function Invoke-SoftwareUpdate {
$ipAddress = Get-AnkaVMIPAddress -VMName $TemplateName
# Unenroll Seed
Write-Host "`t[*] Resetting the seed before requesting stable versions"
Write-Host "`t[*] Reseting the seed before requesting stable versions"
Remove-CurrentBetaSeed -HostName $ipAddress | Show-StringWithFormat
# Install Software Updates
+2 -2
View File
@@ -171,11 +171,11 @@ function Get-MacOSInstaller {
Write-Host "`t[*] Beta Version requested. Enrolling machine to DeveloperSeed"
sudo $seedutil enroll DeveloperSeed | Out-Null
} else {
Write-Host "`t[*] Resetting the seed before requesting stable versions"
Write-Host "`t[*] Reseting the seed before requesting stable versions"
sudo $seedutil unenroll | Out-Null
}
# Validate there is no software update at the moment
# Validate there is no softwareupdate at the moment
Test-SoftwareUpdate
# Validate availability OSVersion
+110 -106
View File
@@ -1,12 +1,16 @@
| Announcements |
|-|
| [[All OSes] Powershell Core will be updated to 7.4.x LTS on January, 28](https://github.com/actions/runner-images/issues/9115) |
***
# macOS 12
- OS Version: macOS 12.7.4 (21H1123)
- OS Version: macOS 12.7.3 (21H1015)
- Kernel Version: Darwin 21.6.0
- Image Version: 20240418.1
- Image Version: 20240127.1
## Installed Software
### Language and Runtime
- .NET Core SDK: 6.0.421, 7.0.102, 7.0.202, 7.0.306, 7.0.408, 8.0.101, 8.0.204
- .NET Core SDK: 6.0.418, 7.0.102, 7.0.202, 7.0.306, 7.0.405, 8.0.101
- 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`
@@ -16,35 +20,35 @@
- GNU Fortran 11 (Homebrew GCC 11.4.0) - available by `gfortran-11` alias
- GNU Fortran 12 (Homebrew GCC 12.3.0) - available by `gfortran-12` alias
- GNU Fortran 13 (Homebrew GCC 13.2.0) - available by `gfortran-13` alias
- Julia 1.10.2
- Kotlin 1.9.23-release-779
- Go 1.21.9
- Julia 1.10.0
- Kotlin 1.9.22-release-704
- Go 1.20.13
- Mono 6.12.0.188
- Node.js 18.20.2
- Node.js 18.19.0
- MSBuild 16.10.1.51301 (Mono 6.12.0.188)
- NVM 0.39.7
- NVM - Cached node versions: 16.20.2, 18.20.2, 20.12.2
- NVM - Cached node versions: 16.20.2, 18.19.0, 20.11.0
- Perl 5.38.2
- PHP 8.3.6
- PHP 8.3.2
- Python 2.7.18
- Python3 3.12.3
- R 4.3.3
- Python3 3.12.1
- R 4.3.2
- Ruby 3.0.6p216
### Package Management
- Bundler 2.5.9
- Bundler 2.5.5
- Carthage 0.39.1
- CocoaPods 1.15.2
- Composer 2.7.2
- Homebrew 4.2.18
- Miniconda 24.3.0
- NPM 10.5.0
- CocoaPods 1.14.3
- Composer 2.6.6
- Homebrew 4.2.5
- Miniconda 23.11.0
- NPM 10.2.3
- NuGet 6.3.1.1
- Pip 20.3.4 (python 2.7)
- Pip3 24.0 (python 3.12)
- Pipx 1.5.0
- RubyGems 3.5.9
- Vcpkg 2024 (build from commit 6c87aab05)
- Pip3 23.3.2 (python 3.12)
- Pipx 1.4.3
- RubyGems 3.5.5
- Vcpkg 2024 (build from commit 7032c5759)
- Yarn 1.22.19
#### Environment variables
@@ -56,78 +60,78 @@
### Project Management
- Apache Ant 1.10.14
- Apache Maven 3.9.6
- Gradle 8.7
- Sbt 1.9.9
- Gradle 8.5
- Sbt 1.9.8
### Utilities
- 7-Zip 17.05
- aria2 1.37.0
- azcopy 10.24.0
- bazel 7.1.1
- azcopy 10.22.2
- bazel 7.0.2
- bazelisk 1.19.0
- bsdtar 3.5.1 - available by 'tar' alias
- Curl 8.7.1
- Git 2.44.0
- Git LFS 3.5.1
- GitHub CLI 2.48.0
- Curl 8.5.0
- Git 2.43.0
- Git LFS 3.4.1
- GitHub CLI 2.42.1
- GNU Tar 1.35 - available by 'gtar' alias
- GNU Wget 1.24.5
- gpg (GnuPG) 2.4.5
- ImageMagick 7.1.1-30
- GNU Wget 1.21.4
- gpg (GnuPG) 2.4.4
- ImageMagick 7.1.1-27
- jq 1.7.1
- mongo 5.0.26
- mongod 5.0.26
- mongo 5.0.21
- mongod 5.0.21
- OpenSSL 1.1.1w 11 Sep 2023
- Packer 1.9.4
- pkg-config 0.29.2
- PostgreSQL 14.11 (Homebrew)
- psql (PostgreSQL) 14.11 (Homebrew)
- PostgreSQL 14.10 (Homebrew)
- psql (PostgreSQL) 14.10 (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.43.1
- zstd 1.5.6
- yq 4.40.5
- zstd 1.5.5
### Tools
- App Center CLI 3.0.0
- AWS CLI 2.15.39
- AWS SAM CLI 1.115.0
- App Center CLI 2.14.0
- AWS CLI 2.15.15
- AWS SAM CLI 1.108.0
- AWS Session Manager CLI 1.2.553.0
- Azure CLI 2.59.0
- Azure CLI (azure-devops) 1.0.0
- Bicep CLI 0.26.170
- Cabal 3.10.3.0
- Cmake 3.29.2
- CodeQL Action Bundle 2.17.0
- Colima 0.6.8
- Fastlane 2.220.0
- GHC 9.8.2
- GHCup 0.1.22.0
- Azure CLI 2.56.0
- Azure CLI (azure-devops) 0.26.0
- Bicep CLI 0.24.24
- Cabal 3.10.2.1
- Cmake 3.28.1
- CodeQL Action Bundle 2.16.1
- Colima 0.6.7
- Fastlane 2.219.0
- GHC 9.8.1
- GHCup 0.1.20.0
- Jazzy 0.14.4
- Stack 2.15.5
- SwiftFormat 0.53.7
- Swig 4.2.1
- Xcbeautify 1.6.0
- Stack 2.13.1
- SwiftFormat 0.53.0
- Swig 4.2.0
- Xcbeautify 1.4.0
- Xcode Command Line Tools 14.2.0.0.1.1668646533
- Xcodes 1.4.1
### Linters
- SwiftLint 0.53.0
- Yamllint 1.35.1
- Yamllint 1.33.0
### Browsers
- Safari 17.4.1 (17618.1.15.111.8)
- SafariDriver 17.4.1 (17618.1.15.111.8)
- Google Chrome 124.0.6367.62
- Google Chrome for Testing 124.0.6367.60
- ChromeDriver 124.0.6367.60
- Microsoft Edge 124.0.2478.51
- Microsoft Edge WebDriver 124.0.2478.51
- Mozilla Firefox 125.0.1
- Safari 17.3 (17617.2.4.11.9)
- SafariDriver 17.3 (17617.2.4.11.9)
- Google Chrome 121.0.6167.85
- Google Chrome for Testing 121.0.6167.85
- ChromeDriver 121.0.6167.85
- Microsoft Edge 121.0.2277.83
- Microsoft Edge WebDriver 121.0.2277.83
- Mozilla Firefox 122.0
- geckodriver 0.34.0
- Selenium server 4.19.1
- Selenium server 4.17.0
#### Environment variables
| Name | Value |
@@ -141,11 +145,16 @@
| ------------------- | -------------------- |
| 8.0.402+6 (default) | JAVA_HOME_8_X64 |
| 11.0.22+7 | JAVA_HOME_11_X64 |
| 17.0.11+9 | JAVA_HOME_17_X64 |
| 17.0.10+7 | JAVA_HOME_17_X64 |
| 21.0.2+13.0 | JAVA_HOME_21_X64 |
### Cached Tools
#### Ruby
- 2.7.8
- 3.0.6
- 3.1.4
#### PyPy
- 2.7.18 [PyPy 7.3.15]
- 3.7.13 [PyPy 7.3.9]
@@ -153,64 +162,60 @@
- 3.9.18 [PyPy 7.3.15]
- 3.10.13 [PyPy 7.3.15]
#### Ruby
- 3.0.6
- 3.1.4
#### Python
- 3.7.17
- 3.8.18
- 3.9.19
- 3.10.14
- 3.11.9
- 3.12.3
- 3.9.18
- 3.10.13
- 3.11.7
- 3.12.1
#### Node.js
- 16.20.2
- 18.20.2
- 20.12.2
- 18.19.0
- 20.11.0
#### Go
- 1.20.14
- 1.21.9
- 1.22.2
- 1.19.13
- 1.20.13
- 1.21.6
### Rust Tools
- Cargo 1.77.2
- Rust 1.77.2
- Rustdoc 1.77.2
- Rustup 1.27.0
- Cargo 1.75.0
- Rust 1.75.0
- Rustdoc 1.75.0
- Rustup 1.26.0
#### Packages
- Bindgen 0.69.4
- Cargo-audit 0.20.0
- Cargo-outdated 0.15.0
- Bindgen 0.69.2
- Cargo-audit 0.18.3
- Cargo-outdated 0.14.0
- Cbindgen 0.26.0
- Clippy 0.1.77
- Clippy 0.1.75
- Rustfmt 1.7.0-stable
### PowerShell Tools
- PowerShell 7.4.2
- PowerShell 7.4.1
#### PowerShell Modules
- Az: 11.5.0
- Az: 11.2.0
- MarkdownPS: 1.9
- Pester: 5.5.0
- PSScriptAnalyzer: 1.22.0
- PSScriptAnalyzer: 1.21.0
### Web Servers
| Name | Version | ConfigFile | ServiceStatus | ListenPort |
| ----- | ------- | ------------------------------- | ------------- | ---------- |
| httpd | 2.4.59 | /usr/local/etc/httpd/httpd.conf | none | 80 |
| nginx | 1.25.5 | /usr/local/etc/nginx/nginx.conf | none | 80 |
| httpd | 2.4.58 | /usr/local/etc/httpd/httpd.conf | none | 80 |
| nginx | 1.25.3 | /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.11.400 | /Applications/Visual Studio.app |
| Version | Build | Path |
| -------------- | ---------- | ------------------------------------ |
| 2019 | 8.10.25.2 | /Applications/Visual Studio 2019.app |
| 2022 (default) | 17.6.8.400 | /Applications/Visual Studio.app |
##### Notes
```
@@ -222,7 +227,6 @@ 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 |
@@ -330,15 +334,15 @@ mv "/Applications/Visual Studio 2019.app" "/Applications/Visual Studio.app"
| Package Name | Version |
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Android Command Line Tools | 8.0 |
| Android Emulator | 34.1.20 |
| Android SDK Build-tools | 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-34-ext8 (rev 1)<br>android-34-ext11 (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.1 |
| Android Emulator | 33.1.24 |
| Android SDK Build-tools | 34.0.0<br>33.0.0 33.0.1 33.0.2<br>32.0.0<br>31.0.0 |
| Android SDK Platforms | android-34-ext8 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 2)<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 | 34.0.5 |
| 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 |
| NDK | 24.0.8215888<br>25.2.9519653 (default)<br>26.1.10909125 |
#### Environment variables
| Name | Value |
@@ -346,20 +350,20 @@ mv "/Applications/Visual Studio 2019.app" "/Applications/Visual Studio.app"
| 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/26.3.11579264 |
| ANDROID_NDK_LATEST_HOME | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| 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
- libXext 1.3.5
- libXft 2.3.8
- Tcl/Tk 8.6.14
- Tcl/Tk 8.6.13_5
- Zlib 1.3.1
#### Environment variables
| Name | Value |
| ----------------- | ----------------------------------------------------------------------------------------- |
| PARALLELS_DMG_URL | https://download.parallels.com/desktop/v19/19.3.0-54924/ParallelsDesktop-19.3.0-54924.dmg |
| PARALLELS_DMG_URL | https://download.parallels.com/desktop/v19/19.2.1-54832/ParallelsDesktop-19.2.1-54832.dmg |
##### Notes
```
+98 -87
View File
@@ -1,14 +1,19 @@
| Announcements |
|-|
| [[All OSes] Powershell Core will be updated to 7.4.x LTS on January, 28](https://github.com/actions/runner-images/issues/9115) |
| [Old versions of Android SDK & tools will be removed from images on January, 8](https://github.com/actions/runner-images/issues/8952) |
***
# macOS 13
- OS Version: macOS 13.6.6 (22G630)
- OS Version: macOS 13.6.3 (22G436)
- Kernel Version: Darwin 22.6.0
- Image Version: 20240421.1
- Image Version: 20240114.1
## Installed Software
### Language and Runtime
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.408, 8.0.101, 8.0.204
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.405, 8.0.101
- Bash 3.2.57(1)-release
- Clang/LLVM 14.0.0
- Clang/LLVM 14.0.3
- Clang/LLVM (Homebrew) 15.0.7 - available on `$(brew --prefix llvm@15)/bin/clang`
- GCC 11 (Homebrew GCC 11.4.0) - available by `gcc-11` alias
- GCC 12 (Homebrew GCC 12.3.0) - available by `gcc-12` alias
@@ -16,83 +21,85 @@
- GNU Fortran 11 (Homebrew GCC 11.4.0) - available by `gfortran-11` alias
- GNU Fortran 12 (Homebrew GCC 12.3.0) - available by `gfortran-12` alias
- GNU Fortran 13 (Homebrew GCC 13.2.0) - available by `gfortran-13` alias
- Kotlin 1.9.23-release-779
- Julia 1.10.0
- Kotlin 1.9.22-release-704
- Mono 6.12.0.188
- Node.js 20.12.2
- Node.js 18.19.0
- Perl 5.38.2
- PHP 8.3.6
- Python3 3.12.3
- PHP 8.3.1
- Python3 3.12.1
- R 4.3.2
- Ruby 3.0.6p216
### Package Management
- Bundler 2.5.9
- Bundler 2.5.4
- Carthage 0.39.1
- CocoaPods 1.15.2
- Composer 2.7.3
- Homebrew 4.2.18
- NPM 10.5.0
- CocoaPods 1.14.3
- Composer 2.6.6
- Homebrew 4.2.3
- NPM 10.2.3
- NuGet 6.3.1.1
- Pip3 24.0 (python 3.12)
- Pipx 1.5.0
- RubyGems 3.5.9
- Vcpkg 2024 (build from commit 9224b3bbd)
- Pip3 23.3.2 (python 3.12)
- Pipx 1.4.2
- RubyGems 3.5.4
- Vcpkg 2024 (build from commit 53bef8994)
- Yarn 1.22.19
### Project Management
- Apache Ant 1.10.14
- Apache Maven 3.9.6
- Gradle 8.7
- Gradle 8.5
### Utilities
- 7-Zip 17.05
- aria2 1.37.0
- azcopy 10.24.0
- bazel 7.1.1
- azcopy 10.21.2
- bazel 7.0.0
- bazelisk 1.19.0
- bsdtar 3.5.3 - available by 'tar' alias
- Curl 8.7.1
- Git 2.44.0
- Git LFS 3.5.1
- GitHub CLI 2.48.0
- Curl 8.5.0
- Git 2.43.0
- Git LFS 3.4.1
- GitHub CLI 2.42.0
- GNU Tar 1.35 - available by 'gtar' alias
- GNU Wget 1.24.5
- gpg (GnuPG) 2.4.5
- GNU Wget 1.21.4
- gpg (GnuPG) 2.4.3
- jq 1.7.1
- OpenSSL 1.1.1w 11 Sep 2023
- Packer 1.9.4
- pkg-config 0.29.2
- yq 4.43.1
- zstd 1.5.6
- yq 4.40.5
- zstd 1.5.5
### Tools
- AWS CLI 2.15.40
- AWS SAM CLI 1.115.0
- AWS CLI 2.15.10
- AWS SAM CLI 1.107.0
- AWS Session Manager CLI 1.2.553.0
- Azure CLI 2.59.0
- Azure CLI (azure-devops) 1.0.0
- Bicep CLI 0.26.170
- Cmake 3.29.2
- CodeQL Action Bundle 2.17.0
- Fastlane 2.220.0
- SwiftFormat 0.53.7
- Xcbeautify 2.1.0
- Xcode Command Line Tools 14.3.1.0.1.1683849156
- Azure CLI 2.56.0
- Azure CLI (azure-devops) 0.26.0
- Bicep CLI 0.24.24
- Cmake 3.28.1
- CodeQL Action Bundle 2.15.5
- Fastlane 2.219.0
- SwiftFormat 0.53.0
- Xcbeautify 1.4.0
- Xcode Command Line Tools 15.1.0.0.1.1700200546
- Xcodes 1.4.1
### Linters
- SwiftLint 0.53.0
### Browsers
- Safari 17.4.1 (18618.1.15.111.8)
- SafariDriver 17.4.1 (18618.1.15.111.8)
- Google Chrome 124.0.6367.62
- Google Chrome for Testing 124.0.6367.60
- ChromeDriver 124.0.6367.60
- Microsoft Edge 124.0.2478.51
- Microsoft Edge WebDriver 124.0.2478.51
- Mozilla Firefox 125.0.1
- Safari 17.2.1 (18617.1.17.11.12)
- SafariDriver 17.2.1 (18617.1.17.11.12)
- Google Chrome 120.0.6099.216
- Google Chrome for Testing 120.0.6099.109
- ChromeDriver 120.0.6099.109
- Microsoft Edge 120.0.2210.133
- Microsoft Edge WebDriver 120.0.2210.133
- Mozilla Firefox 121.0.1
- geckodriver 0.34.0
- Selenium server 4.19.1
- Selenium server 4.16.1
#### Environment variables
| Name | Value |
@@ -102,15 +109,19 @@
| GECKOWEBDRIVER | /usr/local/opt/geckodriver/bin |
### Java
| Version | Environment Variable |
| ------------------- | -------------------- |
| 8.0.412+8 | JAVA_HOME_8_X64 |
| 11.0.23+9 | JAVA_HOME_11_X64 |
| 17.0.11+9 (default) | JAVA_HOME_17_X64 |
| 21.0.3+9.0 | JAVA_HOME_21_X64 |
| Version | Environment Variable |
| ------------------ | -------------------- |
| 8.0.392+8 | JAVA_HOME_8_X64 |
| 11.0.21+9 | JAVA_HOME_11_X64 |
| 17.0.9+9 (default) | JAVA_HOME_17_X64 |
| 21.0.1+12.0 | JAVA_HOME_21_X64 |
### Cached Tools
#### Ruby
- 3.0.6
- 3.1.4
#### PyPy
- 2.7.18 [PyPy 7.3.15]
- 3.7.13 [PyPy 7.3.9]
@@ -118,55 +129,54 @@
- 3.9.18 [PyPy 7.3.15]
- 3.10.13 [PyPy 7.3.15]
#### Ruby
- 3.0.6
- 3.1.4
#### Python
- 3.8.18
- 3.9.19
- 3.10.14
- 3.11.9
- 3.12.3
- 3.9.18
- 3.10.13
- 3.11.7
- 3.12.1
#### Node.js
- 16.20.2
- 18.20.2
- 20.12.2
- 18.19.0
- 20.10.0
#### Go
- 1.20.14
- 1.21.9
- 1.22.2
- 1.19.13
- 1.20.12
- 1.21.5
### Rust Tools
- Cargo 1.77.2
- Rust 1.77.2
- Rustdoc 1.77.2
- Rustup 1.27.0
- Cargo 1.75.0
- Rust 1.75.0
- Rustdoc 1.75.0
- Rustup 1.26.0
#### Packages
- Clippy 0.1.77
- Clippy 0.1.75
- Rustfmt 1.7.0-stable
### PowerShell Tools
- PowerShell 7.4.2
- PowerShell 7.2.18
#### PowerShell Modules
- Az: 11.5.0
- Az: 11.2.0
- Pester: 5.5.0
- PSScriptAnalyzer: 1.22.0
- PSScriptAnalyzer: 1.21.0
### Xcode
| Version | Build | Path |
| ---------------- | ------- | ------------------------------ |
| 15.2 | 15C500b | /Applications/Xcode_15.2.app |
| 15.1 | 15C65 | /Applications/Xcode_15.1.app |
| 15.0.1 (default) | 15A507 | /Applications/Xcode_15.0.1.app |
| 14.3.1 | 14E300c | /Applications/Xcode_14.3.1.app |
| 15.0.1 | 15A507 | /Applications/Xcode_15.0.1.app |
| 14.3.1 (default) | 14E300c | /Applications/Xcode_14.3.1.app |
| 14.2 | 14C18 | /Applications/Xcode_14.2.app |
| 14.1 | 14B47b | /Applications/Xcode_14.1.app |
#### Xcode Support Tools
- xcpretty 0.3.0
#### Installed SDKs
| SDK | SDK Name | Xcode Version |
| ------------------------------------------------------- | --------------------------------------------- | ------------- |
@@ -204,8 +214,8 @@
| Simulator - visionOS 1.0 | xrsimulator1.0 | 15.2 |
| visionOS 1.0 | xros1.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 |
| Asset Runtime SDK for macOS hosts targeting tvOS 16.4 | assetruntime.host.macosx.target.appletvos16.4 | 14.3.1 |
| DriverKit 22.1 | driverkit22.1 | 14.1 |
| DriverKit 22.2 | driverkit22.2 | 14.2 |
| DriverKit 22.4 | driverkit22.4 | 14.3.1 |
@@ -233,22 +243,23 @@
| Package Name | Version |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| Android Command Line Tools | 11.0 |
| Android Emulator | 34.1.20 |
| Android SDK Build-tools | 34.0.0<br>33.0.2 33.0.3 |
| Android SDK Platforms | android-34-ext8 (rev 1)<br>android-34-ext11 (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.1 |
| Android Emulator | 33.1.24 |
| Android SDK Build-tools | 34.0.0<br>33.0.2 |
| Android SDK Platforms | android-34-ext8 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 2)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3) |
| Android SDK Platform-Tools | 34.0.5 |
| Android Support Repository | 47.0.0 |
| CMake | 3.22.1 |
| Google Play services | 49 |
| Google Repository | 58 |
| NDK | 24.0.8215888<br>25.2.9519653<br>26.3.11579264 (default) |
| NDK | 24.0.8215888<br>25.2.9519653<br>26.1.10909125 (default) |
#### Environment variables
| Name | Value |
| ----------------------- | --------------------------------------------------- |
| ANDROID_HOME | /Users/runner/Library/Android/sdk |
| ANDROID_NDK | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_HOME | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_LATEST_HOME | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_ROOT | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_HOME | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_LATEST_HOME | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_ROOT | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_SDK_ROOT | /Users/runner/Library/Android/sdk |
+72 -70
View File
@@ -1,14 +1,18 @@
| Announcements |
|-|
| [[All OSes] Powershell Core will be updated to 7.4.x LTS on January, 28](https://github.com/actions/runner-images/issues/9115) |
***
# macOS 13
- OS Version: macOS 13.6.6 (22G630)
- OS Version: macOS 13.6.4 (22G513)
- Kernel Version: Darwin 22.6.0
- Image Version: 20240506.2
- Image Version: 20240204.1
## Installed Software
### Language and Runtime
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.408, 8.0.101, 8.0.204
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.405, 8.0.101
- Bash 3.2.57(1)-release
- Clang/LLVM 14.0.0
- Clang/LLVM 15.0.0
- Clang/LLVM (Homebrew) 15.0.7 - available on `$(brew --prefix llvm@15)/bin/clang`
- GCC 11 (Homebrew GCC 11.4.0) - available by `gcc-11` alias
- GCC 12 (Homebrew GCC 12.3.0) - available by `gcc-12` alias
@@ -16,75 +20,72 @@
- GNU Fortran 11 (Homebrew GCC 11.4.0) - available by `gfortran-11` alias
- GNU Fortran 12 (Homebrew GCC 12.3.0) - available by `gfortran-12` alias
- GNU Fortran 13 (Homebrew GCC 13.2.0) - available by `gfortran-13` alias
- Kotlin 1.9.23-release-779
- Kotlin 1.9.22-release-704
- Mono 6.12.0.188
- Node.js 20.12.2
- Node.js 20.11.0
- Perl 5.38.2
- Python3 3.12.3
- Ruby 3.0.7p220
- Ruby 3.0.6p216
### Package Management
- Bundler 2.5.10
- Bundler 2.5.5
- Carthage 0.39.1
- CocoaPods 1.15.2
- Homebrew 4.2.21
- NPM 10.5.0
- CocoaPods 1.15.0
- Homebrew 4.2.6
- NPM 10.2.4
- NuGet 6.3.1.1
- Pip3 24.0 (python 3.12)
- Pipx 1.5.0
- RubyGems 3.5.10
- RubyGems 3.5.5
- Yarn 1.22.19
### Project Management
- Apache Ant 1.10.14
- Apache Maven 3.9.6
- Gradle 8.7
- Gradle 8.6
### Utilities
- 7-Zip 17.05
- aria2 1.37.0
- azcopy 10.24.0
- bazel 7.1.1
- bazelisk 1.19.0_1
- azcopy 10.23.0
- bazel 7.0.2
- bazelisk 1.19.0
- bsdtar 3.5.3 - available by 'tar' alias
- Curl 8.4.0
- Git 2.45.0
- Git LFS 3.5.1
- GitHub CLI 2.49.0
- Git 2.43.0
- Git LFS 3.4.1
- GitHub CLI 2.43.1
- GNU Tar 1.35 - available by 'gtar' alias
- GNU Wget 1.24.5
- gpg (GnuPG) 2.4.5
- GNU Wget 1.21.4
- gpg (GnuPG) 2.4.4
- jq 1.7.1
- OpenSSL 1.1.1w 11 Sep 2023
- Packer 1.9.4
- pkg-config 0.29.2
- yq 4.43.1
- zstd 1.5.6
- yq 4.40.5
- zstd 1.5.5
### Tools
- AWS CLI 2.15.45
- AWS SAM CLI 1.116.0
- AWS CLI 2.15.17
- AWS SAM CLI 1.108.0
- AWS Session Manager CLI 1.2.553.0
- Azure CLI 2.60.0
- Azure CLI (azure-devops) 1.0.0
- Bicep CLI 0.26.170
- Cmake 3.29.2
- CodeQL Action Bundle 2.17.1
- Fastlane 2.220.0
- SwiftFormat 0.53.8
- Xcbeautify 2.3.0
- Xcode Command Line Tools 14.3.1.0.1.1683849156
- Azure CLI 2.56.0
- Azure CLI (azure-devops) 0.26.0
- Bicep CLI 0.24.24
- Cmake 3.28.2
- CodeQL Action Bundle 2.16.1
- Fastlane 2.219.0
- SwiftFormat 0.53.1
- Xcbeautify 1.4.0
- Xcode Command Line Tools 15.1.0.0.1.1700200546
- Xcodes 1.4.1
### Linters
### Browsers
- Safari 17.4.1 (18618.1.15.111.8)
- SafariDriver 17.4.1 (18618.1.15.111.8)
- Google Chrome 124.0.6367.119
- Google Chrome for Testing 124.0.6367.91
- ChromeDriver 124.0.6367.91
- Selenium server 4.20.0
- Safari 17.3 (18617.2.4.11.11)
- SafariDriver 17.3 (18617.2.4.11.11)
- Google Chrome 121.0.6167.139
- Google Chrome for Testing 121.0.6167.85
- ChromeDriver 121.0.6167.85
- Selenium server 4.17.0
#### Environment variables
| Name | Value |
@@ -96,43 +97,43 @@
### Java
| Version | Environment Variable |
| ------------------- | -------------------- |
| 11.0.23+9 | JAVA_HOME_11_arm64 |
| 17.0.11+9 (default) | JAVA_HOME_17_arm64 |
| 21.0.3+9.0 | JAVA_HOME_21_arm64 |
| 11.0.22+7.1 | JAVA_HOME_11_arm64 |
| 17.0.10+7 (default) | JAVA_HOME_17_arm64 |
| 21.0.2+13.0 | JAVA_HOME_21_arm64 |
### Cached Tools
#### Python
- 3.11.9
- 3.12.3
- 3.11.7
- 3.12.1
#### Node.js
- 16.20.1
- 18.20.2
- 20.12.2
- 18.19.0
- 20.11.0
#### Go
- 1.20.14
- 1.21.9
- 1.22.2
- 1.19.13
- 1.20.13
- 1.21.6
### Rust Tools
- Cargo 1.78.0
- Rust 1.78.0
- Rustdoc 1.78.0
- Rustup 1.27.1
- Cargo 1.75.0
- Rust 1.75.0
- Rustdoc 1.75.0
- Rustup 1.26.0
#### Packages
- Clippy 0.1.78
- Clippy 0.1.75
- Rustfmt 1.7.0-stable
### PowerShell Tools
- PowerShell 7.4.2
- PowerShell 7.4.1
#### PowerShell Modules
- Az: 11.6.0
- Az: 11.2.0
- Pester: 5.5.0
- PSScriptAnalyzer: 1.22.0
- PSScriptAnalyzer: 1.21.0
### Xcode
| Version | Build | Path |
@@ -178,8 +179,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 |
@@ -211,22 +212,23 @@
| Package Name | Version |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| Android Command Line Tools | 11.0 |
| Android Emulator | 34.2.13 |
| Android Emulator | 33.1.24 |
| Android SDK Build-tools | 34.0.0<br>33.0.2 33.0.3 |
| Android SDK Platforms | android-34-ext8 (rev 1)<br>android-34-ext11 (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.1 |
| Android SDK Platforms | android-34-ext8 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 2)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3) |
| Android SDK Platform-Tools | 34.0.5 |
| Android Support Repository | 47.0.0 |
| CMake | 3.22.1 |
| Google Play services | 49 |
| Google Repository | 58 |
| NDK | 24.0.8215888<br>25.2.9519653<br>26.3.11579264 (default) |
| NDK | 24.0.8215888<br>25.2.9519653<br>26.1.10909125 (default) |
#### Environment variables
| Name | Value |
| ----------------------- | --------------------------------------------------- |
| ANDROID_HOME | /Users/runner/Library/Android/sdk |
| ANDROID_NDK | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_HOME | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_LATEST_HOME | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_ROOT | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_HOME | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_LATEST_HOME | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_ROOT | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_SDK_ROOT | /Users/runner/Library/Android/sdk |
+89 -140
View File
@@ -1,14 +1,14 @@
# macOS 14
- OS Version: macOS 14.4.1 (23E224)
- Kernel Version: Darwin 23.4.0
- Image Version: 20240422.1
- OS Version: macOS 14.2.1 (23C71)
- Kernel Version: Darwin 23.2.0
- Image Version: 20240116.1
## Installed Software
### Language and Runtime
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.408, 8.0.101, 8.0.204
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.405, 8.0.101
- Bash 3.2.57(1)-release
- Clang/LLVM 14.0.3
- Clang/LLVM 15.0.0
- Clang/LLVM (Homebrew) 15.0.7 - available on `$(brew --prefix llvm@15)/bin/clang`
- GCC 11 (Homebrew GCC 11.4.0) - available by `gcc-11` alias
- GCC 12 (Homebrew GCC 12.3.0) - available by `gcc-12` alias
@@ -16,82 +16,85 @@
- GNU Fortran 11 (Homebrew GCC 11.4.0) - available by `gfortran-11` alias
- GNU Fortran 12 (Homebrew GCC 12.3.0) - available by `gfortran-12` alias
- GNU Fortran 13 (Homebrew GCC 13.2.0) - available by `gfortran-13` alias
- Kotlin 1.9.23-release-779
- Julia 1.10.0
- Kotlin 1.9.22-release-704
- Mono 6.12.0.188
- Node.js 20.12.2
- Node.js 18.19.0
- Perl 5.38.2
- PHP 8.3.6
- Python3 3.12.3
- PHP 8.3.1
- Python3 3.11.7
- R 4.3.2
- Ruby 3.0.6p216
### Package Management
- Bundler 2.5.9
- Bundler 2.5.4
- Carthage 0.39.1
- CocoaPods 1.15.2
- Composer 2.7.3
- Homebrew 4.2.19
- NPM 10.5.0
- CocoaPods 1.14.3
- Composer 2.6.6
- Homebrew 4.2.4
- NPM 10.2.3
- NuGet 6.3.1.1
- Pip3 24.0 (python 3.12)
- Pipx 1.5.0
- RubyGems 3.5.9
- Pip3 23.3.1 (python 3.11)
- Pipx 1.4.2
- RubyGems 3.5.4
- Vcpkg 2024 (build from commit 91b17dd72)
- Yarn 1.22.19
### Project Management
- Apache Ant 1.10.14
- Apache Maven 3.9.6
- Gradle 8.7
- Gradle 8.5
### Utilities
- 7-Zip 17.05
- aria2 1.37.0
- azcopy 10.24.0
- bazel 7.1.1
- azcopy 10.21.2
- bazel 7.0.0
- bazelisk 1.19.0
- bsdtar 3.5.3 - available by 'tar' alias
- Curl 8.7.1
- Git 2.44.0
- Git LFS 3.5.1
- GitHub CLI 2.48.0
- Curl 8.5.0
- Git 2.43.0
- Git LFS 3.4.1
- GitHub CLI 2.42.0
- GNU Tar 1.35 - available by 'gtar' alias
- GNU Wget 1.24.5
- gpg (GnuPG) 2.4.5
- GNU Wget 1.21.4
- gpg (GnuPG) 2.4.3
- jq 1.7.1
- OpenSSL 1.1.1w 11 Sep 2023
- Packer 1.9.4
- pkg-config 0.29.2
- yq 4.43.1
- zstd 1.5.6
- yq 4.40.5
- zstd 1.5.5
### Tools
- AWS CLI 2.15.40
- AWS SAM CLI 1.115.0
- AWS CLI 2.15.10
- AWS SAM CLI 1.107.0
- AWS Session Manager CLI 1.2.553.0
- Azure CLI 2.59.0
- Azure CLI (azure-devops) 1.0.0
- Bicep CLI 0.26.170
- Cmake 3.29.2
- CodeQL Action Bundle 2.17.0
- Fastlane 2.220.0
- SwiftFormat 0.53.7
- Xcbeautify 2.1.0
- Xcode Command Line Tools 15.3.0.0.1.1708646388
- Azure CLI 2.56.0
- Azure CLI (azure-devops) 0.26.0
- Bicep CLI 0.24.24
- Cmake 3.28.1
- CodeQL Action Bundle 2.15.5
- Fastlane 2.219.0
- SwiftFormat 0.53.0
- Xcbeautify 1.4.0
- Xcode Command Line Tools 15.1.0.0.1.1700200546
- Xcodes 1.4.1
### Linters
- SwiftLint 0.53.0
### Browsers
- Safari 17.4.1 (19618.1.15.11.14)
- SafariDriver 17.4.1 (19618.1.15.11.14)
- Google Chrome 124.0.6367.62
- Google Chrome for Testing 124.0.6367.60
- ChromeDriver 124.0.6367.60
- Microsoft Edge 124.0.2478.51
- Microsoft Edge WebDriver 124.0.2478.51
- Mozilla Firefox 125.0.2
- Safari 17.2.1 (19617.1.17.11.12)
- SafariDriver 17.2.1 (19617.1.17.11.12)
- Google Chrome 120.0.6099.234
- Google Chrome for Testing 120.0.6099.109
- ChromeDriver 120.0.6099.109
- Microsoft Edge 120.0.2210.133
- Microsoft Edge WebDriver 120.0.2210.133
- Mozilla Firefox 121.0.1
- geckodriver 0.34.0
- Selenium server 4.19.1
- Selenium server 4.16.1
#### Environment variables
| Name | Value |
@@ -101,59 +104,31 @@
| GECKOWEBDRIVER | /usr/local/opt/geckodriver/bin |
### Java
| Version | Environment Variable |
| -------------------- | -------------------- |
| 8.0.412+8 | JAVA_HOME_8_X64 |
| 11.0.23+9 | JAVA_HOME_11_X64 |
| 17.0.11+9 | JAVA_HOME_17_X64 |
| 21.0.3+9.0 (default) | JAVA_HOME_21_X64 |
### Cached Tools
#### Ruby
- 3.0.6
- 3.1.4
#### Python
- 3.11.9
- 3.12.3
#### Node.js
- 18.20.2
- 20.12.2
#### Go
- 1.20.14
- 1.21.9
- 1.22.2
### Rust Tools
- Cargo 1.77.2
- Rust 1.77.2
- Rustdoc 1.77.2
- Rustup 1.27.0
#### Packages
- Clippy 0.1.77
- Rustfmt 1.7.0-stable
| Version | Environment Variable |
| --------------------- | -------------------- |
| 8.0.392+8 | JAVA_HOME_8_X64 |
| 11.0.21+9 | JAVA_HOME_11_X64 |
| 17.0.9+9 | JAVA_HOME_17_X64 |
| 21.0.1+12.0 (default) | JAVA_HOME_21_X64 |
### PowerShell Tools
- PowerShell 7.4.2
- PowerShell 7.2.18
#### PowerShell Modules
- Az: 11.5.0
- Az: 11.2.0
- Pester: 5.5.0
- PSScriptAnalyzer: 1.22.0
- PSScriptAnalyzer: 1.21.0
### Xcode
| Version | Build | Path |
| ---------------- | -------- | ------------------------------ |
| 15.4 (beta) | 15F5021i | /Applications/Xcode_15.4.app |
| 15.3 | 15E204a | /Applications/Xcode_15.3.app |
| 15.2 | 15C500b | /Applications/Xcode_15.2.app |
| 15.1 | 15C65 | /Applications/Xcode_15.1.app |
| 15.0.1 (default) | 15A507 | /Applications/Xcode_15.0.1.app |
| 14.3.1 | 14E300c | /Applications/Xcode_14.3.1.app |
| Version | Build | Path |
| ---------------- | ------- | ------------------------------ |
| 15.2 | 15C500b | /Applications/Xcode_15.2.app |
| 15.1 | 15C65 | /Applications/Xcode_15.1.app |
| 15.0.1 (default) | 15A507 | /Applications/Xcode_15.0.1.app |
| 14.3.1 | 14E300c | /Applications/Xcode_14.3.1.app |
#### Xcode Support Tools
- xcpretty 0.3.0
#### Installed SDKs
| SDK | SDK Name | Xcode Version |
@@ -161,92 +136,66 @@
| macOS 13.3 | macosx13.3 | 14.3.1 |
| macOS 14.0 | macosx14.0 | 15.0.1 |
| macOS 14.2 | macosx14.2 | 15.1, 15.2 |
| macOS 14.4 | macosx14.4 | 15.3 |
| macOS 14.5 | macosx14.5 | 15.4 |
| iOS 16.4 | iphoneos16.4 | 14.3.1 |
| iOS 17.0 | iphoneos17.0 | 15.0.1 |
| iOS 17.2 | iphoneos17.2 | 15.1, 15.2 |
| iOS 17.4 | iphoneos17.4 | 15.3 |
| iOS 17.5 | iphoneos17.5 | 15.4 |
| Simulator - iOS 16.4 | iphonesimulator16.4 | 14.3.1 |
| Simulator - iOS 17.0 | iphonesimulator17.0 | 15.0.1 |
| Simulator - iOS 17.2 | iphonesimulator17.2 | 15.1, 15.2 |
| Simulator - iOS 17.4 | iphonesimulator17.4 | 15.3 |
| Simulator - iOS 17.5 | iphonesimulator17.5 | 15.4 |
| tvOS 16.4 | appletvos16.4 | 14.3.1 |
| tvOS 17.0 | appletvos17.0 | 15.0.1 |
| tvOS 17.2 | appletvos17.2 | 15.1, 15.2 |
| tvOS 17.4 | appletvos17.4 | 15.3 |
| tvOS 17.5 | appletvos17.5 | 15.4 |
| Simulator - tvOS 16.4 | appletvsimulator16.4 | 14.3.1 |
| Simulator - tvOS 17.0 | appletvsimulator17.0 | 15.0.1 |
| Simulator - tvOS 17.2 | appletvsimulator17.2 | 15.1, 15.2 |
| Simulator - tvOS 17.4 | appletvsimulator17.4 | 15.3 |
| Simulator - tvOS 17.5 | appletvsimulator17.5 | 15.4 |
| watchOS 9.4 | watchos9.4 | 14.3.1 |
| watchOS 10.0 | watchos10.0 | 15.0.1 |
| watchOS 10.2 | watchos10.2 | 15.1, 15.2 |
| watchOS 10.4 | watchos10.4 | 15.3 |
| watchOS 10.5 | watchos10.5 | 15.4 |
| 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 - watchOS 10.4 | watchsimulator10.4 | 15.3 |
| Simulator - watchOS 10.5 | watchsimulator10.5 | 15.4 |
| Simulator - visionOS 1.0 | xrsimulator1.0 | 15.2 |
| visionOS 1.0 | xros1.0 | 15.2 |
| Simulator - visionOS 1.1 | xrsimulator1.1 | 15.3 |
| visionOS 1.1 | xros1.1 | 15.3 |
| visionOS 1.2 | xros1.2 | 15.4 |
| Simulator - visionOS 1.2 | xrsimulator1.2 | 15.4 |
| 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 |
| DriverKit 22.4 | driverkit22.4 | 14.3.1 |
| DriverKit 23.0 | driverkit23.0 | 15.0.1 |
| DriverKit 23.2 | driverkit23.2 | 15.1, 15.2 |
| DriverKit 23.4 | driverkit23.4 | 15.3 |
| DriverKit 23.5 | driverkit23.5 | 15.4 |
#### Installed Simulators
| OS | Xcode Version | Simulators |
| ------------ | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| iOS 16.4 | 14.3.1 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 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.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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.5 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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) |
| tvOS 16.4 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.2 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.4 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.5 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| watchOS 9.4 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Ultra (49mm) |
| watchOS 10.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
| watchOS 10.2 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
| watchOS 10.4 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
| watchOS 10.5 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
| OS | Xcode Version | Simulators |
| ------------ | -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| iOS 16.4 | 14.3.1 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 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.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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 | 14.3.1<br>15.0.1<br>15.1<br>15.2 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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) |
| tvOS 16.4 | 14.3.1<br>15.0.1<br>15.1<br>15.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.2 | 14.3.1<br>15.0.1<br>15.1<br>15.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| watchOS 9.4 | 14.3.1<br>15.0.1<br>15.1<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Ultra (49mm) |
| watchOS 10.0 | 14.3.1<br>15.0.1<br>15.1<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
| watchOS 10.2 | 14.3.1<br>15.0.1<br>15.1<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
### Android
| Package Name | Version |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| Android Command Line Tools | 11.0 |
| Android Emulator | 34.1.20 |
| Android SDK Build-tools | 34.0.0<br>33.0.2 33.0.3 |
| Android SDK Platforms | android-34-ext8 (rev 1)<br>android-34-ext11 (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.1 |
| Android Emulator | 33.1.24 |
| Android SDK Build-tools | 34.0.0<br>33.0.2 |
| Android SDK Platforms | android-34-ext8 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 2)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3) |
| Android SDK Platform-Tools | 34.0.5 |
| Android Support Repository | 47.0.0 |
| CMake | 3.22.1 |
| Google Play services | 49 |
| Google Repository | 58 |
| NDK | 24.0.8215888<br>25.2.9519653<br>26.3.11579264 (default) |
| NDK | 24.0.8215888<br>25.2.9519653<br>26.1.10909125 (default) |
#### Environment variables
| Name | Value |
| ----------------------- | --------------------------------------------------- |
| ANDROID_HOME | /Users/runner/Library/Android/sdk |
| ANDROID_NDK | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_HOME | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_LATEST_HOME | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_ROOT | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_HOME | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_LATEST_HOME | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_ROOT | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_SDK_ROOT | /Users/runner/Library/Android/sdk |
+79 -132
View File
@@ -1,14 +1,14 @@
# macOS 14
- OS Version: macOS 14.4.1 (23E224)
- Kernel Version: Darwin 23.4.0
- Image Version: 20240422.3
- OS Version: macOS 14.2.1 (23C71)
- Kernel Version: Darwin 23.2.0
- Image Version: 20240116.1
## Installed Software
### Language and Runtime
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.408, 8.0.101, 8.0.204
- .NET Core SDK: 7.0.102, 7.0.202, 7.0.306, 7.0.405, 8.0.101
- Bash 3.2.57(1)-release
- Clang/LLVM 14.0.3
- Clang/LLVM 15.0.0
- Clang/LLVM (Homebrew) 15.0.7 - available on `$(brew --prefix llvm@15)/bin/clang`
- GCC 11 (Homebrew GCC 11.4.0) - available by `gcc-11` alias
- GCC 12 (Homebrew GCC 12.3.0) - available by `gcc-12` alias
@@ -16,75 +16,74 @@
- GNU Fortran 11 (Homebrew GCC 11.4.0) - available by `gfortran-11` alias
- GNU Fortran 12 (Homebrew GCC 12.3.0) - available by `gfortran-12` alias
- GNU Fortran 13 (Homebrew GCC 13.2.0) - available by `gfortran-13` alias
- Kotlin 1.9.23-release-779
- Julia 1.10.0
- Kotlin 1.9.22-release-704
- Mono 6.12.0.188
- Node.js 20.12.2
- Node.js 18.19.0
- Perl 5.38.2
- Python3 3.12.3
- R 4.3.2
- Ruby 3.0.6p216
### Package Management
- Bundler 2.5.9
- Bundler 2.5.4
- Carthage 0.39.1
- CocoaPods 1.15.2
- Homebrew 4.2.19
- NPM 10.5.0
- CocoaPods 1.14.3
- Homebrew 4.2.4
- NPM 10.2.3
- NuGet 6.3.1.1
- Pip3 24.0 (python 3.12)
- Pipx 1.5.0
- RubyGems 3.5.9
- RubyGems 3.5.4
- Yarn 1.22.19
### Project Management
- Apache Ant 1.10.14
- Apache Maven 3.9.6
- Gradle 8.7
- Gradle 8.5
### Utilities
- 7-Zip 17.05
- aria2 1.37.0
- azcopy 10.24.0
- bazel 7.1.1
- azcopy 10.21.2
- bazel 7.0.0
- bazelisk 1.19.0
- bsdtar 3.5.3 - available by 'tar' alias
- Curl 8.4.0
- Git 2.44.0
- Git LFS 3.5.1
- GitHub CLI 2.48.0
- Git 2.43.0
- Git LFS 3.4.1
- GitHub CLI 2.42.0
- GNU Tar 1.35 - available by 'gtar' alias
- GNU Wget 1.24.5
- gpg (GnuPG) 2.4.5
- GNU Wget 1.21.4
- gpg (GnuPG) 2.4.3
- jq 1.7.1
- OpenSSL 1.1.1w 11 Sep 2023
- Packer 1.9.4
- pkg-config 0.29.2
- yq 4.43.1
- zstd 1.5.6
- yq 4.40.5
- zstd 1.5.5
### Tools
- AWS CLI 2.15.40
- AWS SAM CLI 1.115.0
- AWS CLI 2.15.10
- AWS SAM CLI 1.107.0
- AWS Session Manager CLI 1.2.553.0
- Azure CLI 2.59.0
- Azure CLI (azure-devops) 1.0.0
- Bicep CLI 0.26.170
- Cmake 3.29.2
- CodeQL Action Bundle 2.17.0
- Fastlane 2.220.0
- SwiftFormat 0.53.7
- Xcbeautify 2.1.0
- Xcode Command Line Tools 15.3.0.0.1.1708646388
- Azure CLI 2.56.0
- Azure CLI (azure-devops) 0.26.0
- Bicep CLI 0.24.24
- Cmake 3.28.1
- CodeQL Action Bundle 2.15.5
- Fastlane 2.219.0
- SwiftFormat 0.53.0
- Xcbeautify 1.4.0
- Xcode Command Line Tools 15.1.0.0.1.1700200546
- Xcodes 1.4.1
### Linters
### Browsers
- Safari 17.4.1 (19618.1.15.11.14)
- SafariDriver 17.4.1 (19618.1.15.11.14)
- Google Chrome 124.0.6367.62
- Google Chrome for Testing 124.0.6367.60
- ChromeDriver 124.0.6367.60
- Selenium server 4.19.1
- Safari 17.2.1 (19617.1.17.11.12)
- SafariDriver 17.2.1 (19617.1.17.11.12)
- Google Chrome 120.0.6099.234
- Google Chrome for Testing 120.0.6099.109
- ChromeDriver 120.0.6099.109
- Selenium server 4.16.1
#### Environment variables
| Name | Value |
@@ -94,54 +93,30 @@
| GECKOWEBDRIVER | |
### Java
| Version | Environment Variable |
| -------------------- | -------------------- |
| 11.0.23+9 | JAVA_HOME_11_arm64 |
| 17.0.11+9 | JAVA_HOME_17_arm64 |
| 21.0.3+9.0 (default) | JAVA_HOME_21_arm64 |
### Cached Tools
#### Python
- 3.11.9
- 3.12.3
#### Node.js
- 18.20.2
- 20.12.2
#### Go
- 1.20.14
- 1.21.9
- 1.22.2
### Rust Tools
- Cargo 1.77.2
- Rust 1.77.2
- Rustdoc 1.77.2
- Rustup 1.27.0
#### Packages
- Clippy 0.1.77
- Rustfmt 1.7.0-stable
| Version | Environment Variable |
| --------------------- | -------------------- |
| 11.0.21+9 | JAVA_HOME_11_arm64 |
| 17.0.9+9 | JAVA_HOME_17_arm64 |
| 21.0.1+12.0 (default) | JAVA_HOME_21_arm64 |
### PowerShell Tools
- PowerShell 7.4.2
- PowerShell 7.2.18
#### PowerShell Modules
- Az: 11.5.0
- Az: 11.2.0
- Pester: 5.5.0
- PSScriptAnalyzer: 1.22.0
- PSScriptAnalyzer: 1.21.0
### Xcode
| Version | Build | Path |
| ---------------- | -------- | ------------------------------ |
| 15.4 (beta) | 15F5021i | /Applications/Xcode_15.4.app |
| 15.3 | 15E204a | /Applications/Xcode_15.3.app |
| 15.2 | 15C500b | /Applications/Xcode_15.2.app |
| 15.1 | 15C65 | /Applications/Xcode_15.1.app |
| 15.0.1 (default) | 15A507 | /Applications/Xcode_15.0.1.app |
| 14.3.1 | 14E300c | /Applications/Xcode_14.3.1.app |
| Version | Build | Path |
| ---------------- | ------- | ------------------------------ |
| 15.2 | 15C500b | /Applications/Xcode_15.2.app |
| 15.1 | 15C65 | /Applications/Xcode_15.1.app |
| 15.0.1 (default) | 15A507 | /Applications/Xcode_15.0.1.app |
| 14.3.1 | 14E300c | /Applications/Xcode_14.3.1.app |
#### Xcode Support Tools
- xcpretty 0.3.0
#### Installed SDKs
| SDK | SDK Name | Xcode Version |
@@ -149,95 +124,67 @@
| macOS 13.3 | macosx13.3 | 14.3.1 |
| macOS 14.0 | macosx14.0 | 15.0.1 |
| macOS 14.2 | macosx14.2 | 15.1, 15.2 |
| macOS 14.4 | macosx14.4 | 15.3 |
| macOS 14.5 | macosx14.5 | 15.4 |
| iOS 16.4 | iphoneos16.4 | 14.3.1 |
| iOS 17.0 | iphoneos17.0 | 15.0.1 |
| iOS 17.2 | iphoneos17.2 | 15.1, 15.2 |
| iOS 17.4 | iphoneos17.4 | 15.3 |
| iOS 17.5 | iphoneos17.5 | 15.4 |
| Simulator - iOS 16.4 | iphonesimulator16.4 | 14.3.1 |
| Simulator - iOS 17.0 | iphonesimulator17.0 | 15.0.1 |
| Simulator - iOS 17.2 | iphonesimulator17.2 | 15.1, 15.2 |
| Simulator - iOS 17.4 | iphonesimulator17.4 | 15.3 |
| Simulator - iOS 17.5 | iphonesimulator17.5 | 15.4 |
| tvOS 16.4 | appletvos16.4 | 14.3.1 |
| tvOS 17.0 | appletvos17.0 | 15.0.1 |
| tvOS 17.2 | appletvos17.2 | 15.1, 15.2 |
| tvOS 17.4 | appletvos17.4 | 15.3 |
| tvOS 17.5 | appletvos17.5 | 15.4 |
| Simulator - tvOS 16.4 | appletvsimulator16.4 | 14.3.1 |
| Simulator - tvOS 17.0 | appletvsimulator17.0 | 15.0.1 |
| Simulator - tvOS 17.2 | appletvsimulator17.2 | 15.1, 15.2 |
| Simulator - tvOS 17.4 | appletvsimulator17.4 | 15.3 |
| Simulator - tvOS 17.5 | appletvsimulator17.5 | 15.4 |
| watchOS 9.4 | watchos9.4 | 14.3.1 |
| watchOS 10.0 | watchos10.0 | 15.0.1 |
| watchOS 10.2 | watchos10.2 | 15.1, 15.2 |
| watchOS 10.4 | watchos10.4 | 15.3 |
| watchOS 10.5 | watchos10.5 | 15.4 |
| 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 - watchOS 10.4 | watchsimulator10.4 | 15.3 |
| Simulator - watchOS 10.5 | watchsimulator10.5 | 15.4 |
| visionOS 1.0 | xros1.0 | 15.2 |
| Simulator - visionOS 1.0 | xrsimulator1.0 | 15.2 |
| visionOS 1.1 | xros1.1 | 15.3 |
| Simulator - visionOS 1.1 | xrsimulator1.1 | 15.3 |
| Simulator - visionOS 1.2 | xrsimulator1.2 | 15.4 |
| visionOS 1.2 | xros1.2 | 15.4 |
| 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 |
| DriverKit 22.4 | driverkit22.4 | 14.3.1 |
| DriverKit 23.0 | driverkit23.0 | 15.0.1 |
| DriverKit 23.2 | driverkit23.2 | 15.1, 15.2 |
| DriverKit 23.4 | driverkit23.4 | 15.3 |
| DriverKit 23.5 | driverkit23.5 | 15.4 |
#### Installed Simulators
| OS | Xcode Version | Simulators |
| ------------ | ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| iOS 16.4 | 14.3.1 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 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.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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.5 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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) |
| tvOS 16.4 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.2 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.4 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.5 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| watchOS 9.4 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Ultra (49mm) |
| watchOS 10.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
| watchOS 10.2 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
| watchOS 10.4 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
| watchOS 10.5 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
| visionOS 1.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple Vision Pro |
| visionOS 1.1 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple Vision Pro |
| visionOS 1.2 | 14.3.1<br>15.0.1<br>15.1<br>15.2<br>15.3<br>15.4 | Apple Vision Pro |
| OS | Xcode Version | Simulators |
| ------------ | -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| iOS 16.4 | 14.3.1 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 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.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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 | 14.3.1<br>15.0.1<br>15.1<br>15.2 | iPhone 14<br>iPhone 14 Plus<br>iPhone 14 Pro<br>iPhone 14 Pro Max<br>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) |
| tvOS 16.4 | 14.3.1<br>15.0.1<br>15.1<br>15.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| tvOS 17.2 | 14.3.1<br>15.0.1<br>15.1<br>15.2 | Apple TV<br>Apple TV 4K (3rd generation)<br>Apple TV 4K (3rd generation) (at 1080p) |
| watchOS 9.4 | 14.3.1<br>15.0.1<br>15.1<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Ultra (49mm) |
| watchOS 10.0 | 14.3.1<br>15.0.1<br>15.1<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
| watchOS 10.2 | 14.3.1<br>15.0.1<br>15.1<br>15.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 8 (41mm)<br>Apple Watch Series 8 (45mm)<br>Apple Watch Series 9 (41mm)<br>Apple Watch Series 9 (45mm)<br>Apple Watch Ultra (49mm)<br>Apple Watch Ultra 2 (49mm) |
| visionOS 1.0 | 14.3.1<br>15.0.1<br>15.1<br>15.2 | Apple Vision Pro |
### Android
| Package Name | Version |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| Android Command Line Tools | 11.0 |
| Android Emulator | 34.1.20 |
| Android SDK Build-tools | 34.0.0<br>33.0.2 33.0.3 |
| Android SDK Platforms | android-34-ext8 (rev 1)<br>android-34-ext11 (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.1 |
| Android Emulator | 33.1.24 |
| Android SDK Build-tools | 34.0.0<br>33.0.2 |
| Android SDK Platforms | android-34-ext8 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 2)<br>android-33-ext5 (rev 1)<br>android-33-ext4 (rev 1)<br>android-33 (rev 3) |
| Android SDK Platform-Tools | 34.0.5 |
| Android Support Repository | 47.0.0 |
| CMake | 3.22.1 |
| Google Play services | 49 |
| Google Repository | 58 |
| NDK | 24.0.8215888<br>25.2.9519653<br>26.3.11579264 (default) |
| NDK | 24.0.8215888<br>25.2.9519653<br>26.1.10909125 (default) |
#### Environment variables
| Name | Value |
| ----------------------- | --------------------------------------------------- |
| ANDROID_HOME | /Users/runner/Library/Android/sdk |
| ANDROID_NDK | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_HOME | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_LATEST_HOME | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_ROOT | /Users/runner/Library/Android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_HOME | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_LATEST_HOME | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_ROOT | /Users/runner/Library/Android/sdk/ndk/26.1.10909125 |
| ANDROID_SDK_ROOT | /Users/runner/Library/Android/sdk |
@@ -1,68 +0,0 @@
################################################################################
## File: Configure-Xcode-Simulators.ps1
## Team: CI-Build
## Desc: CHeck and remove duplicate simulators
################################################################################
Import-Module "~/image-generation/helpers/Common.Helpers.psm1"
Import-Module "~/image-generation/helpers/Xcode.Helpers.psm1"
$arch = Get-Architecture
$xcodeVersions = (Get-ToolsetContent).xcode.${arch}.versions
# Switch to each Xcode version
foreach ($xcodeVersion in $xcodeVersions.link) {
write-host "Switching to Xcode $xcodeVersion"
Switch-Xcode -Version $XcodeVersion
# Make object of all simulators
$devicesList = $(xcrun simctl list -j devices | ConvertFrom-Json)
$devicesObject = [System.Collections.ArrayList]@()
foreach ($runtime in $devicesList.devices.psobject.Properties.name) {
foreach ($device in $devicesList.devices.$runtime) {
$devicesObject += [PSCustomObject]@{
runtime = $runtime
DeviceName = $($device.name)
DeviceId = $($device.udid)
DeviceCreationTime = (Get-Item $HOME/Library/Developer/CoreSimulator/Devices/$($device.udid)).CreationTime
}
}
}
# Remove duplicates
foreach ($simRuntume in $devicesObject.runtime | Sort-Object -Unique) {
[System.Collections.ArrayList]$sameRuntimeDevices = [array]$($devicesObject | Where-Object {$_.runtime -eq $simRuntume} | Sort-Object -Property DeviceName)
Write-Host "///////////////////////////////////////////////////////////////////"
Write-Host "// Checking for duplicates in $simRuntume "
$devicesAsHashTable = $sameRuntimeDevices | Group-Object -Property DeviceName -AsHashTable -AsString
foreach ($key in $devicesAsHashTable.Keys) {
if ( $devicesAsHashTable[$key].count -gt 1) {
Write-Host "// Duplicates for $key - $($devicesAsHashTable[$key].count)"
}
}
Write-Host "///////////////////////////////////////////////////////////////////"
for ($i = 0; $i -lt $sameRuntimeDevices.Count; $i++) {
if ( [string]::IsNullOrEmpty($($sameRuntimeDevices[$i+1].DeviceName)) ){
Write-Host "No more devices to compare in $simRuntume"
Write-Host "-------------------------------------------------------------------"
continue
}
Write-Host "$($sameRuntimeDevices[$i].DeviceName) - DeviceId $($sameRuntimeDevices[$i].DeviceId) comparing with"
Write-Host "$($sameRuntimeDevices[$i+1].DeviceName) - DeviceId $($sameRuntimeDevices[$i+1].DeviceId)"
Write-Host "-------------------------------------------------------------------"
if ($sameRuntimeDevices[$i].DeviceName -eq $sameRuntimeDevices[$i+1].DeviceName) {
write-host "*******************************************************************"
write-host "** Duplicate found"
if ($sameRuntimeDevices[$i].DeviceCreationTime -lt $sameRuntimeDevices[$i+1].DeviceCreationTime) {
Write-Host "** will be removed $($sameRuntimeDevices[$i+1].DeviceName) with id $($sameRuntimeDevices[$i+1].DeviceId)"
xcrun simctl delete $sameRuntimeDevices[$i+1].DeviceId
$sameRuntimeDevices.RemoveAt($i+1)
} else {
Write-Host "** will be removed $($sameRuntimeDevices[$i].DeviceName) with id $($sameRuntimeDevices[$i].DeviceId)"
xcrun simctl delete $sameRuntimeDevices[$i].DeviceId
$sameRuntimeDevices.RemoveAt($i)
}
write-host "*******************************************************************"
}
}
}
}
@@ -22,17 +22,17 @@ while [[ $retry -gt 0 ]]; do
fi
sleep 30
done
IFS=',' read -r -a windowslist <<< "$openwindows"
IFS=',' read -r -a windowslist <<< $openwindows
if [[ -n ${openwindows} ]]; then
echo "Found opened window:"
fi
for key in ${!windowslist[@]}; do
if [[ ${windowslist[$key]} =~ "NotificationCenter" ]]; then
echo "[Warning] ${windowslist[$key]}"
for window in ${windowslist[@]}; do
if [[ $window =~ "NotificationCenter" ]]; then
echo "[Warning] $window"
else
echo " - ${windowslist[$key]}" | xargs
echo " - ${window}" | xargs
scripterror=true
fi
done
@@ -6,13 +6,13 @@
source ~/utils/utils.sh
add_filtered_installation_components() {
add_filtered_instalaltion_components() {
local minimum_version=$1
shift
local tools_array=("$@")
for item in ${tools_array[@]}; do
# take the last argument after splitting string by ';'' and '-''
# take the last argument after spliting string by ';'' and '-''
version=$(echo "${item##*[-;]}")
if [[ "$(printf "${minimum_version}\n${version}\n" | sort -V | head -n1)" == "$minimum_version" ]]; then
components+=($item)
@@ -96,11 +96,11 @@ echo "export ANDROID_NDK_ROOT=$ANDROID_NDK_HOME" >> "${HOME}/.bashrc"
echo "export ANDROID_NDK_LATEST_HOME=$ANDROID_NDK_LATEST_HOME" >> "${HOME}/.bashrc"
availablePlatforms=($($SDKMANAGER --list | grep "platforms;android-[0-9]" | cut -d"|" -f 1 | sort -u))
add_filtered_installation_components $android_platform "${availablePlatforms[@]}"
add_filtered_instalaltion_components $android_platform "${availablePlatforms[@]}"
allBuildTools=($($SDKMANAGER --list --include_obsolete | grep "build-tools;" | cut -d"|" -f 1 | sort -u))
availableBuildTools=$(echo ${allBuildTools[@]//*rc[0-9]/})
add_filtered_installation_components $android_build_tool "${availableBuildTools[@]}"
add_filtered_instalaltion_components $android_build_tool "${availableBuildTools[@]}"
echo "y" | $SDKMANAGER ${components[@]}
@@ -12,4 +12,14 @@ brew_smart_install "switchaudio-osx"
echo "install sox"
brew_smart_install "sox"
# Big Sur doesn't support soundflower installation without user interaction https://github.com/mattingalls/Soundflower/releases/tag/2.0b2
# Install blackhole-2ch for Big Sur instead
echo "install blackhole-2ch"
brew_smart_install "blackhole-2ch"
echo "set BlackHole 2ch as input/output device"
SwitchAudioSource -s "BlackHole 2ch" -t input
SwitchAudioSource -s "BlackHole 2ch" -t output
invoke_tests "System" "Audio Device"
@@ -10,11 +10,9 @@ echo "Installing aws..."
awscliv2_pkg_path=$(download_with_retry "https://awscli.amazonaws.com/AWSCLIV2.pkg")
sudo installer -pkg "$awscliv2_pkg_path" -target /
if ! is_BigSur; then
echo "Installing aws sam cli..."
brew tap aws/tap
brew_smart_install aws-sam-cli
fi
echo "Installing aws sam cli..."
brew tap aws/tap
brew_smart_install aws-sam-cli
echo "Install aws cli session manager"
brew install --cask session-manager-plugin
@@ -18,13 +18,7 @@ fi
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"
else
brew_smart_install "$package"
fi
brew_smart_install "$package"
done
cask_packages=$(get_toolset_value '.brew.cask_packages[]')
@@ -95,10 +89,8 @@ if is_Monterey; then
echo "export PARALLELS_DMG_URL=$url" >> ${HOME}/.bashrc
fi
if ! is_BigSur; then
# Install Azure DevOps extension for Azure Command Line Interface
az extension add -n azure-devops
fi
# Install Azure DevOps extension for Azure Command Line Interface
az extension add -n azure-devops
# Invoke tests for all basic tools
invoke_tests "BasicTools"
+6 -9
View File
@@ -11,16 +11,13 @@ brew_smart_install "git"
git config --global --add safe.directory "*"
echo "Installing Git LFS"
brew_smart_install "git-lfs"
if ! is_BigSur; then
echo "Installing Git LFS"
brew_smart_install "git-lfs"
# Update global git config
git lfs install
# Update system git config
sudo git lfs install --system
fi
# Update global git config
git lfs install
# Update system git config
sudo git lfs install --system
echo "Disable all the Git help messages..."
git config --global advice.pushUpdateRejected false
@@ -18,7 +18,7 @@ else
fi
if ! is_Arm64; then
# Most of build systems and scripts look up ssl here
# Most of buildsystems and scripts look up ssl here
ln -sf $(brew --cellar [email protected])/1.1* /usr/local/opt/openssl
fi
+3 -9
View File
@@ -38,17 +38,11 @@ if is_Veertu; then
fi
echo "Brew Installing Python 3"
brew_smart_install "[email protected]2"
brew_smart_install "[email protected]1"
echo "Installing pipx"
if is_Arm64; then
export PIPX_BIN_DIR="$HOME/.local/bin"
export PIPX_HOME="$HOME/.local/pipx"
else
export PIPX_BIN_DIR=/usr/local/opt/pipx_bin
export PIPX_HOME=/usr/local/opt/pipx
fi
export PIPX_BIN_DIR=/usr/local/opt/pipx_bin
export PIPX_HOME=/usr/local/opt/pipx
brew_smart_install "pipx"
@@ -43,7 +43,7 @@ while ! is_clt_installed; do
echo "Unable to find the Command Line Tools, all the attempts exhausted"
exit 1
fi
echo "Command Line Tools not found, trying to install them via software updates, $retries attempts left"
echo "Command Line Tools not found, trying to install them via softwareupdates, $retries attempts left"
install_clt
((retries--))
echo "Wait $sleepInterval seconds before the next check for installed Command Line Tools"
@@ -61,12 +61,12 @@ if ((-not $os.IsVentura) -and (-not $os.IsSonoma)) {
$languageAndRuntime.AddToolVersion("Python", $(Get-PythonVersion))
}
$languageAndRuntime.AddToolVersion("Python3", $(Get-Python3Version))
if ((-not $os.IsVentura) -and (-not $os.IsSonoma) -and (-not $os.IsBigSur)) {
if ((-not $os.IsVenturaArm64) -and (-not $os.IsSonomaArm64)) {
$languageAndRuntime.AddToolVersion("Python3", $(Get-Python3Version))
}
if ((-not $os.IsVentura) -and (-not $os.IsSonoma)) {
$languageAndRuntime.AddToolVersion("R", $(Get-RVersion))
}
$languageAndRuntime.AddToolVersion("Ruby", $(Get-RubyVersion))
# Package Management
@@ -87,11 +87,13 @@ if ((-not $os.IsVentura) -and (-not $os.IsSonoma)) {
$packageManagement.AddToolVersion("Pip", $(Get-PipVersion -Version 2))
}
$packageManagement.AddToolVersion("Pip3", $(Get-PipVersion -Version 3))
$packageManagement.AddToolVersion("Pipx", $(Get-PipxVersion))
if ((-not $os.IsVenturaArm64) -and (-not $os.IsSonomaArm64)) {
$packageManagement.AddToolVersion("Pip3", $(Get-PipVersion -Version 3))
$packageManagement.AddToolVersion("Pipx", $(Get-PipxVersion))
}
$packageManagement.AddToolVersion("RubyGems", $(Get-RubyGemsVersion))
if ((-not $os.IsVenturaArm64) -and (-not $os.IsSonomaArm64) -and (-not $os.IsSonoma)) {
if ((-not $os.IsVenturaArm64) -and (-not $os.IsSonomaArm64)) {
$packageManagement.AddToolVersion("Vcpkg", $(Get-VcpkgVersion))
}
$packageManagement.AddToolVersion("Yarn", $(Get-YarnVersion))
@@ -118,9 +120,7 @@ $utilities.AddToolVersion("bazelisk", $(Get-BazeliskVersion))
$utilities.AddToolVersion("bsdtar", $(Get-BsdtarVersion))
$utilities.AddToolVersion("Curl", $(Get-CurlVersion))
$utilities.AddToolVersion("Git", $(Get-GitVersion))
if (-not $os.IsBigSur) {
$utilities.AddToolVersion("Git LFS", $(Get-GitLFSVersion))
}
$utilities.AddToolVersion("Git LFS", $(Get-GitLFSVersion))
$utilities.AddToolVersion("GitHub CLI", $(Get-GitHubCLIVersion))
$utilities.AddToolVersion("GNU Tar", $(Get-GnuTarVersion))
$utilities.AddToolVersion("GNU Wget", $(Get-WgetVersion))
@@ -165,14 +165,10 @@ if ((-not $os.IsVentura) -and (-not $os.IsSonoma)) {
$tools.AddToolVersion("App Center CLI", $(Get-AppCenterCLIVersion))
}
$tools.AddToolVersion("AWS CLI", $(Get-AWSCLIVersion))
if (-not $os.IsBigSur) {
$tools.AddToolVersion("AWS SAM CLI", $(Get-AWSSAMCLIVersion))
}
$tools.AddToolVersion("AWS SAM CLI", $(Get-AWSSAMCLIVersion))
$tools.AddToolVersion("AWS Session Manager CLI", $(Get-AWSSessionManagerCLIVersion))
if (-not $os.IsBigSur) {
$tools.AddToolVersion("Azure CLI", $(Get-AzureCLIVersion))
$tools.AddToolVersion("Azure CLI (azure-devops)", $(Get-AzureDevopsVersion))
}
$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)) {
$tools.AddToolVersion("Cabal", $(Get-CabalVersion))
@@ -220,27 +216,26 @@ $java = $installedSoftware.AddHeader("Java")
$java.AddTable($(Get-JavaVersions))
# Toolcache
if (-not $os.IsSonoma) {
$toolcache = $installedSoftware.AddHeader("Cached Tools")
$toolcache.AddNodes($(Build-ToolcacheSection))
$toolcache = $installedSoftware.AddHeader("Cached Tools")
$toolcache.AddNodes($(Build-ToolcacheSection))
# Rust
$rust = $installedSoftware.AddHeader("Rust Tools")
$rust.AddToolVersion("Cargo", $(Get-RustCargoVersion))
$rust.AddToolVersion("Rust", $(Get-RustVersion))
$rust.AddToolVersion("Rustdoc", $(Get-RustdocVersion))
$rust.AddToolVersion("Rustup", $(Get-RustupVersion))
# Rust
if (-not $os.IsBigSur) {
$rust = $installedSoftware.AddHeader("Rust Tools")
$rust.AddToolVersion("Cargo", $(Get-RustCargoVersion))
$rust.AddToolVersion("Rust", $(Get-RustVersion))
$rust.AddToolVersion("Rustdoc", $(Get-RustdocVersion))
$rust.AddToolVersion("Rustup", $(Get-RustupVersion))
$rustPackages = $rust.AddHeader("Packages")
if ((-not $os.IsVentura) -and (-not $os.IsSonoma)) {
$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))
$rustPackages = $rust.AddHeader("Packages")
if (-not $os.IsVentura) {
$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))
}
# PowerShell
@@ -260,7 +260,7 @@ function Get-RubyGemsVersion {
}
function Get-ComposerVersion {
$composerVersion = Run-Command "composer --version" | Select-Object -First 1 | Take-Part -Part 2
$composerVersion = Run-Command "composer --version" | Take-Part -Part 2
return $composerVersion
}
@@ -37,14 +37,10 @@ function Build-ToolcacheSection {
$nodes = @()
if ((-not $os.IsVenturaArm64) -and (-not $os.IsSonoma)) {
$nodes += @(
[ToolVersionsListNode]::new("PyPy", $(Get-ToolcachePyPyVersions), '^\d+\.\d+', "List")
)
}
if ((-not $os.IsVenturaArm64) -and (-not $os.IsSonomaArm64)) {
$nodes += @(
[ToolVersionsListNode]::new("Ruby", $(Get-ToolcacheRubyVersions), '^\d+\.\d+', "List")
[ToolVersionsListNode]::new("Ruby", $(Get-ToolcacheRubyVersions), '^\d+\.\d+', "List"),
[ToolVersionsListNode]::new("PyPy", $(Get-ToolcachePyPyVersions), '^\d+\.\d+', "List")
)
}
@@ -2,13 +2,13 @@ Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
$os = Get-OSVersion
Describe "Azure CLI" -Skip:($os.IsBigSur) {
Describe "Azure CLI" {
It "Azure CLI" {
"az -v" | Should -ReturnZeroExitCode
}
}
Describe "Azure DevOps CLI" -Skip:($os.IsBigSur) {
Describe "Azure DevOps CLI" {
It "az devops" {
"az devops -h" | Should -ReturnZeroExitCode
}
@@ -159,7 +159,7 @@ Describe "virtualbox" -Skip:($os.IsBigSur -or $os.IsVentura -or $os.IsSonoma) {
}
}
Describe "R" -Skip:($os.IsVentura -or $os.IsSonoma -or $os.IsBigSur) {
Describe "R" -Skip:($os.IsVentura -or $os.IsSonoma) {
It "R" {
"R --version" | Should -ReturnZeroExitCode
}
+2 -2
View File
@@ -33,7 +33,7 @@ Describe "GCC" {
}
}
Describe "vcpkg" -Skip:($os.IsVenturaArm64 -or $os.IsSonomaArm64 -or $os.IsSonoma) {
Describe "vcpkg" -Skip:($os.IsVenturaArm64 -or $os.IsSonomaArm64) {
It "vcpkg" {
"vcpkg version" | Should -ReturnZeroExitCode
}
@@ -43,7 +43,7 @@ Describe "AWS" {
It "AWS CLI" {
"aws --version" | Should -ReturnZeroExitCode
}
It "AWS SAM CLI" -Skip:($os.IsBigSur) {
It "AWS SAM CLI" {
"sam --version" | Should -ReturnZeroExitCode
}
+1 -3
View File
@@ -1,12 +1,10 @@
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
$os = Get-OSVersion
Describe "Git" {
It "git is installed" {
"git --version" | Should -ReturnZeroExitCode
}
It "git lfs is installed" -Skip:($os.IsBigSur) {
It "git lfs is installed" {
"git lfs version" | Should -ReturnZeroExitCode
}
}
+4 -10
View File
@@ -3,19 +3,13 @@ Import-Module "$PSScriptRoot/Helpers.psm1" -DisableNameChecking
$os = Get-OSVersion
Describe "Python3" {
Describe "Python3" -Skip:($os.IsVenturaArm64 -or $os.IsSonomaArm64) {
It "Python 3 is available" {
"python3 --version" | Should -ReturnZeroExitCode
}
if ($os.IsVenturaArm64 -or $os.IsSonomaArm64) {
It "Python 3 is installed under /opt/homebrew/bin/" {
Get-ToolPath "python3" | Should -BeLike "/opt/homebrew/bin/*"
}
} else {
It "Python 3 is installed under /usr/local/bin" {
Get-ToolPath "python3" | Should -BeLike "/usr/local/bin*"
}
It "Python 3 is installed under /usr/local/bin" {
Get-ToolPath "python3" | Should -BeLike "/usr/local/bin*"
}
It "Pip 3 is available" {
+1 -1
View File
@@ -2,7 +2,7 @@ Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
$os = Get-OSVersion
Describe "Rust" -Skip:($os.IsBigSur) {
Describe "Rust" {
Context "Rust" {
It "Rustup is installed" {
"rustup --version" | Should -ReturnZeroExitCode
@@ -33,6 +33,10 @@ Describe "Audio device" -Skip:($os.IsVentura -or $os.IsSonoma) {
It "SwitchAudioSource is installed" {
"SwitchAudioSource -c" | Should -ReturnZeroExitCode
}
It "Audio channel BlackHole 2ch" {
SwitchAudioSource -c | Should -BeLikeExactly "BlackHole 2ch"
}
}
Describe "Screen Resolution" -Skip:(isVeertu) {
@@ -99,7 +99,7 @@ Describe "Toolcache" {
}
}
}
Context "PyPy" -Skip:($os.IsVenturaArm64 -or $os.IsSonoma) {
Context "PyPy" -Skip:($os.IsVenturaArm64 -or $os.IsSonomaArm64) {
$pypyDirectory = Join-Path $toolcacheDirectory "PyPy"
$pypyPackage = $packages | Where-Object { $_.ToolName -eq "pypy" } | Select-Object -First 1
$testCase = @{ PypyDirectory = $pypyDirectory }
@@ -8,8 +8,7 @@ Describe "Apache" -Skip:($os.IsVentura -or $os.IsSonoma) {
}
It "Apache Service" {
$service = brew services list --json | ConvertFrom-Json | Where-Object { $_.name -eq "httpd" }
$service.status | Should -Match "(stopped|none)"
brew services list | Out-String | Should -Match "httpd\s+(stopped|none)"
}
}
@@ -19,7 +18,6 @@ Describe "Nginx" -Skip:($os.IsVentura -or $os.IsSonoma) {
}
It "Nginx Service" {
$service = brew services list --json | ConvertFrom-Json | Where-Object { $_.name -eq "nginx" }
$service.status | Should -Match "(stopped|none)"
brew services list | Out-String | Should -Match "nginx\s+(stopped|none)"
}
}
+1
View File
@@ -245,6 +245,7 @@ build {
"${path.root}/../scripts/build/install-swiftlint.sh",
"${path.root}/../scripts/build/install-openjdk.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",
+1 -29
View File
@@ -11,32 +11,12 @@ 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" {
@@ -92,16 +72,8 @@ source "veertu-anka-vm-clone" "template" {
stop_vm = "true"
}
source "null" "template" {
ssh_host = "${var.source_vm_name}"
ssh_port = "${var.source_vm_port}"
ssh_username = "${var.vm_username}"
ssh_private_key_file = "${var.vm_password}"
ssh_proxy_host = "${var.socks_proxy}"
}
build {
sources = ["source.${var.builder_type}.template"]
sources = ["source.veertu-anka-vm-clone.template"]
provisioner "shell" {
inline = ["mkdir ${local.image_folder}"]
+3 -32
View File
@@ -11,32 +11,12 @@ 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" {
@@ -92,16 +72,8 @@ source "veertu-anka-vm-clone" "template" {
stop_vm = "true"
}
source "null" "template" {
ssh_host = "${var.source_vm_name}"
ssh_port = "${var.source_vm_port}"
ssh_username = "${var.vm_username}"
ssh_private_key_file = "${var.vm_password}"
ssh_proxy_host = "${var.socks_proxy}"
}
build {
sources = ["source.${var.builder_type}.template"]
sources = ["source.veertu-anka-vm-clone.template"]
provisioner "shell" {
inline = ["mkdir ${local.image_folder}"]
@@ -266,9 +238,8 @@ build {
}
provisioner "shell" {
environment_vars = ["IMAGE_FOLDER=${local.image_folder}"]
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; {{ .Vars }} pwsh -f {{ .Path }}"
script = "${path.root}/../scripts/build/Configure-Xcode-Simulators.ps1"
execute_command = "source $HOME/.bash_profile; ruby {{ .Path }}"
script = "${path.root}/../scripts/build/configure-xcode-simulators.rb"
}
provisioner "shell" {
@@ -11,32 +11,12 @@ 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" {
@@ -93,16 +73,8 @@ source "veertu-anka-vm-clone" "template" {
log_level = "debug"
}
source "null" "template" {
ssh_host = "${var.source_vm_name}"
ssh_port = "${var.source_vm_port}"
ssh_username = "${var.vm_username}"
ssh_private_key_file = "${var.vm_password}"
ssh_proxy_host = "${var.socks_proxy}"
}
build {
sources = ["source.${var.builder_type}.template"]
sources = ["source.veertu-anka-vm-clone.template"]
provisioner "shell" {
inline = ["mkdir ${local.image_folder}"]
@@ -210,7 +182,6 @@ build {
"${path.root}/../scripts/build/install-powershell.sh",
"${path.root}/../scripts/build/install-mono.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",
@@ -262,9 +233,8 @@ build {
}
provisioner "shell" {
environment_vars = ["IMAGE_FOLDER=${local.image_folder}"]
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; {{ .Vars }} pwsh -f {{ .Path }}"
script = "${path.root}/../scripts/build/Configure-Xcode-Simulators.ps1"
execute_command = "source $HOME/.bash_profile; ruby {{ .Path }}"
script = "${path.root}/../scripts/build/configure-xcode-simulators.rb"
}
provisioner "shell" {
+5 -43
View File
@@ -11,32 +11,12 @@ 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" {
@@ -92,16 +72,8 @@ source "veertu-anka-vm-clone" "template" {
stop_vm = "true"
}
source "null" "template" {
ssh_host = "${var.source_vm_name}"
ssh_port = "${var.source_vm_port}"
ssh_username = "${var.vm_username}"
ssh_private_key_file = "${var.vm_password}"
ssh_proxy_host = "${var.socks_proxy}"
}
build {
sources = ["source.${var.builder_type}.template"]
sources = ["source.veertu-anka-vm-clone.template"]
provisioner "shell" {
inline = ["mkdir ${local.image_folder}"]
@@ -245,6 +217,7 @@ build {
"${path.root}/../scripts/build/install-gcc.sh",
"${path.root}/../scripts/build/install-cocoapods.sh",
"${path.root}/../scripts/build/install-android-sdk.sh",
"${path.root}/../scripts/build/install-vcpkg.sh",
"${path.root}/../scripts/build/install-safari.sh",
"${path.root}/../scripts/build/install-chrome.sh",
"${path.root}/../scripts/build/install-edge.sh",
@@ -256,26 +229,15 @@ build {
}
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" {
environment_vars = ["IMAGE_FOLDER=${local.image_folder}"]
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; {{ .Vars }} pwsh -f {{ .Path }}"
script = "${path.root}/../scripts/build/Configure-Xcode-Simulators.ps1"
execute_command = "source $HOME/.bash_profile; ruby {{ .Path }}"
script = "${path.root}/../scripts/build/configure-xcode-simulators.rb"
}
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\""
"pwsh -File \"${local.image_folder}/software-report/Generate-SoftwareReport.ps1\" -OutputDirectory \"${local.image_folder}/output/software-report\" -ImageName ${var.build_id}"
]
}
@@ -11,32 +11,12 @@ 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" {
@@ -93,16 +73,8 @@ source "veertu-anka-vm-clone" "template" {
log_level = "debug"
}
source "null" "template" {
ssh_host = "${var.source_vm_name}"
ssh_port = "${var.source_vm_port}"
ssh_username = "${var.vm_username}"
ssh_private_key_file = "${var.vm_password}"
ssh_proxy_host = "${var.socks_proxy}"
}
build {
sources = ["source.${var.builder_type}.template"]
sources = ["source.veertu-anka-vm-clone.template"]
provisioner "shell" {
inline = ["mkdir ${local.image_folder}"]
@@ -210,7 +182,6 @@ build {
"${path.root}/../scripts/build/install-powershell.sh",
"${path.root}/../scripts/build/install-mono.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",
@@ -253,26 +224,15 @@ build {
}
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" {
environment_vars = ["IMAGE_FOLDER=${local.image_folder}"]
execute_command = "chmod +x {{ .Path }}; source $HOME/.bash_profile; {{ .Vars }} pwsh -f {{ .Path }}"
script = "${path.root}/../scripts/build/Configure-Xcode-Simulators.ps1"
execute_command = "source $HOME/.bash_profile; ruby {{ .Path }}"
script = "${path.root}/../scripts/build/configure-xcode-simulators.rb"
}
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\""
"pwsh -File \"${local.image_folder}/software-report/Generate-SoftwareReport.ps1\" -OutputDirectory \"${local.image_folder}/output/software-report\" -ImageName ${var.build_id}"
]
}
+9 -3
View File
@@ -195,6 +195,7 @@
"aliyun-cli",
"ant",
"aria2",
"azure-cli",
"bazelisk",
"carthage",
"cmake",
@@ -217,7 +218,8 @@
"zlib",
"libxext",
"libxft",
"tcl-tk"
"tcl-tk",
"r"
],
"cask_packages": [
"julia"
@@ -285,6 +287,7 @@
"x64": {
"variable_template" : "GOROOT_{0}_{1}_X64",
"versions": [
"1.19.*",
"1.20.*",
"1.21.*"
]
@@ -296,6 +299,9 @@
"arch": {
"x64": {
"versions": [
"2.5.*",
"2.6.*",
"2.7.*",
"3.0.*",
"3.1.*"
]
@@ -321,7 +327,7 @@
}
},
"ruby": {
"default": "3.0",
"default": "2.7",
"rubygems": [
"xcode-install",
"cocoapods",
@@ -333,7 +339,7 @@
]
},
"go": {
"default": "1.21"
"default": "1.20"
},
"node": {
"default": "18",
+7 -13
View File
@@ -22,23 +22,16 @@
"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"
"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"
"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"
"13.2.1.2", "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",
@@ -286,9 +279,9 @@
"x64": {
"variable_template" : "GOROOT_{0}_{1}_X64",
"versions": [
"1.19.*",
"1.20.*",
"1.21.*",
"1.22.*"
"1.21.*"
]
}
}
@@ -298,6 +291,7 @@
"arch": {
"x64": {
"versions": [
"2.7.*",
"3.0.*",
"3.1.*"
]
@@ -334,7 +328,7 @@
]
},
"go": {
"default": "1.21"
"default": "1.20"
},
"node": {
"default": "18",
+7 -4
View File
@@ -184,17 +184,17 @@
"x64": {
"variable_template" : "GOROOT_{0}_{1}_X64",
"versions": [
"1.19.*",
"1.20.*",
"1.21.*",
"1.22.*"
"1.21.*"
]
},
"arm64": {
"variable_template" : "GOROOT_{0}_{1}_ARM64",
"versions": [
"1.19.*",
"1.20.*",
"1.21.*",
"1.22.*"
"1.21.*"
]
}
}
@@ -211,6 +211,9 @@
}
}
],
"go": {
"default": "1.20"
},
"node": {
"default": "20"
},
+3 -79
View File
@@ -3,8 +3,6 @@
"default": "15.0.1",
"x64": {
"versions": [
{ "link": "15.4", "version": "15.4.0-Beta+15F5021i", "install_runtimes": "true", "sha256": "e20a2af230e3dbac105496f194530e9c865a756b136ff8ed7c7f215774a91a9e"},
{ "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"},
{ "link": "15.1", "version": "15.1.0+15C65", "install_runtimes": "true", "sha256": "857D8DB537BAC82BF99DE0E1D3895D214D4D02101C1340CEF3DAF6E821BA1D05"},
{ "link": "15.0.1", "version": "15.0.1+15A507", "symlinks": ["15.0"], "install_runtimes": "true", "sha256": "5AC17AE6060CAFC3C7112C6DA0B153450BE21F1DE6632777FBA9FBC9D999C9E8"},
@@ -13,8 +11,6 @@
},
"arm64":{
"versions": [
{ "link": "15.4", "version": "15.4.0-Beta+15F5021i", "install_runtimes": "true", "sha256": "e20a2af230e3dbac105496f194530e9c865a756b136ff8ed7c7f215774a91a9e"},
{ "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"},
{ "link": "15.1", "version": "15.1.0+15C65", "install_runtimes": "true", "sha256": "857D8DB537BAC82BF99DE0E1D3895D214D4D02101C1340CEF3DAF6E821BA1D05"},
{ "link": "15.0.1", "version": "15.0.1+15A507", "symlinks": ["15.0"], "install_runtimes": "true", "sha256": "5AC17AE6060CAFC3C7112C6DA0B153450BE21F1DE6632777FBA9FBC9D999C9E8"},
@@ -69,7 +65,6 @@
"gnu-tar",
"kotlin",
"libpq",
"libsodium",
"p7zip",
"packer",
"perl",
@@ -117,80 +112,9 @@
"fastlane"
]
},
"toolcache": [
{
"name": "Python",
"url" : "https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json",
"platform" : "darwin",
"arch": {
"x64": {
"versions": [
"3.11.*",
"3.12.*"
]
},
"arm64": {
"versions": [
"3.11.*",
"3.12.*"
]
}
}
},
{
"name": "Node",
"url" : "https://raw.githubusercontent.com/actions/node-versions/main/versions-manifest.json",
"platform" : "darwin",
"arch": {
"x64": {
"versions": [
"18.*",
"20.*"
]
},
"arm64": {
"versions": [
"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.*"
]
},
"arm64": {
"variable_template" : "GOROOT_{0}_{1}_ARM64",
"versions": [
"1.20.*",
"1.21.*",
"1.22.*"
]
}
}
},
{
"name": "Ruby",
"arch": {
"x64": {
"versions": [
"3.0.*",
"3.1.*"
]
}
}
}
],
"go": {
"default": "1.20"
},
"node": {
"default": "20"
},
+117 -114
View File
@@ -1,12 +1,11 @@
| Announcements |
|-|
| [[Ubuntu, Windows] Docker Compose v1 will be removed from images on July, 9](https://github.com/actions/runner-images/issues/9692) |
| [[Ubuntu] ubuntu-toolchain-r/test repository will be removed from images on May 6](https://github.com/actions/runner-images/issues/9679) |
| [[All OSes] Powershell Core will be updated to 7.4.x LTS on January, 28](https://github.com/actions/runner-images/issues/9115) |
***
# Ubuntu 20.04
- OS Version: 20.04.6 LTS
- Kernel Version: 5.15.0-1061-azure
- Image Version: 20240422.1.0
- Kernel Version: 5.15.0-1054-azure
- Image Version: 20240131.1.0
- Systemd version: 245.4-4ubuntu3.23
## Installed Software
@@ -18,32 +17,32 @@
- Clang-tidy: 10.0.0, 11.0.0, 12.0.0
- Dash 0.5.10.2-6
- Erlang 25.3 (Eshell 13.2)
- Erlang rebar3 3.23.0
- Erlang rebar3 3.22.1
- GNU C++: 9.4.0, 10.5.0
- GNU Fortran: 9.4.0, 10.5.0
- Julia 1.10.2
- Kotlin 1.9.23-release-779
- Julia 1.10.0
- Kotlin 1.9.22-release-704
- Mono 6.12.0.200
- MSBuild 16.10.1.31701 (Mono 6.12.0.200)
- Node.js 18.20.2
- Node.js 18.19.0
- Perl 5.30.0
- Python 3.8.10
- Ruby 2.7.0p0
- Swift 5.10
- Swift 5.9.2
### Package Management
- cpan 1.64
- Helm 3.14.4
- Homebrew 4.2.19
- Miniconda 24.3.0
- Npm 10.5.0
- Helm 3.14.0
- Homebrew 4.2.6
- Miniconda 23.11.0
- Npm 10.2.3
- NuGet 6.6.1.2
- Pip 20.0.2
- Pip3 20.0.2
- Pipx 1.5.0
- Pipx 1.4.3
- RubyGems 3.1.2
- Vcpkg (build from commit 9224b3bbd)
- Yarn 1.22.22
- Vcpkg (build from commit 10e052511)
- Yarn 1.22.21
#### Environment variables
| Name | Value |
@@ -61,73 +60,73 @@ to accomplish this.
### Project Management
- Ant 1.10.7
- Gradle 8.7
- Lerna 8.1.2
- Gradle 8.5
- Lerna 8.0.2
- Maven 3.8.8
- Sbt 1.9.9
- Sbt 1.9.8
### Tools
- Ansible 2.13.13
- apt-fast 1.10.0
- AzCopy 10.24.0 - available by `azcopy` and `azcopy10` aliases
- Bazel 7.1.1
- AzCopy 10.23.0 - available by `azcopy` and `azcopy10` aliases
- Bazel 7.0.2
- Bazelisk 1.19.0
- Bicep 0.26.170
- Bicep 0.24.24
- Buildah 1.22.3
- CMake 3.29.2
- CodeQL Action Bundle 2.17.0
- CMake 3.28.2
- CodeQL Action Bundle 2.16.1
- Docker Amazon ECR Credential Helper 0.7.1
- Docker Compose v1 1.29.2
- Docker Compose v2 2.23.3
- Docker-Buildx 0.14.0
- Docker Client 24.0.9
- Docker Server 24.0.9
- Fastlane 2.220.0
- Git 2.43.2
- Git LFS 3.5.1
- Docker-Buildx 0.12.1
- Docker Client 24.0.7
- Docker Server 24.0.7
- Fastlane 2.219.0
- Git 2.43.0
- Git LFS 3.4.1
- Git-ftp 1.6.0
- Haveged 1.9.1
- Heroku 8.11.4
- Heroku 8.7.1
- HHVM (HipHop VM) 4.172.1
- jq 1.6
- Kind 0.22.0
- Kubectl 1.30.0
- Kustomize 5.4.1
- Leiningen 2.11.2
- Kind 0.20.0
- Kubectl 1.29.1
- Kustomize 5.3.0
- Leiningen 2.11.1
- MediaInfo 19.09
- Mercurial 5.3.1
- Minikube 1.33.0
- n 9.2.3
- Newman 6.1.2
- Minikube 1.32.0
- n 9.2.0
- Newman 6.1.0
- nvm 0.39.7
- OpenSSL 1.1.1f-1ubuntu2.22
- Packer 1.10.2
- Parcel 2.12.0
- OpenSSL 1.1.1f-1ubuntu2.20
- Packer 1.10.1
- Parcel 2.11.0
- PhantomJS 2.1.1 2.1.1
- Podman 3.4.2
- Pulumi 3.113.3
- R 4.3.3
- Pulumi 3.104.1
- R 4.3.2
- Skopeo 1.5.0
- Sphinx Open Source Search Server 2.2.11
- SVN 1.13.0
- Terraform 1.8.1
- yamllint 1.35.1
- yq 4.43.1
- zstd 1.5.6
- Terraform 1.7.2
- yamllint 1.33.0
- yq 4.40.5
- zstd 1.5.5
### CLI Tools
- Alibaba Cloud CLI 3.0.174
- AWS CLI 2.15.40
- AWS CLI 2.15.16
- AWS CLI Session Manager Plugin 1.2.553.0
- AWS SAM CLI 1.115.0
- Azure CLI 2.59.0
- Azure CLI (azure-devops) 1.0.0
- GitHub CLI 2.48.0
- Google Cloud CLI 472.0.0
- Netlify CLI 17.22.1
- OpenShift CLI 4.15.9
- AWS SAM CLI 1.108.0
- Azure CLI 2.56.0
- Azure CLI (azure-devops) 0.26.0
- GitHub CLI 2.43.1
- Google Cloud CLI 462.0.1
- Netlify CLI 17.15.6
- OpenShift CLI 4.14.10
- ORAS CLI 1.1.0
- Vercel CLI 34.1.1
- Vercel CLI 33.4.1
### Java
| Version | Environment Variable |
@@ -138,41 +137,41 @@ to accomplish this.
| 21.0.2+13 | JAVA_HOME_21_X64 |
### PHP Tools
- PHP: 7.4.33, 8.0.30, 8.1.27, 8.2.18, 8.3.6
- Composer 2.7.3
- PHPUnit 8.5.38
- PHP: 7.4.33, 8.0.30, 8.1.27, 8.2.15, 8.3.2
- Composer 2.6.6
- PHPUnit 8.5.36
```
Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
```
### Haskell Tools
- Cabal 3.10.3.0
- GHC 9.8.2
- GHCup 0.1.22.0
- Stack 2.15.5
- Cabal 3.10.2.1
- GHC 9.8.1
- GHCup 0.1.20.0
- Stack 2.13.1
### Rust Tools
- Cargo 1.77.2
- Rust 1.77.2
- Rustdoc 1.77.2
- Rustup 1.27.0
- Cargo 1.75.0
- Rust 1.75.0
- Rustdoc 1.75.0
- Rustup 1.26.0
#### Packages
- Bindgen 0.69.4
- Cargo audit 0.20.0
- Cargo clippy 0.1.77
- Cargo outdated 0.15.0
- Bindgen 0.69.2
- Cargo audit 0.18.3
- Cargo clippy 0.1.75
- Cargo outdated 0.14.0
- Cbindgen 0.26.0
- Rustfmt 1.7.0
### Browsers and Drivers
- Google Chrome 124.0.6367.60
- ChromeDriver 124.0.6367.60
- Chromium 124.0.6367.0
- Microsoft Edge 124.0.2478.51
- Microsoft Edge WebDriver 124.0.2478.51
- Selenium server 4.19.1
- Mozilla Firefox 125.0.1
- Google Chrome 121.0.6167.139
- ChromeDriver 121.0.6167.85
- Chromium 121.0.6167.0
- Microsoft Edge 121.0.2277.83
- Microsoft Edge WebDriver 121.0.2277.83
- Selenium server 4.17.0
- Mozilla Firefox 122.0
- Geckodriver 0.34.0
#### Environment variables
@@ -184,15 +183,15 @@ 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.421, 7.0.408, 8.0.204
- .NET Core SDK: 6.0.418, 7.0.405, 8.0.101
- nbgv 3.6.133+2d32d93cb1
### Databases
- MongoDB 5.0.26
- MongoDB 5.0.24
- sqlite3 3.31.1
#### PostgreSQL
- PostgreSQL 14.11
- PostgreSQL 14.10
```
User: postgres
PostgreSQL service is disabled by default.
@@ -210,27 +209,27 @@ Use the following command as a part of your job to start the service: 'sudo syst
#### MS SQL
- sqlcmd 17.10.0001.1
- SqlPackage 162.2.111.2
- SqlPackage 162.1.172.1
### Cached Tools
#### Go
- 1.20.14
- 1.21.9
- 1.22.2
- 1.19.13
- 1.20.13
- 1.21.6
#### Node.js
- 16.20.2
- 18.20.2
- 20.12.2
- 18.19.0
- 20.11.0
#### Python
- 3.7.17
- 3.8.18
- 3.9.19
- 3.10.14
- 3.11.9
- 3.12.3
- 3.9.18
- 3.10.13
- 3.11.7
- 3.12.1
#### PyPy
- 2.7.18 [PyPy 7.3.15]
@@ -241,6 +240,9 @@ Use the following command as a part of your job to start the service: 'sudo syst
- 3.10.13 [PyPy 7.3.15]
#### Ruby
- 2.5.9
- 2.6.10
- 2.7.8
- 3.0.6
- 3.1.4
@@ -248,11 +250,12 @@ Use the following command as a part of your job to start the service: 'sudo syst
- PowerShell 7.4.1
#### PowerShell Modules
- Az: 11.3.1
- Az: 9.3.0
- Az (Cached): 3.1.0.zip, 4.4.0.zip, 5.9.0.zip, 6.6.0.zip, 7.5.0.zip
- MarkdownPS: 1.9
- Microsoft.Graph: 2.17.0
- Microsoft.Graph: 2.12.0
- Pester: 5.5.0
- PSScriptAnalyzer: 1.22.0
- PSScriptAnalyzer: 1.21.0
### Web Servers
| Name | Version | ConfigFile | ServiceStatus | ListenPort |
@@ -266,12 +269,12 @@ Use the following command as a part of your job to start the service: 'sudo syst
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Android Command Line Tools | 9.0 |
| Android SDK Build-tools | 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-34-ext8 (rev 1)<br>android-34-ext11 (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 Platforms | android-34-ext8 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 2)<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 |
| Google Play services | 49 |
| Google Repository | 58 |
| NDK | 24.0.8215888<br>25.2.9519653 (default)<br>26.3.11579264 |
| NDK | 24.0.8215888<br>25.2.9519653 (default)<br>26.1.10909125 |
#### Environment variables
| Name | Value |
@@ -279,7 +282,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
| ANDROID_HOME | /usr/local/lib/android/sdk |
| ANDROID_NDK | /usr/local/lib/android/sdk/ndk/25.2.9519653 |
| ANDROID_NDK_HOME | /usr/local/lib/android/sdk/ndk/25.2.9519653 |
| ANDROID_NDK_LATEST_HOME | /usr/local/lib/android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_LATEST_HOME | /usr/local/lib/android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_ROOT | /usr/local/lib/android/sdk/ndk/25.2.9519653 |
| ANDROID_SDK_ROOT | /usr/local/lib/android/sdk |
@@ -289,17 +292,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:53cf9478b76f4c8fae126acbdfb79bed6e69e628faff572ebe4a029d3d247d98 | 2024-01-27 |
| alpine:3.18 | sha256:11e21d7b981a59554b3f822c49f6e9f57b6068bb74f49c4cd5cc4c663c7e5160 | 2024-01-27 |
| debian:10 | sha256:873743c4eec09ddea0dcac0cda31fce2ff348ed41cd1d5c33ecee7d42f03052f | 2024-04-10 |
| debian:11 | sha256:26d72b71f88865377988af6f54da9aaa5bed201f39bcee13eb55737016660df2 | 2024-04-10 |
| debian:10 | sha256:8fc5c3f7828792d01a02f490202c4b1aaa33f00a3beed5bc12814e3ed55fa0e2 | 2024-01-31 |
| debian:11 | sha256:44cfd77e3dbebfa8a0545d9fd1bee6e874cf6998a3bbfb5cccf34919df4e3360 | 2024-01-31 |
| debian:9 | sha256:c5c5200ff1e9c73ffbf188b4a67eb1c91531b644856b4aefe86a58d2f0cb05be | 2022-06-23 |
| moby/buildkit:latest | sha256:00d2c6b8f39ae515e0eadd74f39e71a5efdc94321c9b919692a2aa32deef2bb1 | 2024-03-18 |
| moby/buildkit:latest | sha256:449188623c7a8a3bd4f161c5d0ddf5cabbfb828f7eaadf9ed8111864b911a308 | 2024-01-31 |
| node:16 | sha256:f77a1aef2da8d83e45ec990f45df50f1a286c5fe8bbfb8c6e4246c6389705c0b | 2023-09-07 |
| node:16-alpine | sha256:a1f9d027912b58a7c75be7716c97cfbc6d3099f3a97ed84aa490be9dee20e787 | 2023-08-10 |
| node:18 | sha256:bdbe1cff7e74208531a90ffcfa32b1cb909d4720d9aa60b649b26b9e7ba439a5 | 2024-04-11 |
| node:18-alpine | sha256:80338ff3fc4e989c1d5264a23223cec1c6014e812e584e825e78d1a98d893381 | 2024-04-11 |
| node:20 | sha256:844b41cf784f66d7920fd673f7af54ca7b81e289985edc6cd864e7d05e0d133c | 2024-04-11 |
| node:20-alpine | sha256:ec0c413b1d84f3f7f67ec986ba885930c57b5318d2eb3abc6960ee05d4f2eb28 | 2024-04-11 |
| ubuntu:20.04 | sha256:71b82b8e734f5cd0b3533a16f40ca1271f28d87343972bb4cd6bd6c38f1bd38e | 2024-04-10 |
| node:18 | sha256:56ed84097b42a0aa7c218bb7970add8efa4407750a576d8a8e4a5726002ca3b0 | 2024-02-01 |
| node:18-alpine | sha256:0085670310d2879621f96a4216c893f92e2ded827e9e6ef8437672e1bd72f437 | 2024-01-27 |
| node:20 | sha256:33bfe51ff32a17d6cfb5bca5ae2743a9b2390ac99dcffde543565bb83b1fb786 | 2024-02-01 |
| node:20-alpine | sha256:2f46fd49c767554c089a5eb219115313b72748d8f62f5eccb58ef52bc36db4ad | 2024-01-27 |
| ubuntu:20.04 | sha256:f2034e7195f61334e6caff6ecf2e965f92d11e888309065da85ff50c617732b8 | 2023-12-13 |
### Installed apt packages
| Name | Version |
@@ -308,14 +311,14 @@ Use the following command as a part of your job to start the service: 'sudo syst
| aria2 | 1.35.0-1build1 |
| autoconf | 2.69-11.1 |
| automake | 1:1.16.1-4ubuntu6 |
| binutils | 2.34-6ubuntu1.9 |
| binutils | 2.34-6ubuntu1.8 |
| bison | 2:3.5.1+dfsg-1 |
| brotli | 1.0.7-6ubuntu0.1 |
| bzip2 | 1.0.8-2 |
| coreutils | 8.30-3ubuntu2 |
| curl | 7.68.0-1ubuntu2.22 |
| curl | 7.68.0-1ubuntu2.21 |
| dbus | 1.12.16-2ubuntu2.3 |
| dnsutils | 1:9.16.48-0ubuntu0.20.04.1 |
| dnsutils | 1:9.16.1-0ubuntu2.16 |
| dpkg | 1.19.7ubuntu3.2 |
| dpkg-dev | 1.19.7ubuntu3.2 |
| fakeroot | 1.24-1 |
@@ -335,8 +338,8 @@ Use the following command as a part of your job to start the service: 'sudo syst
| lib32z1 | 1:1.2.11.dfsg-2ubuntu1.5 |
| libc++-dev | 1:10.0-50\~exp1 |
| libc++abi-dev | 1:10.0-50\~exp1 |
| libc6-dev | 2.31-0ubuntu9.15 |
| libcurl4 | 7.68.0-1ubuntu2.22 |
| libc6-dev | 2.31-0ubuntu9.14 |
| libcurl4 | 7.68.0-1ubuntu2.21 |
| libgbm-dev | 21.2.6-0ubuntu0.1\~20.04.2 |
| libgconf-2-4 | 3.2.6-6ubuntu1 |
| libgsl-dev | 2.5+dfsg-6+deb10u1build0.20.04.1 |
@@ -351,7 +354,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
| libxkbfile-dev | 1:1.1.0-1 |
| libxss1 | 1:1.2.3-1 |
| libyaml-dev | 0.2.2-1 |
| locales | 2.31-0ubuntu9.15 |
| locales | 2.31-0ubuntu9.14 |
| m4 | 1.4.18-4 |
| make | 4.2.1-1.2 |
| mediainfo | 19.09-1build1 |
@@ -383,12 +386,12 @@ Use the following command as a part of your job to start the service: 'sudo syst
| texinfo | 6.7.0.dfsg.2-5 |
| time | 1.7-25.1build1 |
| tk | 8.6.9+1 |
| tzdata | 2024a-0ubuntu0.20.04 |
| unzip | 6.0-25ubuntu1.2 |
| tzdata | 2023d-0ubuntu0.20.04 |
| unzip | 6.0-25ubuntu1.1 |
| upx | 3.95-2build1 |
| wget | 1.20.3-1ubuntu2 |
| xorriso | 1.5.2-1 |
| xvfb | 2:1.20.13-1ubuntu1\~20.04.17 |
| xvfb | 2:1.20.13-1ubuntu1\~20.04.15 |
| xz-utils | 5.2.4-1ubuntu1.1 |
| zip | 3.0-11build1 |
| zsync | 0.6.2-3ubuntu1 |
+119 -120
View File
@@ -1,12 +1,11 @@
| Announcements |
|-|
| [[Ubuntu, Windows] Docker Compose v1 will be removed from images on July, 9](https://github.com/actions/runner-images/issues/9692) |
| [[Ubuntu] ubuntu-toolchain-r/test repository will be removed from images on May 6](https://github.com/actions/runner-images/issues/9679) |
| [[All OSes] Powershell Core will be updated to 7.4.x LTS on January, 28](https://github.com/actions/runner-images/issues/9115) |
***
# Ubuntu 22.04
- OS Version: 22.04.4 LTS
- Kernel Version: 6.5.0-1018-azure
- Image Version: 20240422.1.0
- OS Version: 22.04.3 LTS
- Kernel Version: 6.2.0-1019-azure
- Image Version: 20240201.1.0
- Systemd version: 249.11-0ubuntu3.12
## Installed Software
@@ -19,29 +18,29 @@
- Dash 0.5.11+git20210903+057cd650a4ed-3build1
- GNU C++: 9.5.0, 10.5.0, 11.4.0, 12.3.0, 13.1.0
- GNU Fortran: 9.5.0, 10.5.0, 11.4.0, 12.3.0, 13.1.0
- Julia 1.10.2
- Kotlin 1.9.23-release-779
- Julia 1.10.0
- Kotlin 1.9.22-release-704
- Mono 6.12.0.200
- MSBuild 16.10.1.31701 (Mono 6.12.0.200)
- Node.js 18.20.2
- Node.js 18.19.0
- Perl 5.34.0
- Python 3.10.12
- Ruby 3.0.2p107
- Swift 5.10
- Swift 5.9.2
### Package Management
- cpan 1.64
- Helm 3.14.4
- Homebrew 4.2.19
- Miniconda 24.3.0
- Npm 10.5.0
- Helm 3.14.0
- Homebrew 4.2.6
- Miniconda 23.11.0
- Npm 10.2.3
- NuGet 6.6.1.2
- Pip 22.0.2
- Pip3 22.0.2
- Pipx 1.5.0
- Pipx 1.4.3
- RubyGems 3.3.5
- Vcpkg (build from commit 9224b3bbd)
- Yarn 1.22.22
- Vcpkg (build from commit 10e052511)
- Yarn 1.22.21
#### Environment variables
| Name | Value |
@@ -58,69 +57,69 @@ to accomplish this.
```
### Project Management
- Lerna 8.1.2
- Lerna 8.0.2
- Maven 3.8.8
### Tools
- Ansible 2.16.6
- Ansible 2.16.3
- apt-fast 1.10.0
- AzCopy 10.24.0 - available by `azcopy` and `azcopy10` aliases
- Bazel 7.1.1
- AzCopy 10.23.0 - available by `azcopy` and `azcopy10` aliases
- Bazel 7.0.2
- Bazelisk 1.19.0
- Bicep 0.26.170
- Bicep 0.24.24
- Buildah 1.23.1
- CMake 3.29.2
- CodeQL Action Bundle 2.17.0
- CMake 3.28.2
- CodeQL Action Bundle 2.16.1
- Docker Amazon ECR Credential Helper 0.7.1
- Docker Compose v1 1.29.2
- Docker Compose v2 2.23.3
- Docker-Buildx 0.14.0
- Docker Client 24.0.9
- Docker Server 24.0.9
- Fastlane 2.220.0
- Git 2.43.2
- Git LFS 3.5.1
- Docker-Buildx 0.12.1
- Docker Client 24.0.7
- Docker Server 24.0.7
- Fastlane 2.219.0
- Git 2.43.0
- Git LFS 3.4.1
- Git-ftp 1.6.0
- Haveged 1.9.14
- Heroku 8.11.4
- Heroku 8.7.1
- jq 1.6
- Kind 0.22.0
- Kubectl 1.30.0
- Kustomize 5.4.1
- Leiningen 2.11.2
- Kind 0.20.0
- Kubectl 1.29.1
- Kustomize 5.3.0
- Leiningen 2.11.1
- MediaInfo 21.09
- Mercurial 6.1.1
- Minikube 1.33.0
- n 9.2.3
- Newman 6.1.2
- Minikube 1.32.0
- n 9.2.0
- Newman 6.1.0
- nvm 0.39.7
- OpenSSL 3.0.2-0ubuntu1.15
- Packer 1.10.2
- Parcel 2.12.0
- OpenSSL 3.0.2-0ubuntu1.13
- Packer 1.10.1
- Parcel 2.11.0
- Podman 3.4.4
- Pulumi 3.113.3
- R 4.3.3
- Pulumi 3.104.2
- R 4.3.2
- Skopeo 1.4.1
- Sphinx Open Source Search Server 2.2.11
- SVN 1.14.1
- Terraform 1.8.1
- yamllint 1.35.1
- yq 4.43.1
- zstd 1.5.6
- Terraform 1.7.2
- yamllint 1.33.0
- yq 4.40.5
- zstd 1.5.5
### CLI Tools
- Alibaba Cloud CLI 3.0.202
- AWS CLI 2.15.40
- Alibaba Cloud CLI 3.0.197
- AWS CLI 2.15.16
- AWS CLI Session Manager Plugin 1.2.553.0
- AWS SAM CLI 1.115.0
- Azure CLI 2.59.0
- Azure CLI (azure-devops) 1.0.0
- GitHub CLI 2.48.0
- Google Cloud CLI 472.0.0
- Netlify CLI 17.22.1
- OpenShift CLI 4.15.9
- AWS SAM CLI 1.108.0
- Azure CLI 2.56.0
- Azure CLI (azure-devops) 0.26.0
- GitHub CLI 2.43.1
- Google Cloud CLI 462.0.1
- Netlify CLI 17.15.7
- OpenShift CLI 4.14.10
- ORAS CLI 1.1.0
- Vercel CLI 34.1.1
- Vercel CLI 33.4.1
### Java
| Version | Environment Variable |
@@ -132,40 +131,40 @@ to accomplish this.
### PHP Tools
- PHP: 8.1.2
- Composer 2.7.3
- PHPUnit 8.5.38
- Composer 2.6.6
- PHPUnit 8.5.36
```
Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
```
### Haskell Tools
- Cabal 3.10.3.0
- GHC 9.8.2
- GHCup 0.1.22.0
- Stack 2.15.5
- Cabal 3.10.2.1
- GHC 9.8.1
- GHCup 0.1.20.0
- Stack 2.13.1
### Rust Tools
- Cargo 1.77.2
- Rust 1.77.2
- Rustdoc 1.77.2
- Rustup 1.27.0
- Cargo 1.75.0
- Rust 1.75.0
- Rustdoc 1.75.0
- Rustup 1.26.0
#### Packages
- Bindgen 0.69.4
- Cargo audit 0.20.0
- Cargo clippy 0.1.77
- Cargo outdated 0.15.0
- Bindgen 0.69.2
- Cargo audit 0.18.3
- Cargo clippy 0.1.75
- Cargo outdated 0.14.0
- Cbindgen 0.26.0
- Rustfmt 1.7.0
### Browsers and Drivers
- Google Chrome 124.0.6367.60
- ChromeDriver 124.0.6367.60
- Chromium 124.0.6367.0
- Microsoft Edge 124.0.2478.51
- Microsoft Edge WebDriver 124.0.2478.51
- Selenium server 4.19.1
- Mozilla Firefox 125.0.2
- Google Chrome 121.0.6167.139
- ChromeDriver 121.0.6167.85
- Chromium 121.0.6167.0
- Microsoft Edge 121.0.2277.83
- Microsoft Edge WebDriver 121.0.2277.83
- Selenium server 4.17.0
- Mozilla Firefox 122.0
- Geckodriver 0.34.0
#### Environment variables
@@ -177,14 +176,14 @@ 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.421, 7.0.408, 8.0.204
- .NET Core SDK: 6.0.418, 7.0.405, 8.0.101
- nbgv 3.6.133+2d32d93cb1
### Databases
- sqlite3 3.37.2
#### PostgreSQL
- PostgreSQL 14.11
- PostgreSQL 14.10
```
User: postgres
PostgreSQL service is disabled by default.
@@ -202,27 +201,27 @@ Use the following command as a part of your job to start the service: 'sudo syst
#### MS SQL
- sqlcmd 17.10.0001.1
- SqlPackage 162.2.111.2
- SqlPackage 162.1.172.1
### Cached Tools
#### Go
- 1.20.14
- 1.21.9
- 1.22.2
- 1.19.13
- 1.20.13
- 1.21.6
#### Node.js
- 16.20.2
- 18.20.2
- 20.12.2
- 18.19.0
- 20.11.0
#### Python
- 3.7.17
- 3.8.18
- 3.9.19
- 3.10.14
- 3.11.9
- 3.12.3
- 3.9.18
- 3.10.13
- 3.11.7
- 3.12.1
#### PyPy
- 3.7.13 [PyPy 7.3.9]
@@ -237,11 +236,11 @@ Use the following command as a part of your job to start the service: 'sudo syst
- PowerShell 7.4.1
#### PowerShell Modules
- Az: 11.3.1
- Az: 9.3.0
- MarkdownPS: 1.9
- Microsoft.Graph: 2.17.0
- Microsoft.Graph: 2.12.0
- Pester: 5.5.0
- PSScriptAnalyzer: 1.22.0
- PSScriptAnalyzer: 1.21.0
### Web Servers
| Name | Version | ConfigFile | ServiceStatus | ListenPort |
@@ -254,12 +253,12 @@ Use the following command as a part of your job to start the service: 'sudo syst
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Android Command Line Tools | 9.0 |
| Android SDK Build-tools | 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-34-ext8 (rev 1)<br>android-34-ext11 (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 Platforms | android-34-ext8 (rev 1)<br>android-34-ext10 (rev 1)<br>android-34 (rev 2)<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 |
| Google Play services | 49 |
| Google Repository | 58 |
| NDK | 24.0.8215888<br>25.2.9519653 (default)<br>26.3.11579264 |
| NDK | 24.0.8215888<br>25.2.9519653 (default)<br>26.1.10909125 |
#### Environment variables
| Name | Value |
@@ -267,7 +266,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
| ANDROID_HOME | /usr/local/lib/android/sdk |
| ANDROID_NDK | /usr/local/lib/android/sdk/ndk/25.2.9519653 |
| ANDROID_NDK_HOME | /usr/local/lib/android/sdk/ndk/25.2.9519653 |
| ANDROID_NDK_LATEST_HOME | /usr/local/lib/android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_LATEST_HOME | /usr/local/lib/android/sdk/ndk/26.1.10909125 |
| ANDROID_NDK_ROOT | /usr/local/lib/android/sdk/ndk/25.2.9519653 |
| ANDROID_SDK_ROOT | /usr/local/lib/android/sdk |
@@ -277,17 +276,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:53cf9478b76f4c8fae126acbdfb79bed6e69e628faff572ebe4a029d3d247d98 | 2024-01-27 |
| alpine:3.18 | sha256:11e21d7b981a59554b3f822c49f6e9f57b6068bb74f49c4cd5cc4c663c7e5160 | 2024-01-27 |
| debian:10 | sha256:873743c4eec09ddea0dcac0cda31fce2ff348ed41cd1d5c33ecee7d42f03052f | 2024-04-10 |
| debian:11 | sha256:26d72b71f88865377988af6f54da9aaa5bed201f39bcee13eb55737016660df2 | 2024-04-10 |
| moby/buildkit:latest | sha256:00d2c6b8f39ae515e0eadd74f39e71a5efdc94321c9b919692a2aa32deef2bb1 | 2024-03-18 |
| debian:10 | sha256:8fc5c3f7828792d01a02f490202c4b1aaa33f00a3beed5bc12814e3ed55fa0e2 | 2024-01-31 |
| debian:11 | sha256:44cfd77e3dbebfa8a0545d9fd1bee6e874cf6998a3bbfb5cccf34919df4e3360 | 2024-01-31 |
| moby/buildkit:latest | sha256:449188623c7a8a3bd4f161c5d0ddf5cabbfb828f7eaadf9ed8111864b911a308 | 2024-01-31 |
| node:16 | sha256:f77a1aef2da8d83e45ec990f45df50f1a286c5fe8bbfb8c6e4246c6389705c0b | 2023-09-07 |
| node:16-alpine | sha256:a1f9d027912b58a7c75be7716c97cfbc6d3099f3a97ed84aa490be9dee20e787 | 2023-08-10 |
| node:18 | sha256:bdbe1cff7e74208531a90ffcfa32b1cb909d4720d9aa60b649b26b9e7ba439a5 | 2024-04-11 |
| node:18-alpine | sha256:80338ff3fc4e989c1d5264a23223cec1c6014e812e584e825e78d1a98d893381 | 2024-04-11 |
| node:20 | sha256:844b41cf784f66d7920fd673f7af54ca7b81e289985edc6cd864e7d05e0d133c | 2024-04-11 |
| node:20-alpine | sha256:ec0c413b1d84f3f7f67ec986ba885930c57b5318d2eb3abc6960ee05d4f2eb28 | 2024-04-11 |
| ubuntu:20.04 | sha256:71b82b8e734f5cd0b3533a16f40ca1271f28d87343972bb4cd6bd6c38f1bd38e | 2024-04-10 |
| ubuntu:22.04 | sha256:1b8d8ff4777f36f19bfe73ee4df61e3a0b789caeff29caa019539ec7c9a57f95 | 2024-04-10 |
| node:18 | sha256:2a13079c6393cd19adfd8d362fac004b2d0eed462f3c3fedfad2c0d0de17b429 | 2024-02-01 |
| node:18-alpine | sha256:0085670310d2879621f96a4216c893f92e2ded827e9e6ef8437672e1bd72f437 | 2024-01-27 |
| node:20 | sha256:fd0115473b293460df5b217ea73ff216928f2b0bb7650c5e7aa56aae4c028426 | 2024-02-01 |
| node:20-alpine | sha256:2f46fd49c767554c089a5eb219115313b72748d8f62f5eccb58ef52bc36db4ad | 2024-01-27 |
| ubuntu:20.04 | sha256:f2034e7195f61334e6caff6ecf2e965f92d11e888309065da85ff50c617732b8 | 2023-12-13 |
| ubuntu:22.04 | sha256:e6173d4dc55e76b87c4af8db8821b1feae4146dd47341e4d431118c7dd060a74 | 2024-01-11 |
### Installed apt packages
| Name | Version |
@@ -296,16 +295,16 @@ Use the following command as a part of your job to start the service: 'sudo syst
| aria2 | 1.36.0-1 |
| autoconf | 2.71-2 |
| automake | 1:1.16.5-1.3 |
| binutils | 2.38-4ubuntu2.6 |
| binutils | 2.38-4ubuntu2.5 |
| bison | 2:3.8.2+dfsg-1build1 |
| brotli | 1.0.9-2build6 |
| bzip2 | 1.0.8-5build1 |
| coreutils | 8.32-4.1ubuntu1.2 |
| curl | 7.81.0-1ubuntu1.16 |
| coreutils | 8.32-4.1ubuntu1 |
| curl | 7.81.0-1ubuntu1.15 |
| dbus | 1.12.20-2ubuntu4.1 |
| dnsutils | 1:9.18.18-0ubuntu0.22.04.2 |
| dpkg | 1.21.1ubuntu2.3 |
| dpkg-dev | 1.21.1ubuntu2.3 |
| dnsutils | 1:9.18.18-0ubuntu0.22.04.1 |
| dpkg | 1.21.1ubuntu2.2 |
| dpkg-dev | 1.21.1ubuntu2.2 |
| fakeroot | 1.28-1ubuntu1 |
| file | 1:5.41-3ubuntu0.1 |
| findutils | 4.8.0-1ubuntu3 |
@@ -323,9 +322,9 @@ Use the following command as a part of your job to start the service: 'sudo syst
| lib32z1 | 1:1.2.11.dfsg-2ubuntu9.2 |
| libc++-dev | 1:14.0-55\~exp2 |
| libc++abi-dev | 1:14.0-55\~exp2 |
| libc6-dev | 2.35-0ubuntu3.7 |
| libcurl4 | 7.81.0-1ubuntu1.16 |
| libgbm-dev | 23.2.1-1ubuntu3.1\~22.04.2 |
| libc6-dev | 2.35-0ubuntu3.6 |
| libcurl4 | 7.81.0-1ubuntu1.15 |
| libgbm-dev | 23.0.4-0ubuntu1\~22.04.1 |
| libgconf-2-4 | 3.2.6-7ubuntu2 |
| libgsl-dev | 2.7.1+dfsg-3 |
| libgtk-3-0 | 3.24.33-1ubuntu2 |
@@ -334,13 +333,13 @@ Use the following command as a part of your job to start the service: 'sudo syst
| libmagickwand-dev | 8:6.9.11.60+dfsg-1.3ubuntu0.22.04.3 |
| libsecret-1-dev | 0.20.5-2 |
| libsqlite3-dev | 3.37.2-2ubuntu0.3 |
| libssl-dev | 3.0.2-0ubuntu1.15 |
| libssl-dev | 3.0.2-0ubuntu1.13 |
| libtool | 2.4.6-15build2 |
| libunwind8 | 1.3.2-2build2.1 |
| libxkbfile-dev | 1:1.1.0-1build3 |
| libxss1 | 1:1.2.3-1build2 |
| libyaml-dev | 0.2.2-1build2 |
| locales | 2.35-0ubuntu3.7 |
| locales | 2.35-0ubuntu3.6 |
| lz4 | 1.9.3-2build2 |
| m4 | 1.4.18-5ubuntu2 |
| make | 4.3-4.1build1 |
@@ -348,7 +347,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
| mercurial | 6.1.1-1ubuntu1 |
| net-tools | 1.60+git20181103.0eebece-1ubuntu5 |
| netcat | 1.218-4ubuntu1 |
| openssh-client | 1:8.9p1-3ubuntu0.7 |
| openssh-client | 1:8.9p1-3ubuntu0.6 |
| p7zip-full | 16.02+dfsg-8 |
| p7zip-rar | 16.02-3build1 |
| parallel | 20210822+ds-2 |
@@ -363,7 +362,7 @@ Use the following command as a part of your job to start the service: 'sudo syst
| shellcheck | 0.8.0-2 |
| sphinxsearch | 2.2.11-8 |
| sqlite3 | 3.37.2-2ubuntu0.3 |
| ssh | 1:8.9p1-3ubuntu0.7 |
| ssh | 1:8.9p1-3ubuntu0.6 |
| sshpass | 1.09-1 |
| subversion | 1.14.1-3ubuntu0.22.04.1 |
| sudo | 1.9.9-1ubuntu2.4 |
@@ -373,12 +372,12 @@ Use the following command as a part of your job to start the service: 'sudo syst
| texinfo | 6.8-4build1 |
| time | 1.9-0.1build2 |
| tk | 8.6.11+1build2 |
| tzdata | 2024a-0ubuntu0.22.04 |
| unzip | 6.0-26ubuntu3.2 |
| tzdata | 2023d-0ubuntu0.22.04 |
| unzip | 6.0-26ubuntu3.1 |
| upx | 3.96-3 |
| wget | 1.21.2-2ubuntu1 |
| xorriso | 1.5.4-2 |
| xvfb | 2:21.1.4-2ubuntu1.7\~22.04.10 |
| xvfb | 2:21.1.4-2ubuntu1.7\~22.04.8 |
| xz-utils | 5.2.5-2ubuntu1 |
| zip | 3.0-12build2 |
| zsync | 0.6.2-3ubuntu1 |
-264
View File
@@ -1,264 +0,0 @@
# Ubuntu 24.04 LTS
- OS Version: 24.04 LTS
- Kernel Version: 6.8.0-1007-azure
- Image Version: 20240430.1.0
- Systemd version: 255.4-1ubuntu8
## Installed Software
### Language and Runtime
- Bash 5.2.21(1)-release
- Clang: 16.0.6, 17.0.6, 18.1.3
- Clang-format: 16.0.6, 17.0.6, 18.1.3
- Clang-tidy: 16.0.6, 17.0.6, 18.1.3
- Dash 0.5.12-6ubuntu5
- GNU C++: 12.3.0, 13.2.0, 14.0.1
- GNU Fortran: 12.3.0, 13.2.0, 14.0.1
- Julia 1.10.3
- Node.js 20.12.2
- Perl 5.38.2
- Python 3.12.3
- Ruby 3.2.3
### Package Management
- cpan 1.64
- Helm 3.14.4
- Homebrew 4.2.20
- Miniconda 24.3.0
- Npm 10.5.0
- Pip 24.0
- Pip3 24.0
- Pipx 1.4.3
- RubyGems 3.4.20
- Vcpkg (build from commit c591ac646)
- Yarn 1.22.22
#### Environment variables
| Name | Value |
| ----------------------- | ---------------------- |
| CONDA | /usr/share/miniconda |
| VCPKG_INSTALLATION_ROOT | /usr/local/share/vcpkg |
#### Homebrew note
```
Location: /home/linuxbrew
Note: Homebrew is pre-installed on image but not added to PATH.
run the eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" command
to accomplish this.
```
### Project Management
- Ant 1.10.14
- Gradle 8.7
- Lerna 8.1.2
- Maven 3.8.8
### Tools
- Ansible 2.16.6
- apt-fast 1.10.0
- AzCopy 10.24.0 - available by `azcopy` and `azcopy10` aliases
- Bicep 0.26.170
- CMake 3.29.2
- CodeQL Action Bundle 2.17.1
- Docker Amazon ECR Credential Helper 0.7.1
- Docker Compose v2 2.27.0
- Docker-Buildx 0.14.0
- Docker Client 26.1.0
- Docker Server 26.1.0
- Git 2.43.2
- Git LFS 3.5.1
- Git-ftp 1.6.0
- Haveged 1.9.14
- jq 1.7
- Kind 0.22.0
- Kubectl 1.30.0
- Kustomize 5.4.1
- MediaInfo 24.01
- Mercurial 6.7.2
- Minikube 1.33.0
- n 9.2.3
- Newman 6.1.2
- OpenSSL 3.0.13-0ubuntu3
- Parcel 2.12.0
- Pulumi 3.114.0
- Sphinx Open Source Search Server 2.2.11
- yamllint 1.35.1
- yq 4.43.1
- zstd 1.5.6
### CLI Tools
- AWS CLI 2.15.42
- AWS CLI Session Manager Plugin 1.2.553.0
- AWS SAM CLI 1.116.0
- Azure CLI 2.60.0
- Azure CLI (azure-devops) 1.0.0
- GitHub CLI 2.49.0
### PHP Tools
- PHP: 8.3.6
- Composer 2.7.4
- PHPUnit 8.5.38
```
Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
```
### Haskell Tools
- Cabal 3.10.3.0
- GHC 9.8.2
- GHCup 0.1.22.0
- Stack 2.15.5
### Rust Tools
- Cargo 1.77.2
- Rust 1.77.2
- Rustdoc 1.77.2
- Rustup 1.27.0
#### Packages
- Rustfmt 1.7.0
### Browsers and Drivers
- Google Chrome 124.0.6367.118
- ChromeDriver 124.0.6367.91
- Chromium 124.0.6367.0
- Selenium server 4.20.0
#### Environment variables
| Name | Value |
| ----------------- | ------------------------------------- |
| CHROMEWEBDRIVER | /usr/local/share/chromedriver-linux64 |
| EDGEWEBDRIVER | |
| GECKOWEBDRIVER | |
| SELENIUM_JAR_PATH | /usr/share/java/selenium-server.jar |
### .NET Tools
- .NET Core SDK: 8.0.104
- nbgv 3.6.133+2d32d93cb1
### Databases
- sqlite3 3.45.1
#### PostgreSQL
- PostgreSQL 16.2
```
User: postgres
PostgreSQL service is disabled by default.
Use the following command as a part of your job to start the service: 'sudo systemctl start postgresql.service'
```
#### MySQL
- MySQL 8.0.36-2ubuntu3
```
User: root
Password: root
MySQL service is disabled by default.
Use the following command as a part of your job to start the service: 'sudo systemctl start mysql.service'
```
### PowerShell Tools
- PowerShell 7.4.2
#### PowerShell Modules
- Az: 11.5.0
- Microsoft.Graph: 2.18.0
- Pester: 5.5.0
- PSScriptAnalyzer: 1.22.0
### Web Servers
| Name | Version | ConfigFile | ServiceStatus | ListenPort |
| ------- | ------- | ------------------------- | ------------- | ---------- |
| apache2 | 2.4.58 | /etc/apache2/apache2.conf | inactive | 80 |
| nginx | 1.24.0 | /etc/nginx/nginx.conf | inactive | 80 |
### Android
| Package Name | Version |
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| Android Command Line Tools | 12.0 |
| Android SDK Build-tools | 34.0.0 |
| Android SDK Platforms | android-34-ext8 (rev 1)<br>android-34-ext11 (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 |
| Google Repository | 58 |
| NDK | 24.0.8215888<br>25.2.9519653<br>26.3.11579264 (default) |
#### Environment variables
| Name | Value |
| ----------------------- | -------------------------------------------- |
| ANDROID_HOME | /usr/local/lib/android/sdk |
| ANDROID_NDK | /usr/local/lib/android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_HOME | /usr/local/lib/android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_LATEST_HOME | /usr/local/lib/android/sdk/ndk/26.3.11579264 |
| ANDROID_NDK_ROOT | /usr/local/lib/android/sdk/ndk/26.3.11579264 |
| ANDROID_SDK_ROOT | /usr/local/lib/android/sdk |
### Installed apt packages
| Name | Version |
| ---------------------- | --------------------- |
| acl | 2.3.2-1build1 |
| aria2 | 1.37.0+debian-1build3 |
| autoconf | 2.71-3 |
| automake | 1:1.16.5-1.3ubuntu1 |
| binutils | 2.42-4ubuntu2 |
| bison | 2:3.8.2+dfsg-1build2 |
| brotli | 1.1.0-2build2 |
| bzip2 | 1.0.8-5.1 |
| coreutils | 9.4-3ubuntu6 |
| curl | 8.5.0-2ubuntu10.1 |
| dbus | 1.14.10-4ubuntu4 |
| dnsutils | 1:9.18.24-0ubuntu5 |
| dpkg | 1.22.6ubuntu6 |
| dpkg-dev | 1.22.6ubuntu6 |
| fakeroot | 1.33-1 |
| file | 1:5.45-3build1 |
| findutils | 4.9.0-5build1 |
| flex | 2.6.4-8.2build1 |
| fonts-noto-color-emoji | 2.042-1 |
| ftp | 20230507-2build3 |
| g++ | 4:13.2.0-7ubuntu1 |
| gcc | 4:13.2.0-7ubuntu1 |
| gnupg2 | 2.4.4-2ubuntu17 |
| haveged | 1.9.14-1ubuntu2 |
| iproute2 | 6.1.0-1ubuntu6 |
| iputils-ping | 3:20240117-1build1 |
| jq | 1.7.1-3build1 |
| libssl-dev | 3.0.13-0ubuntu3 |
| libtool | 2.4.7-7build1 |
| locales | 2.39-0ubuntu8.1 |
| lz4 | 1.9.4-1build1 |
| m4 | 1.4.19-4build1 |
| make | 4.3-4.1build2 |
| mediainfo | 24.01.1-1build2 |
| mercurial | 6.7.2-1ubuntu2 |
| net-tools | 2.10-0.1ubuntu4 |
| netcat | 1.226-1ubuntu2 |
| openssh-client | 1:9.6p1-3ubuntu13 |
| p7zip-full | 16.02+transitional.1 |
| p7zip-rar | 16.02+transitional.1 |
| parallel | 20231122+ds-1 |
| patchelf | 0.18.0-1.1build1 |
| pigz | 2.8-1 |
| pkg-config | 1.8.1-2build1 |
| pollinate | 4.33-3.1ubuntu1 |
| python-is-python3 | 3.11.4-1 |
| rpm | 4.18.2+dfsg-2.1build2 |
| rsync | 3.2.7-1ubuntu1 |
| shellcheck | 0.9.0-1 |
| sphinxsearch | 2.2.11-8build1 |
| sqlite3 | 3.45.1-1ubuntu2 |
| ssh | 1:9.6p1-3ubuntu13 |
| sshpass | 1.09-1 |
| sudo | 1.9.15p5-3ubuntu5 |
| swig | 4.2.0-2ubuntu1 |
| tar | 1.35+dfsg-3build1 |
| telnet | 0.17+2.5-3ubuntu4 |
| texinfo | 7.1-3build2 |
| time | 1.9-0.2build1 |
| tk | 8.6.14build1 |
| tzdata | 2024a-2ubuntu1 |
| unzip | 6.0-28ubuntu4 |
| upx | 4.2.2-3 |
| wget | 1.21.4-1ubuntu4 |
| xvfb | 2:21.1.12-1ubuntu1 |
| xz-utils | 5.6.1+really5.4.5-1 |
| zip | 3.0-13build1 |
| zsync | 0.6.2-5build1 |
@@ -39,7 +39,7 @@ foreach ($tool in $tools) {
foreach ($toolVersion in $tool.versions) {
$asset = $assets | Where-Object version -like $toolVersion `
| Select-Object -ExpandProperty files `
| Where-Object { ($_.platform -eq $tool.platform) -and ($_.arch -eq $tool.arch) -and ($_.platform_version -eq $tool.platform_version)} `
| Where-Object { ($_.platform -eq $tool.platform) -and ($_.platform_version -eq $tool.platform_version)} `
| Select-Object -First 1
if (-not $asset) {
+1 -1
View File
@@ -31,7 +31,7 @@ rm -f /usr/local/bin/invoke_tests
# remove apt mock
prefix=/usr/local/bin
for tool in apt apt-get apt-key;do
for tool in apt apt-get apt-fast apt-key;do
sudo rm -f $prefix/$tool
done
@@ -2,12 +2,12 @@
################################################################################
## File: configure-apt-mock.sh
## Desc: A temporary workaround for https://github.com/Azure/azure-linux-extensions/issues/1238.
## Cleaned up during cleanup.sh.
## Cleaned up during configure-cleanup.sh.
################################################################################
prefix=/usr/local/bin
for real_tool in /usr/bin/apt /usr/bin/apt-get /usr/bin/apt-key; do
for real_tool in /usr/bin/apt /usr/bin/apt-get /usr/bin/apt-fast /usr/bin/apt-key; do
tool=$(basename $real_tool)
cat >$prefix/$tool <<EOT
#!/bin/sh
+3 -5
View File
@@ -42,8 +42,6 @@ apt-get update
# Install jq
apt-get install jq
if ! is_ubuntu24; then
# Install apt-fast using quick-install.sh
# https://github.com/ilikenwf/apt-fast
bash -c "$(curl -fsSL https://raw.githubusercontent.com/ilikenwf/apt-fast/master/quick-install.sh)"
fi
# Install apt-fast using quick-install.sh
# https://github.com/ilikenwf/apt-fast
bash -c "$(curl -fsSL https://raw.githubusercontent.com/ilikenwf/apt-fast/master/quick-install.sh)"
@@ -12,7 +12,7 @@ source $HELPER_SCRIPTS/etc-environment.sh
# might mail error messages to root, but that's it; otherwise it
# is completely silent and unobtrusive, a perfect frontend for
# automatic installs. If you are using this front-end, and require
# non-default answers to questions, you will need to pre-seed the
# non-default answers to questions, you will need to preseed the
# debconf database
set_etc_environment_variable "DEBIAN_FRONTEND" "noninteractive"
@@ -19,7 +19,7 @@ set_etc_environment_variable "ACCEPT_EULA" "Y"
mkdir -p /etc/skel/.config/configstore
set_etc_environment_variable "XDG_CONFIG_HOME" '$HOME/.config'
# Change waagent entries to use /mnt for swap file
# Change waagent entries to use /mnt for swapfile
sed -i 's/ResourceDisk.Format=n/ResourceDisk.Format=y/g' /etc/waagent.conf
sed -i 's/ResourceDisk.EnableSwap=n/ResourceDisk.EnableSwap=y/g' /etc/waagent.conf
sed -i 's/ResourceDisk.SwapSizeMB=0/ResourceDisk.SwapSizeMB=4096/g' /etc/waagent.conf
@@ -41,9 +41,6 @@ echo 'vm.max_map_count=262144' | tee -a /etc/sysctl.conf
echo 'fs.inotify.max_user_watches=655360' | tee -a /etc/sysctl.conf
echo 'fs.inotify.max_user_instances=1280' | tee -a /etc/sysctl.conf
# https://github.com/actions/runner-images/issues/9491
echo 'vm.mmap_rnd_bits=28' | tee -a /etc/sysctl.conf
# https://github.com/actions/runner-images/pull/7860
netfilter_rule='/etc/udev/rules.d/50-netfilter.rules'
rules_directory="$(dirname "${netfilter_rule}")"
@@ -20,10 +20,10 @@ chmod 755 $IMAGE_FOLDER
ENVPATH=$(grep 'PATH=' /etc/environment | head -n 1 | sed -z 's/^PATH=*//')
ENVPATH=${ENVPATH#"\""}
ENVPATH=${ENVPATH%"\""}
replace_etc_environment_variable "PATH" "${ENVPATH}"
add_etc_environment_variable "PATH" "${ENVPATH}"
echo "Updated /etc/environment: $(cat /etc/environment)"
# Clean yarn and npm cache
# Сlean yarn and npm cache
if yarn --version > /dev/null; then
yarn cache clean
fi
@@ -9,13 +9,13 @@ source $HELPER_SCRIPTS/os.sh
source $HELPER_SCRIPTS/install.sh
source $HELPER_SCRIPTS/etc-environment.sh
add_filtered_installation_components() {
add_filtered_instalaltion_components() {
local minimum_version=$1
shift
local tools_array=("$@")
for item in ${tools_array[@]}; do
# Take the last argument after splitting string by ';'' and '-''
# Take the last argument after spliting string by ';'' and '-''
item_version=$(echo "${item##*[-;]}")
# Semver 'comparison'. Add item to components array, if item's version is greater than or equal to minimum version
@@ -107,8 +107,8 @@ available_platforms=($($SDKMANAGER --list | sed -n '/Available Packages:/,/^$/p'
all_build_tools=($($SDKMANAGER --list | grep "build-tools;" | cut -d"|" -f 1 | sort -u))
available_build_tools=$(echo ${all_build_tools[@]//*rc[0-9]/})
add_filtered_installation_components $minimum_platform_version "${available_platforms[@]}"
add_filtered_installation_components $minimum_build_tool_version "${available_build_tools[@]}"
add_filtered_instalaltion_components $minimum_platform_version "${available_platforms[@]}"
add_filtered_instalaltion_components $minimum_build_tool_version "${available_build_tools[@]}"
# Install components
echo "y" | $SDKMANAGER ${components[@]}
+1 -1
View File
@@ -10,7 +10,7 @@ source $HELPER_SCRIPTS/install.sh
# Install bazelisk
npm install -g @bazel/bazelisk
# run bazelisk once in order to install /usr/local/bin/bazel binary
# run bazelisk once in order to instal /usr/local/bin/bazel binary
sudo -u $SUDO_USER bazel version
invoke_tests "Tools" "Bazel"
@@ -11,7 +11,7 @@ source $HELPER_SCRIPTS/os.sh
# pin podman due to https://github.com/actions/runner-images/issues/7753
# https://bugs.launchpad.net/ubuntu/+source/libpod/+bug/2024394
#
if ! is_ubuntu22; then
if is_ubuntu20; then
install_packages=(podman buildah skopeo)
else
install_packages=(podman=3.4.4+ds1-1ubuntu1 buildah skopeo)
@@ -27,7 +27,7 @@ if is_ubuntu20; then
echo "deb [arch=amd64 signed-by=$GPG_KEY] ${REPO_URL}/ /" > $REPO_PATH
fi
# Install podman, buildah, skopeo container's tools
# Install podman, buildah, scopeo container's tools
apt-get update
apt-get -y install ${install_packages[@]}
mkdir -p /etc/containers
@@ -48,7 +48,6 @@ done
gid=$(cut -d ":" -f 3 /etc/group | grep "^1..$" | sort -n | tail -n 1 | awk '{ print $1+1 }')
groupmod -g "$gid" docker
chgrp -hR docker /run/docker.sock
chgrp -hR docker /var/run/docker.sock
# Enable docker.service
systemctl is-active --quiet docker.service || systemctl start docker.service
@@ -45,7 +45,7 @@ EOF
apt-get update
for latest_package in ${latest_dotnet_packages[@]}; do
echo "Determining if .NET Core ($latest_package) is installed"
echo "Determing if .NET Core ($latest_package) is installed"
if ! dpkg -S $latest_package &> /dev/null; then
echo "Could not find .NET Core ($latest_package), installing..."
apt-get install $latest_package -y
@@ -9,7 +9,7 @@ source $HELPER_SCRIPTS/install.sh
source $HELPER_SCRIPTS/etc-environment.sh
# Mozillateam PPA is added manually because sometimes
# launchpad portal sends empty answer when trying to add it automatically
# lanuchad portal sends empty answer when trying to add it automatically
REPO_URL="http://ppa.launchpad.net/mozillateam/ppa/ubuntu"
GPG_FINGERPRINT="0ab215679c571d1c8325275b9bdb3d89ce49ec21"
@@ -27,7 +27,7 @@ rm $REPO_PATH
# Document apt source repo's
echo "mozillateam $REPO_URL" >> $HELPER_SCRIPTS/apt-sources.txt
# add to global system preferences for firefox locale en_US, because other browsers have en_US local.
# add to gloabl system preferences for firefox locale en_US, because other browsers have en_US local.
# Default firefox local is en_GB
echo 'pref("intl.locale.requested","en_US");' >> "/usr/lib/firefox/browser/defaults/preferences/syspref.js"
@@ -5,8 +5,13 @@
################################################################################
# Source the helpers for use with the script
source $HELPER_SCRIPTS/os.sh
source $HELPER_SCRIPTS/install.sh
# Install GNU C++ compiler
add-apt-repository ppa:ubuntu-toolchain-r/test -y
apt-get update -y
versions=$(get_toolset_value '.gcc.versions[]')
for version in ${versions[*]}; do
@@ -6,6 +6,11 @@
# Source the helpers for use with the script
source $HELPER_SCRIPTS/install.sh
source $HELPER_SCRIPTS/os.sh
# Install GNU Fortran compiler
add-apt-repository ppa:ubuntu-toolchain-r/test -y
apt-get update -y
versions=$(get_toolset_value '.gfortran.versions[]')
@@ -7,7 +7,7 @@
# Source the helpers for use with the script
source $HELPER_SCRIPTS/etc-environment.sh
# Any nonzero value for non-interactive installation
# Any nonzero value for noninteractive installation
export BOOTSTRAP_HASKELL_NONINTERACTIVE=1
export BOOTSTRAP_HASKELL_INSTALL_NO_STACK_HOOK=1
export GHCUP_INSTALL_BASE_PREFIX=/usr/local
@@ -10,7 +10,7 @@ REPO_PATH="/etc/apt/sources.list.d/heroku.list"
# add heroku repository to apt
curl -fsSL "${REPO_URL}/release.key" | gpg --dearmor -o $GPG_KEY
echo "deb [trusted=yes] $REPO_URL ./" > $REPO_PATH
echo "deb [signed-by=$GPG_KEY] $REPO_URL ./" > $REPO_PATH
# install heroku
apt-get update -y && apt-get install -y heroku
@@ -12,7 +12,7 @@ source $HELPER_SCRIPTS/install.sh
# Install the Homebrew on Linux
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
# Invoke shellenv to make brew available during running session
# Invoke shellenv to make brew available during runnig session
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
set_etc_environment_variable HOMEBREW_NO_AUTO_UPDATE 1
@@ -61,7 +61,7 @@ install_open_jdk() {
chmod -R 777 /usr/lib/jvm
}
# Add Adoptium PPA
# Add Addoptium PPA
# apt-key is deprecated, dearmor and add manually
wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor > /usr/share/keyrings/adoptium.gpg
echo "deb [signed-by=/usr/share/keyrings/adoptium.gpg] https://packages.adoptium.net/artifactory/deb/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/adoptium.list
@@ -69,22 +69,19 @@ echo "deb [signed-by=/usr/share/keyrings/adoptium.gpg] https://packages.adoptium
# Get all the updates from enabled repositories.
apt-get update
# While Ubuntu 24.04 binaries are not released in the Adoptium repo, we will not install Java
if ! is_ubuntu24; then
defaultVersion=$(get_toolset_value '.java.default')
jdkVersionsToInstall=($(get_toolset_value ".java.versions[]"))
defaultVersion=$(get_toolset_value '.java.default')
jdkVersionsToInstall=($(get_toolset_value ".java.versions[]"))
for jdkVersionToInstall in ${jdkVersionsToInstall[@]}; do
install_open_jdk ${jdkVersionToInstall}
for jdkVersionToInstall in ${jdkVersionsToInstall[@]}; do
install_open_jdk ${jdkVersionToInstall}
if [[ ${jdkVersionToInstall} == ${defaultVersion} ]]
then
create_java_environment_variable ${jdkVersionToInstall} True
else
create_java_environment_variable ${jdkVersionToInstall} False
fi
done
fi
if [[ ${jdkVersionToInstall} == ${defaultVersion} ]]
then
create_java_environment_variable ${jdkVersionToInstall} True
else
create_java_environment_variable ${jdkVersionToInstall} False
fi
done
# Install Ant
apt-get install -y --no-install-recommends ant ant-optional
@@ -13,8 +13,7 @@ download_url=$(resolve_github_release_asset_url "JetBrains/kotlin" "contains(\"k
archive_path=$(download_with_retry "$download_url")
# Supply chain security - Kotlin
kotlin_hash_file=$(download_with_retry "${download_url}.sha256")
kotlin_hash=$(cat "$kotlin_hash_file")
kotlin_hash=$(get_checksum_from_github_release "JetBrains/kotlin" "kotlin-compiler-.*\.zip" "latest" "SHA256")
use_checksum_comparison "$archive_path" "$kotlin_hash"
unzip -qq "$archive_path" -d $KOTLIN_ROOT
@@ -10,6 +10,6 @@ source $HELPER_SCRIPTS/install.sh
# Install Packer
download_url=$(curl -fsSL https://api.releases.hashicorp.com/v1/releases/packer/latest | jq -r '.builds[] | select((.arch=="amd64") and (.os=="linux")).url')
archive_path=$(download_with_retry "$download_url")
unzip -o -qq "$archive_path" -d /usr/local/bin
unzip -qq "$archive_path" -d /usr/local/bin
invoke_tests "Tools" "Packer"
+2 -2
View File
@@ -73,11 +73,11 @@ for version in $php_versions; do
# https://github.com/krakjoe/pcov#interoperability
phpdismod -v $version pcov
if [[ $version == "7.2" || $version == "7.3" || $version == "7.4" ]]; then
if [[ $version == "7.2" || $version == "7.3" ]]; then
apt-get install -y --no-install-recommends php$version-recode
fi
if [[ $version != "8.0" && $version != "8.1" && $version != "8.2" && $version != "8.3" ]]; then
if [[ $version != "8.0" && $version != "8.1" && $version != "8.2" ]]; then
apt-get install -y --no-install-recommends php$version-xmlrpc php$version-json
fi
done
@@ -6,16 +6,8 @@
# Source the helpers for use with the script
source $HELPER_SCRIPTS/install.sh
source $HELPER_SCRIPTS/os.sh
pwsh_version=$(get_toolset_value .pwsh.version)
# Install Powershell
if is_ubuntu24; then
dependency_path=$(download_with_retry "http://mirrors.kernel.org/ubuntu/pool/main/i/icu/libicu72_72.1-3ubuntu2_amd64.deb")
sudo dpkg -i "$dependency_path"
package_path=$(download_with_retry "https://github.com/PowerShell/PowerShell/releases/download/v7.4.2/powershell-lts_7.4.2-1.deb_amd64.deb")
sudo dpkg -i "$package_path"
else
apt-get install -y powershell=$pwsh_version*
fi
apt-get install -y powershell=$pwsh_version*
@@ -16,13 +16,9 @@ apt-get install -y --no-install-recommends python3 python3-dev python3-pip pytho
# Set pipx custom directory
export PIPX_BIN_DIR=/opt/pipx_bin
export PIPX_HOME=/opt/pipx
if is_ubuntu24; then
apt-get install -y --no-install-recommends pipx
pipx ensurepath
else
python3 -m pip install pipx
python3 -m pipx ensurepath
fi
python3 -m pip install pipx
python3 -m pipx ensurepath
# Update /etc/environment
set_etc_environment_variable "PIPX_BIN_DIR" $PIPX_BIN_DIR
set_etc_environment_variable "PIPX_HOME" $PIPX_HOME
+2 -4
View File
@@ -21,16 +21,14 @@ rustup component add rustfmt clippy
if is_ubuntu22; then
cargo install bindgen-cli cbindgen cargo-audit cargo-outdated
fi
if is_ubuntu20; then
else
cargo install --locked bindgen-cli cbindgen cargo-audit cargo-outdated
fi
# Cleanup Cargo cache
rm -rf ${CARGO_HOME}/registry/*
# Update /etc/environment
# Update /etc/environemnt
prepend_etc_environment_path '$HOME/.cargo/bin'
invoke_tests "Tools" "Rust"
@@ -14,7 +14,7 @@ selenium_major_version=$(get_toolset_value '.selenium.version')
selenium_download_url=$(resolve_github_release_asset_url "SeleniumHQ/selenium" "contains(\"selenium-server-\") and endswith(\".jar\")" "$selenium_major_version\.+" "" "true")
selenium_jar_path=$(download_with_retry "$selenium_download_url" "/usr/share/java/selenium-server.jar")
# Create an empty file to retrieve selenium version
# Create an epmty file to retrive selenium version
selenium_full_version=$(echo $selenium_download_url | awk -F"selenium-server-|.jar" '{print $2}')
touch "/usr/share/java/selenium-server-$selenium_full_version"
@@ -10,14 +10,11 @@ source $HELPER_SCRIPTS/os.sh
# Install libssl1.1 dependency
if is_ubuntu22; then
focal_list=/etc/apt/sources.list.d/focal-security.list
echo "deb http://archive.ubuntu.com/ubuntu/ focal-security main" | tee "${focal_list}"
apt-get update --quiet
libssl_deb_path=$(download_with_retry "http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.20_amd64.deb")
libssl_hash="0b3251aee55db6e20d02f4b9a2b703c9874a85ab6a20b12f4870f52f91633d37"
use_checksum_comparison "$libssl_deb_path" "$libssl_hash"
apt-get install --no-install-recommends --yes libssl1.1
rm "${focal_list}"
apt-get update --quiet
dpkg -i "$libssl_deb_path"
fi
# Install SqlPackage
+7 -16
View File
@@ -16,26 +16,17 @@ swift_release_name="swift-${swift_version}-RELEASE-${image_label}"
archive_url="https://swift.org/builds/swift-${swift_version}-release/${image_label//./}/swift-${swift_version}-RELEASE/${swift_release_name}.tar.gz"
archive_path=$(download_with_retry "$archive_url")
# Verifying PGP signature using official Swift PGP key. Referring to https://www.swift.org/install/linux/#Installation-via-Tarball
# Download and import Swift PGP keys
gpg --keyserver hkp://keyserver.ubuntu.com \
--recv-keys \
'7463 A81A 4B2E EA1B 551F FBCF D441 C977 412B 37AD' \
'1BE1 E29A 084C B305 F397 D62A 9F59 7F4D 21A5 6D5F' \
'A3BA FD35 56A5 9079 C068 94BD 63BC 1CFE 91D3 06C6' \
'5E4D F843 FB06 5D7F 7E24 FBA2 EF54 30F0 71E1 B235' \
'8513 444E 2DA3 6B7C 1659 AF4D 7638 F1FB 2B2B 08C4' \
'A62A E125 BBBF BB96 A6E0 42EC 925C C1CC ED3D 1561' \
'8A74 9566 2C3C D4AE 18D9 5637 FAF6 989E 1BC1 6FEA' \
'E813 C892 820A 6FA1 3755 B268 F167 DF1A CF9C E069'
gpg --keyserver hkp://keyserver.ubuntu.com --refresh-keys Swift
# Verifing pgp signature using official swift pgp key. Referring to https://www.swift.org/install/linux/#Installation-via-Tarball
# Download and import swift pgp key
pgp_key_path=$(download_with_retry "https://swift.org/keys/all-keys.asc")
gpg --no-default-keyring --keyring swift --import "$pgp_key_path"
# Download and verify signature
signature_path=$(download_with_retry "${archive_url}.sig")
gpg --verify "$signature_path" "$archive_path"
gpg --no-default-keyring --keyring swift --verify "$signature_path" "$archive_path"
# Remove Swift PGP public key with temporary keyring
rm -rf ~/.gnupg
# Remove swift pgp public key with temporary keyring
rm ~/.gnupg/swift
# Extract and install swift
tar xzf "$archive_path" -C /tmp
@@ -48,20 +48,14 @@ if (Test-IsUbuntu20) {
$languageAndRuntime.AddToolVersionsListInline("GNU C++", $(Get-CPPVersions), "^\d+")
$languageAndRuntime.AddToolVersionsListInline("GNU Fortran", $(Get-FortranVersions), "^\d+")
$languageAndRuntime.AddToolVersion("Julia", $(Get-JuliaVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$languageAndRuntime.AddToolVersion("Kotlin", $(Get-KotlinVersion))
}
if (-not $(Test-IsUbuntu24)) {
$languageAndRuntime.AddToolVersion("Mono", $(Get-MonoVersion))
$languageAndRuntime.AddToolVersion("MSBuild", $(Get-MsbuildVersion))
}
$languageAndRuntime.AddToolVersion("Kotlin", $(Get-KotlinVersion))
$languageAndRuntime.AddToolVersion("Mono", $(Get-MonoVersion))
$languageAndRuntime.AddToolVersion("MSBuild", $(Get-MsbuildVersion))
$languageAndRuntime.AddToolVersion("Node.js", $(Get-NodeVersion))
$languageAndRuntime.AddToolVersion("Perl", $(Get-PerlVersion))
$languageAndRuntime.AddToolVersion("Python", $(Get-PythonVersion))
$languageAndRuntime.AddToolVersion("Ruby", $(Get-RubyVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$languageAndRuntime.AddToolVersion("Swift", $(Get-SwiftVersion))
}
$languageAndRuntime.AddToolVersion("Swift", $(Get-SwiftVersion))
# Package Management
$packageManagement = $installedSoftware.AddHeader("Package Management")
@@ -70,9 +64,7 @@ $packageManagement.AddToolVersion("Helm", $(Get-HelmVersion))
$packageManagement.AddToolVersion("Homebrew", $(Get-HomebrewVersion))
$packageManagement.AddToolVersion("Miniconda", $(Get-MinicondaVersion))
$packageManagement.AddToolVersion("Npm", $(Get-NpmVersion))
if (-not $(Test-IsUbuntu24)) {
$packageManagement.AddToolVersion("NuGet", $(Get-NuGetVersion))
}
$packageManagement.AddToolVersion("NuGet", $(Get-NuGetVersion))
$packageManagement.AddToolVersion("Pip", $(Get-PipVersion))
$packageManagement.AddToolVersion("Pip3", $(Get-Pip3Version))
$packageManagement.AddToolVersion("Pipx", $(Get-PipxVersion))
@@ -89,11 +81,15 @@ to accomplish this.
# Project Management
$projectManagement = $installedSoftware.AddHeader("Project Management")
$projectManagement.AddToolVersion("Ant", $(Get-AntVersion))
$projectManagement.AddToolVersion("Gradle", $(Get-GradleVersion))
$projectManagement.AddToolVersion("Lerna", $(Get-LernaVersion))
$projectManagement.AddToolVersion("Maven", $(Get-MavenVersion))
if (Test-IsUbuntu20) {
$projectManagement.AddToolVersion("Ant", $(Get-AntVersion))
$projectManagement.AddToolVersion("Gradle", $(Get-GradleVersion))
}
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$projectManagement.AddToolVersion("Lerna", $(Get-LernaVersion))
}
$projectManagement.AddToolVersion("Maven", $(Get-MavenVersion))
if (Test-IsUbuntu20) {
$projectManagement.AddToolVersion("Sbt", $(Get-SbtVersion))
}
@@ -102,20 +98,14 @@ $tools = $installedSoftware.AddHeader("Tools")
$tools.AddToolVersion("Ansible", $(Get-AnsibleVersion))
$tools.AddToolVersion("apt-fast", $(Get-AptFastVersion))
$tools.AddToolVersion("AzCopy", $(Get-AzCopyVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$tools.AddToolVersion("Bazel", $(Get-BazelVersion))
$tools.AddToolVersion("Bazelisk", $(Get-BazeliskVersion))
}
$tools.AddToolVersion("Bazel", $(Get-BazelVersion))
$tools.AddToolVersion("Bazelisk", $(Get-BazeliskVersion))
$tools.AddToolVersion("Bicep", $(Get-BicepVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$tools.AddToolVersion("Buildah", $(Get-BuildahVersion))
}
$tools.AddToolVersion("Buildah", $(Get-BuildahVersion))
$tools.AddToolVersion("CMake", $(Get-CMakeVersion))
$tools.AddToolVersion("CodeQL Action Bundle", $(Get-CodeQLBundleVersion))
$tools.AddToolVersion("Docker Amazon ECR Credential Helper", $(Get-DockerAmazonECRCredHelperVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$tools.AddToolVersion("Docker Compose v1", $(Get-DockerComposeV1Version))
}
$tools.AddToolVersion("Docker Compose v1", $(Get-DockerComposeV1Version))
$tools.AddToolVersion("Docker Compose v2", $(Get-DockerComposeV2Version))
$tools.AddToolVersion("Docker-Buildx", $(Get-DockerBuildxVersion))
$tools.AddToolVersion("Docker Client", $(Get-DockerClientVersion))
@@ -127,9 +117,7 @@ $tools.AddToolVersion("Git", $(Get-GitVersion))
$tools.AddToolVersion("Git LFS", $(Get-GitLFSVersion))
$tools.AddToolVersion("Git-ftp", $(Get-GitFTPVersion))
$tools.AddToolVersion("Haveged", $(Get-HavegedVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$tools.AddToolVersion("Heroku", $(Get-HerokuVersion))
}
$tools.AddToolVersion("Heroku", $(Get-HerokuVersion))
if (Test-IsUbuntu20) {
$tools.AddToolVersion("HHVM (HipHop VM)", $(Get-HHVMVersion))
}
@@ -137,123 +125,88 @@ $tools.AddToolVersion("jq", $(Get-JqVersion))
$tools.AddToolVersion("Kind", $(Get-KindVersion))
$tools.AddToolVersion("Kubectl", $(Get-KubectlVersion))
$tools.AddToolVersion("Kustomize", $(Get-KustomizeVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$tools.AddToolVersion("Leiningen", $(Get-LeiningenVersion))
}
$tools.AddToolVersion("Leiningen", $(Get-LeiningenVersion))
$tools.AddToolVersion("MediaInfo", $(Get-MediainfoVersion))
$tools.AddToolVersion("Mercurial", $(Get-HGVersion))
$tools.AddToolVersion("Minikube", $(Get-MinikubeVersion))
$tools.AddToolVersion("n", $(Get-NVersion))
$tools.AddToolVersion("Newman", $(Get-NewmanVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$tools.AddToolVersion("nvm", $(Get-NvmVersion))
}
$tools.AddToolVersion("nvm", $(Get-NvmVersion))
$tools.AddToolVersion("OpenSSL", $(Get-OpensslVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$tools.AddToolVersion("Packer", $(Get-PackerVersion))
}
$tools.AddToolVersion("Packer", $(Get-PackerVersion))
$tools.AddToolVersion("Parcel", $(Get-ParcelVersion))
if (Test-IsUbuntu20) {
$tools.AddToolVersion("PhantomJS", $(Get-PhantomJSVersion))
}
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$tools.AddToolVersion("Podman", $(Get-PodManVersion))
}
$tools.AddToolVersion("Podman", $(Get-PodManVersion))
$tools.AddToolVersion("Pulumi", $(Get-PulumiVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$tools.AddToolVersion("R", $(Get-RVersion))
$tools.AddToolVersion("Skopeo", $(Get-SkopeoVersion))
}
$tools.AddToolVersion("R", $(Get-RVersion))
$tools.AddToolVersion("Skopeo", $(Get-SkopeoVersion))
$tools.AddToolVersion("Sphinx Open Source Search Server", $(Get-SphinxVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$tools.AddToolVersion("SVN", $(Get-SVNVersion))
$tools.AddToolVersion("Terraform", $(Get-TerraformVersion))
}
$tools.AddToolVersion("SVN", $(Get-SVNVersion))
$tools.AddToolVersion("Terraform", $(Get-TerraformVersion))
$tools.AddToolVersion("yamllint", $(Get-YamllintVersion))
$tools.AddToolVersion("yq", $(Get-YqVersion))
$tools.AddToolVersion("zstd", $(Get-ZstdVersion))
# CLI Tools
$cliTools = $installedSoftware.AddHeader("CLI Tools")
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$cliTools.AddToolVersion("Alibaba Cloud CLI", $(Get-AlibabaCloudCliVersion))
}
$cliTools.AddToolVersion("Alibaba Cloud CLI", $(Get-AlibabaCloudCliVersion))
$cliTools.AddToolVersion("AWS CLI", $(Get-AWSCliVersion))
$cliTools.AddToolVersion("AWS CLI Session Manager Plugin", $(Get-AWSCliSessionManagerPluginVersion))
$cliTools.AddToolVersion("AWS SAM CLI", $(Get-AWSSAMVersion))
$cliTools.AddToolVersion("Azure CLI", $(Get-AzureCliVersion))
$cliTools.AddToolVersion("Azure CLI (azure-devops)", $(Get-AzureDevopsVersion))
$cliTools.AddToolVersion("GitHub CLI", $(Get-GitHubCliVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$cliTools.AddToolVersion("Google Cloud CLI", $(Get-GoogleCloudCLIVersion))
$cliTools.AddToolVersion("Netlify CLI", $(Get-NetlifyCliVersion))
$cliTools.AddToolVersion("OpenShift CLI", $(Get-OCCliVersion))
$cliTools.AddToolVersion("ORAS CLI", $(Get-ORASCliVersion))
$cliTools.AddToolVersion("Vercel CLI", $(Get-VerselCliversion))
}
$cliTools.AddToolVersion("Google Cloud CLI", $(Get-GoogleCloudCLIVersion))
$cliTools.AddToolVersion("Netlify CLI", $(Get-NetlifyCliVersion))
$cliTools.AddToolVersion("OpenShift CLI", $(Get-OCCliVersion))
$cliTools.AddToolVersion("ORAS CLI", $(Get-ORASCliVersion))
$cliTools.AddToolVersion("Vercel CLI", $(Get-VerselCliversion))
# Java
if (-not $(Test-IsUbuntu24)) {
$installedSoftware.AddHeader("Java").AddTable($(Get-JavaVersionsTable))
}
$installedSoftware.AddHeader("Java").AddTable($(Get-JavaVersionsTable))
# PHP Tools
$phpTools = $installedSoftware.AddHeader("PHP Tools")
$phpTools.AddToolVersionsListInline("PHP", $(Get-PHPVersions), "^\d+\.\d+")
$phpTools.AddToolVersion("Composer", $(Get-ComposerVersion))
$phpTools.AddToolVersion("PHPUnit", $(Get-PHPUnitVersion))
$phpTools.AddNote("Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.")
# Haskell Tools
$haskellTools = $installedSoftware.AddHeader("Haskell Tools")
$haskellTools.AddToolVersion("Cabal", $(Get-CabalVersion))
$haskellTools.AddToolVersion("GHC", $(Get-GHCVersion))
$haskellTools.AddToolVersion("GHCup", $(Get-GHCupVersion))
$haskellTools.AddToolVersion("Stack", $(Get-StackVersion))
# Rust Tools
Initialize-RustEnvironment
$rustTools = $installedSoftware.AddHeader("Rust Tools")
$rustTools.AddToolVersion("Cargo", $(Get-CargoVersion))
$rustTools.AddToolVersion("Rust", $(Get-RustVersion))
$rustTools.AddToolVersion("Rustdoc", $(Get-RustdocVersion))
$rustTools.AddToolVersion("Rustup", $(Get-RustupVersion))
# Packages
$rustToolsPackages = $rustTools.AddHeader("Packages")
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$rustToolsPackages.AddToolVersion("Bindgen", $(Get-BindgenVersion))
$rustToolsPackages.AddToolVersion("Cargo audit", $(Get-CargoAuditVersion))
$rustToolsPackages.AddToolVersion("Cargo clippy", $(Get-CargoClippyVersion))
$rustToolsPackages.AddToolVersion("Cargo outdated", $(Get-CargoOutdatedVersion))
$rustToolsPackages.AddToolVersion("Cbindgen", $(Get-CbindgenVersion))
}
$rustToolsPackages.AddToolVersion("Bindgen", $(Get-BindgenVersion))
$rustToolsPackages.AddToolVersion("Cargo audit", $(Get-CargoAuditVersion))
$rustToolsPackages.AddToolVersion("Cargo clippy", $(Get-CargoClippyVersion))
$rustToolsPackages.AddToolVersion("Cargo outdated", $(Get-CargoOutdatedVersion))
$rustToolsPackages.AddToolVersion("Cbindgen", $(Get-CbindgenVersion))
$rustToolsPackages.AddToolVersion("Rustfmt", $(Get-RustfmtVersion))
# Browsers and Drivers
$browsersTools = $installedSoftware.AddHeader("Browsers and Drivers")
$browsersTools.AddToolVersion("Google Chrome", $(Get-ChromeVersion))
$browsersTools.AddToolVersion("ChromeDriver", $(Get-ChromeDriverVersion))
$browsersTools.AddToolVersion("Chromium", $(Get-ChromiumVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$browsersTools.AddToolVersion("Microsoft Edge", $(Get-EdgeVersion))
$browsersTools.AddToolVersion("Microsoft Edge WebDriver", $(Get-EdgeDriverVersion))
}
$browsersTools.AddToolVersion("Microsoft Edge", $(Get-EdgeVersion))
$browsersTools.AddToolVersion("Microsoft Edge WebDriver", $(Get-EdgeDriverVersion))
$browsersTools.AddToolVersion("Selenium server", $(Get-SeleniumVersion))
if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
$browsersTools.AddToolVersion("Mozilla Firefox", $(Get-FirefoxVersion))
$browsersTools.AddToolVersion("Geckodriver", $(Get-GeckodriverVersion))
}
# Environment variables
$browsersTools.AddToolVersion("Mozilla Firefox", $(Get-FirefoxVersion))
$browsersTools.AddToolVersion("Geckodriver", $(Get-GeckodriverVersion))
$browsersTools.AddHeader("Environment variables").AddTable($(Build-BrowserWebdriversEnvironmentTable))
# .NET Tools
$netCoreTools = $installedSoftware.AddHeader(".NET Tools")
$netCoreTools.AddToolVersionsListInline(".NET Core SDK", $(Get-DotNetCoreSdkVersions), "^\d+\.\d+\.\d")
$netCoreTools.AddNodes($(Get-DotnetTools))
# Databases
$databasesTools = $installedSoftware.AddHeader("Databases")
if (Test-IsUbuntu20) {
$databasesTools.AddToolVersion("MongoDB", $(Get-MongoDbVersion))
@@ -261,21 +214,15 @@ if (Test-IsUbuntu20) {
$databasesTools.AddToolVersion("sqlite3", $(Get-SqliteVersion))
$databasesTools.AddNode($(Build-PostgreSqlSection))
$databasesTools.AddNode($(Build-MySQLSection))
if (-not $(Test-IsUbuntu24)) {
$databasesTools.AddNode($(Build-MSSQLToolsSection))
}
$databasesTools.AddNode($(Build-MSSQLToolsSection))
# Cached Tools
if (-not $(Test-IsUbuntu24)) {
$cachedTools = $installedSoftware.AddHeader("Cached Tools")
$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+")
$cachedTools.AddToolVersionsList("Ruby", $(Get-ToolcacheRubyVersions), "^\d+\.\d+")
}
$cachedTools = $installedSoftware.AddHeader("Cached Tools")
$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+")
$cachedTools.AddToolVersionsList("Ruby", $(Get-ToolcacheRubyVersions), "^\d+\.\d+")
# PowerShell Tools
$powerShellTools = $installedSoftware.AddHeader("PowerShell Tools")
$powerShellTools.AddToolVersion("PowerShell", $(Get-PowershellVersion))
$powerShellTools.AddHeader("PowerShell Modules").AddNodes($(Get-PowerShellModules))
@@ -284,12 +231,9 @@ $installedSoftware.AddHeader("Web Servers").AddTable($(Build-WebServersTable))
$androidTools = $installedSoftware.AddHeader("Android")
$androidTools.AddTable($(Build-AndroidTable))
$androidTools.AddHeader("Environment variables").AddTable($(Build-AndroidEnvironmentTable))
if (-not $(Test-IsUbuntu24)) {
$installedSoftware.AddHeader("Cached Docker images").AddTable($(Get-CachedDockerImagesTableData))
}
$installedSoftware.AddHeader("Cached Docker images").AddTable($(Get-CachedDockerImagesTableData))
$installedSoftware.AddHeader("Installed apt packages").AddTable($(Get-AptPackages))
$softwareReport.ToJson() | Out-File -FilePath "${OutputDirectory}/software-report.json" -Encoding UTF8NoBOM
@@ -10,7 +10,7 @@ function Get-DashVersion {
function Get-CPPVersions {
$result = Get-CommandResult "apt list --installed" -Multiline
$cppVersions = $result.Output | Where-Object { $_ -match "g\+\+-\d\d\/" } | ForEach-Object {
$cppVersions = $result.Output | Where-Object { $_ -match "g\+\+-\d+" } | ForEach-Object {
& $_.Split("/")[0] --version | Select-Object -First 1 | Get-StringPart -Part 3
} | Sort-Object {[Version] $_}
return $cppVersions
@@ -18,8 +18,9 @@ function Get-CPPVersions {
function Get-FortranVersions {
$result = Get-CommandResult "apt list --installed" -Multiline
$fortranVersions = $result.Output | Where-Object { $_ -match "^gfortran-\d\d\/" } | ForEach-Object {
& $_.Split("/")[0] --version | Select-Object -First 1 | Get-StringPart -Part 4
$fortranVersions = $result.Output | Where-Object { $_ -match "^gfortran-\d+" } | ForEach-Object {
$_ -match "now (?<version>\d+\.\d+\.\d+)-" | Out-Null
$Matches.version
} | Sort-Object {[Version] $_}
return $fortranVersions
}
@@ -174,13 +175,15 @@ function Get-ParcelVersion {
}
function Get-PipVersion {
$pipVersion = pip --version | Get-StringPart -Part 1
return $pipVersion
$result = Get-CommandResult "pip --version"
$result.Output -match "pip (?<version>\d+\.\d+\.\d+)" | Out-Null
return $Matches.version
}
function Get-Pip3Version {
$pip3Version = pip3 --version | Get-StringPart -Part 1
return $pip3Version
$result = Get-CommandResult "pip3 --version"
$result.Output -match "pip (?<version>\d+\.\d+\.\d+)" | Out-Null
return $Matches.version
}
function Get-VcpkgVersion {
@@ -62,10 +62,6 @@ function Test-IsUbuntu22 {
return (lsb_release -rs) -eq "22.04"
}
function Test-IsUbuntu24 {
return (lsb_release -rs) -eq "24.04"
}
function Get-ToolsetContent {
<#
.SYNOPSIS
@@ -27,7 +27,7 @@ replace_etc_environment_variable() {
local variable_value=$2
# modify /etc/environemnt in place by replacing a string that begins with variable_name
sudo sed -i -e "s%^${variable_name}=.*$%${variable_name}=${variable_value}%" /etc/environment
sudo sed -i -e "s%^${variable_name}=.*$%${variable_name}=\"${variable_value}\"%" /etc/environment
}
set_etc_environment_variable() {
+15 -15
View File
@@ -63,7 +63,7 @@ get_github_releases_by_version() {
json=$(curl -fsSL "https://api.github.com/repos/${repo}/releases?per_page=${page_size}")
if [[ -z "$json" ]]; then
echo "Failed to get releases" >&2
echo "Failed to get releases"
exit 1
fi
@@ -92,8 +92,8 @@ get_github_releases_by_version() {
fi
if [[ -z "$json_filtered" ]]; then
echo "Failed to get releases from ${repo} matching version ${version}" >&2
echo "Available versions: $(echo "$json" | jq -r '.tag_name')" >&2
echo "Failed to get releases from ${repo} matching version ${version}"
echo "Available versions: $(echo "$json" | jq -r '.tag_name')"
exit 1
fi
@@ -111,8 +111,8 @@ resolve_github_release_asset_url() {
matched_url=$(echo $matching_releases | jq -r ".assets[].browser_download_url | select(${url_filter})")
if [[ -z "$matched_url" ]]; then
echo "Found no download urls matching pattern: ${url_filter}" >&2
echo "Available download urls: $(echo "$matching_releases" | jq -r '.assets[].browser_download_url')" >&2
echo "Found no download urls matching pattern: ${url_filter}"
echo "Available download urls: $(echo "$matching_releases" | jq -r '.assets[].browser_download_url')"
exit 1
fi
@@ -120,7 +120,7 @@ resolve_github_release_asset_url() {
if [[ $allow_multiple_matches == "true" ]]; then
matched_url=$(echo "$matched_url" | tail -n 1)
else
echo "Multiple matches found for ${version} version and ${url_filter} URL filter. Please make filters more specific" >&2
echo "Multiple matches found for ${version} version and ${url_filter} URL filter. Please make filters more specific"
exit 1
fi
fi
@@ -136,7 +136,7 @@ get_checksum_from_github_release() {
local allow_pre_release=${5:-false}
if [[ -z "$file_name" ]]; then
echo "File name is not specified." >&2
echo "File name is not specified."
exit 1
fi
@@ -145,7 +145,7 @@ get_checksum_from_github_release() {
elif [[ "$hash_type" == "SHA512" ]]; then
hash_pattern="[A-Fa-f0-9]{128}"
else
echo "Unknown hash type: ${hash_type}" >&2
echo "Unknown hash type: ${hash_type}"
exit 1
fi
@@ -153,19 +153,19 @@ get_checksum_from_github_release() {
matched_line=$(printf "$(echo $matching_releases | jq '.body')\n" | grep "$file_name")
if [[ -z "$matched_line" ]]; then
echo "File name ${file_name} not found in release body" >&2
echo "File name ${file_name} not found in release body"
exit 1
fi
if [[ "$(echo "$matched_line" | wc -l)" -gt 1 ]]; then
echo "Multiple matches found for ${file_name} in release body: ${matched_line}" >&2
echo "Multiple matches found for ${file_name} in release body: ${matched_line}"
exit 1
fi
hash=$(echo $matched_line | grep -oP "$hash_pattern")
if [[ -z "$hash" ]]; then
echo "Found ${file_name} in body of release, but failed to get hash from it: ${matched_line}" >&2
echo "Found ${file_name} in body of release, but failed to get hash from it: ${matched_line}"
exit 1
fi
@@ -185,7 +185,7 @@ get_checksum_from_url() {
elif [[ "$hash_type" == "SHA512" ]]; then
hash_pattern="[A-Fa-f0-9]{128}"
else
echo "Unknown hash type: ${hash_type}" >&2
echo "Unknown hash type: ${hash_type}"
exit 1
fi
@@ -196,12 +196,12 @@ get_checksum_from_url() {
matched_line=$(printf "$checksums\n" | grep "$file_name")
if [[ "$(echo "$matched_line" | wc -l)" -gt 1 ]]; then
echo "Found multiple lines matching file name ${file_name} in checksum file." >&2
echo "Found multiple lines matching file name ${file_name} in checksum file."
exit 1
fi
if [[ -z "$matched_line" ]]; then
echo "File name ${file_name} not found in checksum file." >&2
echo "File name ${file_name} not found in checksum file."
exit 1
fi
@@ -212,7 +212,7 @@ get_checksum_from_url() {
fi
if [[ -z "$hash" ]]; then
echo "Found ${file_name} in checksum file, but failed to get hash from it: ${matched_line}" >&2
echo "Found ${file_name} in checksum file, but failed to get hash from it: ${matched_line}"
exit 1
fi
+2 -6
View File
@@ -5,13 +5,9 @@
################################################################################
is_ubuntu20() {
lsb_release -rs | grep -q '20.04'
lsb_release -d | grep -q 'Ubuntu 20'
}
is_ubuntu22() {
lsb_release -rs | grep -q '22.04'
}
is_ubuntu24() {
lsb_release -rs | grep -q '24.04'
lsb_release -d | grep -q 'Ubuntu 22'
}
@@ -1,4 +1,4 @@
Describe "Firefox" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Firefox" {
It "Firefox" {
"firefox --version" | Should -ReturnZeroExitCode
}
@@ -24,7 +24,7 @@ Describe "Chrome" {
}
}
Describe "Edge" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Edge" {
It "Edge" {
"microsoft-edge --version" | Should -ReturnZeroExitCode
}
@@ -10,7 +10,7 @@ Describe "Azure DevOps CLI" {
}
}
Describe "Aliyun CLI" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Aliyun CLI" {
It "Aliyun CLI" {
"aliyun version" | Should -ReturnZeroExitCode
}
@@ -36,19 +36,19 @@ Describe "GitHub CLI" {
}
}
Describe "Google Cloud CLI" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Google Cloud CLI" {
It "Google Cloud CLI" {
"gcloud --version" | Should -ReturnZeroExitCode
}
}
Describe "OC CLI" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "OC CLI" {
It "OC CLI" {
"oc version" | Should -ReturnZeroExitCode
}
}
Describe "Oras CLI" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Oras CLI" {
It "Oras CLI" {
"oras version" | Should -ReturnZeroExitCode
}
+1 -1
View File
@@ -24,7 +24,7 @@ Describe "PHP" {
}
}
Describe "Swift" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Swift" {
It "swift" {
"swift --version" | Should -ReturnZeroExitCode
}
@@ -1,4 +1,4 @@
Describe "MongoDB" -Skip:(-not (Test-IsUbuntu20)) {
Describe "MongoDB" -Skip:(Test-IsUbuntu22) {
It "<ToolName>" -TestCases @(
@{ ToolName = "mongo" }
@{ ToolName = "mongod" }
+13 -19
View File
@@ -1,6 +1,6 @@
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1" -DisableNameChecking
Describe "Java" -Skip:(Test-IsUbuntu24) {
Describe "Java" {
$toolsetJava = (Get-ToolsetContent).java
$defaultVersion = $toolsetJava.default
$jdkVersions = $toolsetJava.versions
@@ -17,10 +17,22 @@ Describe "Java" -Skip:(Test-IsUbuntu24) {
It "<ToolName>" -TestCases @(
@{ ToolName = "java" }
@{ ToolName = "javac" }
@{ ToolName = "mvn" }
@{ ToolName = "ant" }
) {
"$ToolName -version" | Should -ReturnZeroExitCode
}
It "Gradle" {
"gradle -version" | Should -ReturnZeroExitCode
$gradleVariableValue = [System.Environment]::GetEnvironmentVariable("GRADLE_HOME")
$gradleVariableValue | Should -BeLike "/usr/share/gradle-*"
$gradlePath = Join-Path $env:GRADLE_HOME "bin/gradle"
"`"$GradlePath`" -version" | Should -ReturnZeroExitCode
}
$testCases = $jdkVersions | ForEach-Object { @{Version = $_ } }
It "Java <Version>" -TestCases $testCases {
@@ -36,21 +48,3 @@ Describe "Java" -Skip:(Test-IsUbuntu24) {
"`"$javaPath`" -version" | Should -OutputTextMatchingRegex "openjdk\ version\ `"${Version}(\.[0-9_\.]+)?`""
}
}
Describe "Java-Tools" {
It "Gradle" {
"gradle -version" | Should -ReturnZeroExitCode
$gradleVariableValue = [System.Environment]::GetEnvironmentVariable("GRADLE_HOME")
$gradleVariableValue | Should -BeLike "/usr/share/gradle-*"
$gradlePath = Join-Path $env:GRADLE_HOME "bin/gradle"
"`"$GradlePath`" -version" | Should -ReturnZeroExitCode
}
It "<ToolName>" -TestCases @(
@{ ToolName = "mvn" }
@{ ToolName = "ant" }
) {
"$ToolName -version" | Should -ReturnZeroExitCode
}
}
+22 -23
View File
@@ -1,4 +1,3 @@
Import-Module "$PSScriptRoot/../helpers/Common.Helpers.psm1"
Describe "azcopy" {
It "azcopy" {
"azcopy --version" | Should -ReturnZeroExitCode
@@ -37,12 +36,8 @@ Describe "Rust" {
It "Rustfmt is installed" {
"rustfmt --version" | Should -ReturnZeroExitCode
}
It "cargo" {
"cargo --version" | Should -ReturnZeroExitCode
}
Context "Cargo dependencies" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Context "Cargo dependencies" {
It "bindgen" {
"bindgen --version" | Should -ReturnZeroExitCode
}
@@ -51,6 +46,10 @@ Describe "Rust" {
"cbindgen --version" | Should -ReturnZeroExitCode
}
It "cargo" {
"cargo --version" | Should -ReturnZeroExitCode
}
It "cargo-clippy" {
"cargo-clippy --version" | Should -ReturnZeroExitCode
}
@@ -106,7 +105,7 @@ Describe "Docker images" {
}
}
Describe "Docker-compose v1" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Docker-compose v1" {
It "docker-compose" {
"docker-compose --version"| Should -ReturnZeroExitCode
}
@@ -118,7 +117,7 @@ Describe "Ansible" {
}
}
Describe "Bazel" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Bazel" {
It "<ToolName>" -TestCases @(
@{ ToolName = "bazel" }
@{ ToolName = "bazelisk" }
@@ -145,7 +144,7 @@ Describe "Cmake" {
}
}
Describe "erlang" -Skip:(-not (Test-IsUbuntu20)) {
Describe "erlang" -Skip:(Test-IsUbuntu22) {
$testCases = @("erl -version", "erlc -v", "rebar3 -v") | ForEach-Object { @{ErlangCommand = $_} }
It "erlang <ErlangCommand>" -TestCases $testCases {
@@ -169,7 +168,7 @@ Describe "gfortran" {
}
}
Describe "Mono" -Skip:(Test-IsUbuntu24) {
Describe "Mono" {
It "mono" {
"mono --version" | Should -ReturnZeroExitCode
}
@@ -183,25 +182,25 @@ Describe "Mono" -Skip:(Test-IsUbuntu24) {
}
}
Describe "MSSQLCommandLineTools" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "MSSQLCommandLineTools" {
It "sqlcmd" {
"sqlcmd -?" | Should -ReturnZeroExitCode
}
}
Describe "SqlPackage" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "SqlPackage" {
It "sqlpackage" {
"sqlpackage /version" | Should -ReturnZeroExitCode
}
}
Describe "R" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "R" {
It "r" {
"R --version" | Should -ReturnZeroExitCode
}
}
Describe "Sbt" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Sbt" {
It "sbt" {
"sbt --version" | Should -ReturnZeroExitCode
}
@@ -214,7 +213,7 @@ Describe "Selenium" {
}
}
Describe "Terraform" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Terraform" {
It "terraform" {
"terraform --version" | Should -ReturnZeroExitCode
}
@@ -252,13 +251,13 @@ Describe "Git-lfs" {
}
}
Describe "Heroku" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Heroku" {
It "heroku" {
"heroku --version" | Should -ReturnZeroExitCode
}
}
Describe "HHVM" -Skip:(-not (Test-IsUbuntu20)) {
Describe "HHVM" -Skip:(Test-IsUbuntu22) {
It "hhvm" {
"hhvm --version" | Should -ReturnZeroExitCode
}
@@ -298,7 +297,7 @@ Describe "Kubernetes tools" {
}
}
Describe "Leiningen" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Leiningen" {
It "leiningen" {
"lein --version" | Should -ReturnZeroExitCode
}
@@ -310,7 +309,7 @@ Describe "Conda" {
}
}
Describe "Packer" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Packer" {
It "packer" {
"packer --version" | Should -ReturnZeroExitCode
}
@@ -322,14 +321,14 @@ Describe "Pulumi" {
}
}
Describe "Phantomjs" -Skip:(-not (Test-IsUbuntu20)) {
Describe "Phantomjs" -Skip:(Test-IsUbuntu22) {
It "phantomjs" {
$env:OPENSSL_CONF="/etc/ssl"
"phantomjs --version" | Should -ReturnZeroExitCode
}
}
Describe "Containers" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Containers" {
$testCases = @("podman", "buildah", "skopeo") | ForEach-Object { @{ContainerCommand = $_} }
It "<ContainerCommand>" -TestCases $testCases {
@@ -345,7 +344,7 @@ Describe "Containers" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu2
}
Describe "nvm" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "nvm" {
It "nvm" {
"source /etc/skel/.nvm/nvm.sh && nvm --version" | Should -ReturnZeroExitCode
}
@@ -381,7 +380,7 @@ Describe "yq" {
}
}
Describe "Kotlin" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Kotlin" {
It "kapt" {
"kapt -version" | Should -ReturnZeroExitCode
}
@@ -1,4 +1,4 @@
Describe "Toolset" -Skip:((-not (Test-IsUbuntu20)) -and (-not (Test-IsUbuntu22))) {
Describe "Toolset" {
$tools = (Get-ToolsetContent).toolcache
$toolsExecutables = @{
@@ -1,385 +0,0 @@
packer {
required_plugins {
azure = {
source = "github.com/hashicorp/azure"
version = "1.4.5"
}
}
}
locals {
managed_image_name = var.managed_image_name != "" ? var.managed_image_name : "packer-${var.image_os}-${var.image_version}"
}
variable "allowed_inbound_ip_addresses" {
type = list(string)
default = []
}
variable "azure_tags" {
type = map(string)
default = {}
}
variable "build_resource_group_name" {
type = string
default = "${env("BUILD_RESOURCE_GROUP_NAME")}"
}
variable "client_cert_path" {
type = string
default = "${env("ARM_CLIENT_CERT_PATH")}"
}
variable "client_id" {
type = string
default = "${env("ARM_CLIENT_ID")}"
}
variable "client_secret" {
type = string
default = "${env("ARM_CLIENT_SECRET")}"
sensitive = true
}
variable "dockerhub_login" {
type = string
default = "${env("DOCKERHUB_LOGIN")}"
}
variable "dockerhub_password" {
type = string
default = "${env("DOCKERHUB_PASSWORD")}"
}
variable "helper_script_folder" {
type = string
default = "/imagegeneration/helpers"
}
variable "image_folder" {
type = string
default = "/imagegeneration"
}
variable "image_os" {
type = string
default = "ubuntu24"
}
variable "image_version" {
type = string
default = "dev"
}
variable "imagedata_file" {
type = string
default = "/imagegeneration/imagedata.json"
}
variable "installer_script_folder" {
type = string
default = "/imagegeneration/installers"
}
variable "install_password" {
type = string
default = ""
sensitive = true
}
variable "location" {
type = string
default = "${env("ARM_RESOURCE_LOCATION")}"
}
variable "managed_image_name" {
type = string
default = ""
}
variable "managed_image_resource_group_name" {
type = string
default = "${env("ARM_RESOURCE_GROUP")}"
}
variable "private_virtual_network_with_public_ip" {
type = bool
default = false
}
variable "subscription_id" {
type = string
default = "${env("ARM_SUBSCRIPTION_ID")}"
}
variable "temp_resource_group_name" {
type = string
default = "${env("TEMP_RESOURCE_GROUP_NAME")}"
}
variable "tenant_id" {
type = string
default = "${env("ARM_TENANT_ID")}"
}
variable "virtual_network_name" {
type = string
default = "${env("VNET_NAME")}"
}
variable "virtual_network_resource_group_name" {
type = string
default = "${env("VNET_RESOURCE_GROUP")}"
}
variable "virtual_network_subnet_name" {
type = string
default = "${env("VNET_SUBNET")}"
}
variable "vm_size" {
type = string
default = "Standard_D4s_v4"
}
source "azure-arm" "build_image" {
allowed_inbound_ip_addresses = "${var.allowed_inbound_ip_addresses}"
build_resource_group_name = "${var.build_resource_group_name}"
client_cert_path = "${var.client_cert_path}"
client_id = "${var.client_id}"
client_secret = "${var.client_secret}"
image_offer = "ubuntu-24_04-lts"
image_publisher = "canonical"
image_sku = "server-gen1"
location = "${var.location}"
managed_image_name = "${local.managed_image_name}"
managed_image_resource_group_name = "${var.managed_image_resource_group_name}"
os_disk_size_gb = "75"
os_type = "Linux"
private_virtual_network_with_public_ip = "${var.private_virtual_network_with_public_ip}"
subscription_id = "${var.subscription_id}"
temp_resource_group_name = "${var.temp_resource_group_name}"
tenant_id = "${var.tenant_id}"
virtual_network_name = "${var.virtual_network_name}"
virtual_network_resource_group_name = "${var.virtual_network_resource_group_name}"
virtual_network_subnet_name = "${var.virtual_network_subnet_name}"
vm_size = "${var.vm_size}"
dynamic "azure_tag" {
for_each = var.azure_tags
content {
name = azure_tag.key
value = azure_tag.value
}
}
}
build {
sources = ["source.azure-arm.build_image"]
provisioner "shell" {
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
inline = ["mkdir ${var.image_folder}", "chmod 777 ${var.image_folder}"]
}
provisioner "shell" {
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
script = "${path.root}/../scripts/build/configure-apt-mock.sh"
}
provisioner "shell" {
environment_vars = ["DEBIAN_FRONTEND=noninteractive"]
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
scripts = [
"${path.root}/../scripts/build/install-ms-repos.sh",
"${path.root}/../scripts/build/configure-apt-sources.sh",
"${path.root}/../scripts/build/configure-apt.sh"
]
}
provisioner "shell" {
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
script = "${path.root}/../scripts/build/configure-limits.sh"
}
provisioner "file" {
destination = "${var.helper_script_folder}"
source = "${path.root}/../scripts/helpers"
}
provisioner "file" {
destination = "${var.installer_script_folder}"
source = "${path.root}/../scripts/build"
}
provisioner "file" {
destination = "${var.image_folder}"
sources = [
"${path.root}/../assets/post-gen",
"${path.root}/../scripts/tests",
"${path.root}/../scripts/docs-gen"
]
}
provisioner "file" {
destination = "${var.image_folder}/docs-gen/"
source = "${path.root}/../../../helpers/software-report-base"
}
provisioner "file" {
destination = "${var.installer_script_folder}/toolset.json"
source = "${path.root}/../toolsets/toolset-2404.json"
}
provisioner "shell" {
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
inline = [
"mv ${var.image_folder}/docs-gen ${var.image_folder}/SoftwareReport",
"mv ${var.image_folder}/post-gen ${var.image_folder}/post-generation"
]
}
provisioner "shell" {
environment_vars = ["IMAGE_VERSION=${var.image_version}", "IMAGEDATA_FILE=${var.imagedata_file}"]
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
scripts = ["${path.root}/../scripts/build/configure-image-data.sh"]
}
provisioner "shell" {
environment_vars = ["IMAGE_VERSION=${var.image_version}", "IMAGE_OS=${var.image_os}", "HELPER_SCRIPTS=${var.helper_script_folder}"]
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
scripts = ["${path.root}/../scripts/build/configure-environment.sh"]
}
provisioner "shell" {
environment_vars = ["DEBIAN_FRONTEND=noninteractive", "HELPER_SCRIPTS=${var.helper_script_folder}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}"]
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
scripts = ["${path.root}/../scripts/build/install-apt-vital.sh"]
}
provisioner "shell" {
environment_vars = ["HELPER_SCRIPTS=${var.helper_script_folder}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}"]
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
scripts = ["${path.root}/../scripts/build/install-powershell.sh"]
}
provisioner "shell" {
environment_vars = ["HELPER_SCRIPTS=${var.helper_script_folder}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}"]
execute_command = "sudo sh -c '{{ .Vars }} pwsh -f {{ .Path }}'"
scripts = ["${path.root}/../scripts/build/Install-PowerShellModules.ps1", "${path.root}/../scripts/build/Install-PowerShellAzModules.ps1"]
}
provisioner "shell" {
environment_vars = ["HELPER_SCRIPTS=${var.helper_script_folder}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}", "DEBIAN_FRONTEND=noninteractive"]
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
scripts = [
"${path.root}/../scripts/build/install-actions-cache.sh",
"${path.root}/../scripts/build/install-runner-package.sh",
"${path.root}/../scripts/build/install-apt-common.sh",
"${path.root}/../scripts/build/install-azcopy.sh",
"${path.root}/../scripts/build/install-azure-cli.sh",
"${path.root}/../scripts/build/install-azure-devops-cli.sh",
"${path.root}/../scripts/build/install-bicep.sh",
"${path.root}/../scripts/build/install-apache.sh",
"${path.root}/../scripts/build/install-aws-tools.sh",
"${path.root}/../scripts/build/install-clang.sh",
"${path.root}/../scripts/build/install-cmake.sh",
"${path.root}/../scripts/build/install-codeql-bundle.sh",
"${path.root}/../scripts/build/install-dotnetcore-sdk.sh",
"${path.root}/../scripts/build/install-gcc-compilers.sh",
"${path.root}/../scripts/build/install-gfortran.sh",
"${path.root}/../scripts/build/install-git.sh",
"${path.root}/../scripts/build/install-git-lfs.sh",
"${path.root}/../scripts/build/install-github-cli.sh",
"${path.root}/../scripts/build/install-google-chrome.sh",
"${path.root}/../scripts/build/install-haskell.sh",
"${path.root}/../scripts/build/install-java-tools.sh",
"${path.root}/../scripts/build/install-kubernetes-tools.sh",
"${path.root}/../scripts/build/install-miniconda.sh",
"${path.root}/../scripts/build/install-mysql.sh",
"${path.root}/../scripts/build/install-nginx.sh",
"${path.root}/../scripts/build/install-nodejs.sh",
"${path.root}/../scripts/build/install-php.sh",
"${path.root}/../scripts/build/install-postgresql.sh",
"${path.root}/../scripts/build/install-pulumi.sh",
"${path.root}/../scripts/build/install-ruby.sh",
"${path.root}/../scripts/build/install-rust.sh",
"${path.root}/../scripts/build/install-julia.sh",
"${path.root}/../scripts/build/install-selenium.sh",
"${path.root}/../scripts/build/install-vcpkg.sh",
"${path.root}/../scripts/build/configure-dpkg.sh",
"${path.root}/../scripts/build/install-yq.sh",
"${path.root}/../scripts/build/install-android-sdk.sh",
"${path.root}/../scripts/build/install-pypy.sh",
"${path.root}/../scripts/build/install-python.sh",
"${path.root}/../scripts/build/install-zstd.sh"
]
}
provisioner "shell" {
environment_vars = ["HELPER_SCRIPTS=${var.helper_script_folder}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}", "DOCKERHUB_PULL_IMAGES=NO"]
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
scripts = ["${path.root}/../scripts/build/install-docker.sh"]
}
provisioner "shell" {
environment_vars = ["HELPER_SCRIPTS=${var.helper_script_folder}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}"]
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
scripts = ["${path.root}/../scripts/build/install-pipx-packages.sh"]
}
provisioner "shell" {
environment_vars = ["HELPER_SCRIPTS=${var.helper_script_folder}", "DEBIAN_FRONTEND=noninteractive", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}"]
execute_command = "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
scripts = ["${path.root}/../scripts/build/install-homebrew.sh"]
}
provisioner "shell" {
environment_vars = ["HELPER_SCRIPTS=${var.helper_script_folder}"]
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
scripts = ["${path.root}/../scripts/build/configure-snap.sh"]
}
provisioner "shell" {
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
expect_disconnect = true
inline = ["echo 'Reboot VM'", "sudo reboot"]
}
provisioner "shell" {
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
pause_before = "1m0s"
scripts = ["${path.root}/../scripts/build/cleanup.sh"]
start_retry_timeout = "10m"
}
provisioner "shell" {
environment_vars = ["IMAGE_VERSION=${var.image_version}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}"]
inline = ["pwsh -File ${var.image_folder}/SoftwareReport/Generate-SoftwareReport.ps1 -OutputDirectory ${var.image_folder}", "pwsh -File ${var.image_folder}/tests/RunAll-Tests.ps1 -OutputDirectory ${var.image_folder}"]
}
provisioner "file" {
destination = "${path.root}/../Ubuntu2404-Readme.md"
direction = "download"
source = "${var.image_folder}/software-report.md"
}
provisioner "file" {
destination = "${path.root}/../software-report.json"
direction = "download"
source = "${var.image_folder}/software-report.json"
}
provisioner "shell" {
environment_vars = ["HELPER_SCRIPT_FOLDER=${var.helper_script_folder}", "INSTALLER_SCRIPT_FOLDER=${var.installer_script_folder}", "IMAGE_FOLDER=${var.image_folder}"]
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
scripts = ["${path.root}/../scripts/build/configure-system.sh"]
}
provisioner "shell" {
execute_command = "sudo sh -c '{{ .Vars }} {{ .Path }}'"
inline = ["sleep 30", "/usr/sbin/waagent -force -deprovision+user && export HISTSIZE=0 && sync"]
}
}
+15 -7
View File
@@ -45,17 +45,20 @@
"arch": "x64",
"platform" : "linux",
"versions": [
"1.19.*",
"1.20.*",
"1.21.*",
"1.22.*"
"1.21.*"
],
"default": "1.21.*"
"default": "1.20.*"
},
{
"name": "Ruby",
"platform_version": "20.04",
"arch": "x64",
"versions": [
"2.5.*",
"2.6.*",
"2.7.*",
"3.0.*",
"3.1.*"
]
@@ -108,9 +111,14 @@
"name": "az",
"url" : "https://raw.githubusercontent.com/Azure/az-ps-module-versions/main/versions-manifest.json",
"versions": [
"11.3.1"
"9.3.0"
],
"zip_versions": [
"3.1.0",
"4.4.0",
"5.9.0",
"6.6.0",
"7.5.0"
]
}
],
@@ -236,11 +244,11 @@
},
{
"package": "docker-ce-cli",
"version": "24.0.9"
"version": "24.0.7"
},
{
"package": "docker-ce",
"version": "24.0.9"
"version": "24.0.7"
}
],
"plugins": [
@@ -248,7 +256,7 @@
"plugin": "buildx",
"version": "latest",
"asset": "linux-amd64"
},
},
{
"plugin": "compose",
"version": "2.23.3",
+10 -8
View File
@@ -43,11 +43,11 @@
"arch": "x64",
"platform" : "linux",
"versions": [
"1.19.*",
"1.20.*",
"1.21.*",
"1.22.*"
"1.21.*"
],
"default": "1.21.*"
"default": "1.20.*"
},
{
"name": "Ruby",
@@ -105,7 +105,7 @@
"name": "az",
"url" : "https://raw.githubusercontent.com/Azure/az-ps-module-versions/main/versions-manifest.json",
"versions": [
"11.3.1"
"9.3.0"
],
"zip_versions": [
]
@@ -235,11 +235,11 @@
},
{
"package": "docker-ce-cli",
"version": "24.0.9"
"version": "24.0.7"
},
{
"package": "docker-ce",
"version": "24.0.9"
"version": "24.0.7"
}
],
"plugins": [
@@ -292,14 +292,16 @@
"versions": [
"g++-9",
"g++-10",
"g++-12"
"g++-12",
"g++-13"
]
},
"gfortran": {
"versions": [
"gfortran-9",
"gfortran-10",
"gfortran-12"
"gfortran-12",
"gfortran-13"
]
},
"php": {

Some files were not shown because too many files have changed in this diff Show More