mirror of
https://github.com/actions/runner-images-sangeeth.git
synced 2025-12-20 06:29:50 +00:00
Merge branch 'main' of https://github.com/actions/virtual-environments into v-malob/xcode
This commit is contained in:
34
.github/ISSUE_TEMPLATE/announcement.md
vendored
Normal file
34
.github/ISSUE_TEMPLATE/announcement.md
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
---
|
||||
name: Announcement
|
||||
about: Submit an announcement
|
||||
title: ''
|
||||
labels: Announcement
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Breaking changes**
|
||||
<!-- Short description of the upcoming change -->
|
||||
|
||||
**Target date**
|
||||
<!-- Date of changes propagation start -->
|
||||
|
||||
**The motivation for the changes**
|
||||
<!-- Description of main reasons for this change -->
|
||||
|
||||
**Possible impact**
|
||||
<!-- Description of who might be impacted by this change -->
|
||||
|
||||
**Virtual environments affected**
|
||||
- [ ] Ubuntu 16.04
|
||||
- [ ] Ubuntu 18.04
|
||||
- [ ] Ubuntu 20.04
|
||||
- [ ] macOS 10.13
|
||||
- [ ] macOS 10.14
|
||||
- [ ] macOS 10.15
|
||||
- [ ] macOS 11.0
|
||||
- [ ] Windows Server 2016 R2
|
||||
- [ ] Windows Server 2019
|
||||
|
||||
**Mitigation ways**
|
||||
<!-- Steps or options for impact mitigation -->
|
||||
7
.github/ISSUE_TEMPLATE/bug-report.md
vendored
7
.github/ISSUE_TEMPLATE/bug-report.md
vendored
@@ -17,10 +17,11 @@ A clear and concise description of what the bug is, and why you consider it to b
|
||||
<!-- Choose "Question", "Bug", or "Feature" -->
|
||||
|
||||
**Virtual environments affected**
|
||||
- [ ] Ubuntu 16.04
|
||||
- [ ] Ubuntu 18.04
|
||||
- [ ] Ubuntu 20.04
|
||||
- [ ] macOS 10.15
|
||||
- [ ] Ubuntu 16.04 LTS
|
||||
- [ ] Ubuntu 18.04 LTS
|
||||
- [ ] Ubuntu 20.04 LTS
|
||||
- [ ] macOS 11.0
|
||||
- [ ] Windows Server 2016 R2
|
||||
- [ ] Windows Server 2019
|
||||
|
||||
|
||||
7
.github/ISSUE_TEMPLATE/tool-request.md
vendored
7
.github/ISSUE_TEMPLATE/tool-request.md
vendored
@@ -25,10 +25,11 @@ assignees: ''
|
||||
<!-- Choose "Question", "Bug", or "Feature" -->
|
||||
|
||||
**Virtual environments affected**
|
||||
- [ ] Ubuntu 16.04
|
||||
- [ ] Ubuntu 18.04
|
||||
- [ ] Ubuntu 20.04
|
||||
- [ ] macOS 10.15
|
||||
- [ ] Ubuntu 16.04 LTS
|
||||
- [ ] Ubuntu 18.04 LTS
|
||||
- [ ] Ubuntu 20.04 LTS
|
||||
- [ ] macOS 11.0
|
||||
- [ ] Windows Server 2016 R2
|
||||
- [ ] Windows Server 2019
|
||||
|
||||
|
||||
10
.github/workflows/linter.yml
vendored
10
.github/workflows/linter.yml
vendored
@@ -1,11 +1,11 @@
|
||||
# CI Validation
|
||||
|
||||
name: CI
|
||||
name: Linter
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches: [$default-branch]
|
||||
|
||||
branches: [ main ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Lint JSON & MD files
|
||||
@@ -23,3 +23,7 @@ jobs:
|
||||
VALIDATE_JSON: true
|
||||
VALIDATE_MD: true
|
||||
DEFAULT_BRANCH: ${{ github.base_ref }}
|
||||
|
||||
- name: Checking shebang lines in MacOS and Ubuntu releases.
|
||||
run: ./images.CI/shebang-linter.ps1
|
||||
shell: pwsh
|
||||
|
||||
@@ -9,13 +9,18 @@ For general questions about using the virtual environments or writing your Actio
|
||||
| Ubuntu 20.04 | `ubuntu-20.04` | [ubuntu-20.04] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=ubuntu20&redirect=1)
|
||||
| Ubuntu 18.04 | `ubuntu-latest` or `ubuntu-18.04` | [ubuntu-18.04] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=ubuntu18&redirect=1)
|
||||
| Ubuntu 16.04 | `ubuntu-16.04` | [ubuntu-16.04] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=ubuntu16&redirect=1) |
|
||||
| macOS 10.15 | `macos-latest` or `macos-10.15` | [macOS-10.15] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=MacOS&redirect=1)
|
||||
| macOS 11.0 | `macos-11.0` | [macOS-11.0] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=macos-11.0&redirect=1)
|
||||
| macOS 10.15 | `macos-latest` or `macos-10.15` | [macOS-10.15] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=macos-10.15&redirect=1)
|
||||
| Windows Server 2019 | `windows-latest` or `windows-2019` | [windows-2019] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=windows-2019&redirect=1)
|
||||
| Windows Server 2016 | `windows-2016` | [windows-2016] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=windows-2016&redirect=1)
|
||||
```
|
||||
The Ubuntu 20.04 virtual environment is currently provided as a preview only.
|
||||
The "ubuntu-latest" YAML workflow label still uses the Ubuntu 18.04 virtual environment.
|
||||
```
|
||||
```
|
||||
The MacOS 11.0 virtual environment is currently provided as a preview only.
|
||||
The "macos-latest" YAML workflow label still uses the MacOS 10.15 virtual environment.
|
||||
```
|
||||
|
||||
***Looking for other Linux distributions?*** We do not plan to offer other Linux distributions. We recommend using Docker if you'd like to build using other distributions with the hosted virtual environments. Alternatively, you can leverage [self-hosted runners] and fully customize your environment to your needs.
|
||||
|
||||
@@ -56,4 +61,5 @@ Low Impact changes will be pinned in this repository and marked with the [Announ
|
||||
[Windows-2019]: https://github.com/actions/virtual-environments/blob/main/images/win/Windows2019-Readme.md
|
||||
[windows-2016]: https://github.com/actions/virtual-environments/blob/main/images/win/Windows2016-Readme.md
|
||||
[macOS-10.15]: https://github.com/actions/virtual-environments/blob/main/images/macos/macos-10.15-Readme.md
|
||||
[macOS-11.0]: https://github.com/actions/virtual-environments/blob/main/images/macos/macos-11.0-Readme.md
|
||||
[self-hosted runners]: https://help.github.com/en/actions/hosting-your-own-runners
|
||||
|
||||
@@ -52,7 +52,8 @@ jobs:
|
||||
inputs:
|
||||
targetType: 'filePath'
|
||||
filePath: ./images.CI/macos/select-datastore.ps1
|
||||
arguments: -VIServer "$(vcenter-server-v2)" `
|
||||
arguments: -VMName "$(VirtualMachineName)" `
|
||||
-VIServer "$(vcenter-server-v2)" `
|
||||
-VIUserName "$(vcenter-username-v2)" `
|
||||
-VIPassword "$(vcenter-password-v2)"
|
||||
|
||||
@@ -121,8 +122,8 @@ jobs:
|
||||
condition: always()
|
||||
|
||||
- task: PowerShell@2
|
||||
displayName: 'Move vm to cold storage'
|
||||
condition: succeededOrFailed()
|
||||
displayName: 'Move vm to cold storage and clear datastore tag'
|
||||
condition: always()
|
||||
inputs:
|
||||
targetType: 'filePath'
|
||||
filePath: ./images.CI/macos/move-vm.ps1
|
||||
|
||||
@@ -48,6 +48,13 @@ Import-Module $PSScriptRoot\helpers.psm1 -DisableNameChecking
|
||||
# Connection to a vCenter Server system
|
||||
Connect-VCServer
|
||||
|
||||
# Clear previously assigned tag with VM Name
|
||||
try {
|
||||
Remove-Tag $VMName -Confirm:$false
|
||||
} catch {
|
||||
Write-Host "Tag with $VMName doesn't exist"
|
||||
}
|
||||
|
||||
$vm = Get-VM $VMName
|
||||
|
||||
if ($env:AGENT_JOBSTATUS -eq 'Failed') {
|
||||
|
||||
@@ -20,6 +20,10 @@ vCenter password (Example "12345678")
|
||||
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[Parameter(Mandatory)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$VMName,
|
||||
|
||||
[Parameter(Mandatory)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$VIServer,
|
||||
@@ -30,35 +34,72 @@ param(
|
||||
|
||||
[Parameter(Mandatory)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$VIPassword
|
||||
[string]$VIPassword,
|
||||
|
||||
[string]$TagCategory = "Busy"
|
||||
)
|
||||
|
||||
# Import helpers module
|
||||
Import-Module $PSScriptRoot\helpers.psm1 -DisableNameChecking
|
||||
|
||||
function Select-DataStore {
|
||||
param (
|
||||
[string]$VMName,
|
||||
[string]$TagCategory,
|
||||
[string]$TemplateDatastore = "ds-local-Datastore-*",
|
||||
[int]$ThresholdInGb = 400,
|
||||
[int]$VMCount = 2,
|
||||
[int]$Retries = 5
|
||||
)
|
||||
|
||||
# 1. Name starts with ds-local-Datastore
|
||||
# 2. FreespaceGB > 400 Gb
|
||||
# 3. VM count on a datastore < 2
|
||||
|
||||
Write-Host "Start Datastore selection process..."
|
||||
$allDatastores = Get-Datastore -Name $templateDatastore | Where-Object { $_.State -eq "Available" }
|
||||
$buildDatastore = $allDatastores | Where-Object { $_.FreeSpaceGB -ge $thresholdInGb } | Where-Object {
|
||||
$vmOnDatastore = @((Get-ChildItem -Path $_.DatastoreBrowserPath).Name -notmatch "^\.").Count
|
||||
$vmOnDatastore -lt $vmCount
|
||||
} | Select-Object -ExpandProperty Name -First 1
|
||||
|
||||
$tag = Get-Tag -Category $TagCategory -Name $VMName -ErrorAction Ignore
|
||||
if (-not $tag)
|
||||
{
|
||||
$tag = New-Tag -Name $VMName -Category $TagCategory
|
||||
}
|
||||
|
||||
New-TagAssignment -Tag $tag -Entity $buildDatastore | Out-Null
|
||||
|
||||
# Wait for 60 seconds to check if any other tags are assigned to the same datastore
|
||||
Start-Sleep -Seconds 60
|
||||
# Take only first 2 tags, all the others will go to the next round
|
||||
$tagAssignments = (Get-TagAssignment -Entity $buildDatastore).Tag.Name | Select-Object -First 2
|
||||
$isAllow = $tagAssignments -contains $VMName
|
||||
|
||||
if ($isAllow)
|
||||
{
|
||||
Write-Host "Datastore selected successfully"
|
||||
Write-Host "##vso[task.setvariable variable=buildDatastore;issecret=true]$buildDatastore"
|
||||
return
|
||||
}
|
||||
|
||||
# Remove the tag if datastore wasn't selected
|
||||
Remove-Tag $tag -Confirm:$false
|
||||
|
||||
$retries--
|
||||
if ($retries -le 0)
|
||||
{
|
||||
Write-Host "##vso[task.LogIssue type=error;]No datastores found for the condition"
|
||||
exit 1
|
||||
}
|
||||
|
||||
Write-Host "Datastore select failed, $retries left"
|
||||
Select-DataStore -VMName $VMName -TagCategory $TagCategory -Retries $retries
|
||||
}
|
||||
|
||||
# Connection to a vCenter Server system
|
||||
Connect-VCServer
|
||||
|
||||
# Get a target datastore for current deployment
|
||||
# 1. Name starts with ds-local-Datastore
|
||||
# 2. FreespaceGB > 400 Gb
|
||||
# 3. VM count on a datastore < 2
|
||||
$templateDatastore = "ds-local-Datastore-*"
|
||||
$thresholdInGb = 400
|
||||
$vmCount = 2
|
||||
$allDatastores = Get-Datastore -Name $templateDatastore | Where-Object { $_.State -eq "Available" }
|
||||
$buildDatastore = $allDatastores | Where-Object { $_.FreeSpaceGB -ge $thresholdInGb } | Where-Object {
|
||||
$vmOnDatastore = @((Get-ChildItem -Path $_.DatastoreBrowserPath).Name -notmatch "^\.").Count
|
||||
$vmOnDatastore -lt $vmCount
|
||||
} | Select-Object -ExpandProperty Name -First 1
|
||||
|
||||
if ($buildDatastore)
|
||||
{
|
||||
Write-Host "Datastore selected successfully"
|
||||
Write-Host "##vso[task.setvariable variable=buildDatastore;issecret=true]$buildDatastore"
|
||||
}
|
||||
else
|
||||
{
|
||||
Write-Host "##vso[task.LogIssue type=error;]No datastores found for the condition"
|
||||
exit 1
|
||||
}
|
||||
Select-DataStore -VMName $VMName -TagCategory $TagCategory
|
||||
|
||||
43
images.CI/shebang-linter.ps1
Normal file
43
images.CI/shebang-linter.ps1
Normal file
@@ -0,0 +1,43 @@
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
function Validate-Scripts {
|
||||
Param (
|
||||
[Parameter(Mandatory=$true)]
|
||||
[string[]]$Path,
|
||||
[Parameter(Mandatory=$true)]
|
||||
[string]$ExpectedShebang
|
||||
)
|
||||
$ScriptWithoutShebangLine = @()
|
||||
Get-ChildItem $path -Recurse -File -Filter "*.sh" | ForEach-Object {
|
||||
$relativePath = Resolve-Path $_.FullName -Relative
|
||||
$shebangLine = Get-Content -Path $_.FullName | Select-Object -First 1
|
||||
if ($shebangLine -eq $ExpectedShebang) {
|
||||
Write-Host "[+] '$relativePath'"
|
||||
}
|
||||
else {
|
||||
Write-Host "[-] '$relativePath'"
|
||||
$ScriptWithoutShebangLine += $relativePath
|
||||
}
|
||||
}
|
||||
return $ScriptWithoutShebangLine
|
||||
}
|
||||
|
||||
$PathUbuntu = "./images/linux/scripts"
|
||||
$PathMacOS = "./images/macos/provision"
|
||||
$PatternUbuntu = "#!/bin/bash -e"
|
||||
$PatternMacOS = "#!/bin/bash -e -o pipefail"
|
||||
$ScriptsWithBrokenShebang = @()
|
||||
$ScriptsWithBrokenShebang += Validate-Scripts -Path $PathUbuntu -ExpectedShebang $PatternUbuntu
|
||||
$ScriptsWithBrokenShebang += Validate-Scripts -Path $PathMacOS -ExpectedShebang $PatternMacOS
|
||||
if ($ScriptsWithBrokenShebang.Length -gt 0) {
|
||||
Write-Host "`n`n`n##[error] The following scripts have incorrect shebang:"
|
||||
$ScriptsWithBrokenShebang | ForEach-Object {
|
||||
Write-Host "##[error] '$_'"
|
||||
}
|
||||
Write-Host "`n`n##[error] Expected shebang for scripts in 'images/linux' folder is '$PatternUbuntu'"
|
||||
Write-Host "##[error] Expected shebang for scripts in 'images/macos' folder is '$PatternMacOS'"
|
||||
exit 1
|
||||
else {
|
||||
Write-Host "All scripts have correct shebang."
|
||||
}
|
||||
}
|
||||
@@ -1,10 +1,11 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [.NET 5.0 will become a default .NET version on November, 10](https://github.com/actions/virtual-environments/issues/1891) |
|
||||
| [[Ubuntu] [Windows] Boost 1.69.0 will be deprecated on November, 10](https://github.com/actions/virtual-environments/issues/1847) |
|
||||
| [Ubuntu-latest workflows will use Ubuntu-20.04](https://github.com/actions/virtual-environments/issues/1816) |
|
||||
| [Obsolete Android build-tools packages will be removed from Ubuntu images on October, 20](https://github.com/actions/virtual-environments/issues/1743) |
|
||||
***
|
||||
# Ubuntu 16.04.7 LTS
|
||||
- Image Version: 20201015.1
|
||||
- Image Version: 20201026.1
|
||||
|
||||
## Installed Software
|
||||
### Language and Runtime
|
||||
@@ -36,27 +37,28 @@
|
||||
- Ant 1.9.6
|
||||
- Gradle 6.7
|
||||
- Maven 3.6.3
|
||||
- Sbt 1.4.0
|
||||
- Sbt 1.4.1
|
||||
|
||||
### Tools
|
||||
- 7-Zip 9.20
|
||||
- Ansible 2.9.14
|
||||
- AzCopy10 10.6.0 (available by `azcopy10` alias)
|
||||
- apt-fast 1.9.10
|
||||
- AzCopy10 10.6.1 (available by `azcopy10` alias)
|
||||
- AzCopy7 7.3.0 (available by `azcopy` alias)
|
||||
- Bazel 3.6.0
|
||||
- Bazelisk 1.7.2
|
||||
- Bazel 3.7.0
|
||||
- Bazelisk 1.7.3
|
||||
- CMake 3.17.0
|
||||
- CodeQL Action Bundle 2.3.0
|
||||
- curl 7.47.0
|
||||
- Docker Compose 1.27.4
|
||||
- Docker-Buildx 0.4.2
|
||||
- Docker-Moby 19.03.13
|
||||
- Git 2.28.0
|
||||
- Git 2.29.0
|
||||
- Git LFS 2.12.0
|
||||
- Git-ftp 1.0.2
|
||||
- Google Cloud SDK 314.0.0
|
||||
- Google Cloud SDK 315.0.0
|
||||
- Haveged 1.9.1
|
||||
- Heroku 7.46.0
|
||||
- Heroku 7.46.2
|
||||
- HHVM (HipHop VM) 4.56.1
|
||||
- jq 1.5
|
||||
- Kind 0.9.0
|
||||
@@ -65,17 +67,17 @@
|
||||
- Leiningen 2.9.4
|
||||
- m4 1.4.17
|
||||
- Mercurial 4.4.1
|
||||
- Minikube 1.14.0
|
||||
- Minikube 1.14.1
|
||||
- Newman 5.2.0
|
||||
- nvm 0.36.0
|
||||
- Packer 1.6.4
|
||||
- PhantomJS 2.1.1
|
||||
- Pulumi 2.12.0
|
||||
- Pulumi 2.12.1
|
||||
- R 4.0.3
|
||||
- Sphinx Open Source Search Server 2.2.9
|
||||
- SVN 1.9.3
|
||||
- Swig 3.0.8
|
||||
- Terraform 0.13.4
|
||||
- Terraform 0.13.5
|
||||
- unzip 6.00
|
||||
- wget 1.17.1
|
||||
- yamllint 1.2.1
|
||||
@@ -84,14 +86,14 @@
|
||||
|
||||
### CLI Tools
|
||||
- Alibaba Cloud CLI 3.0.60
|
||||
- AWS CLI 1.18.158
|
||||
- AWS CLI 1.18.164
|
||||
- AWS CLI Session manager plugin 1.2.7.0
|
||||
- AWS SAM CLI 1.6.2
|
||||
- Azure CLI (azure-cli) 2.13.0
|
||||
- Azure CLI (azure-devops) 0.18.0
|
||||
- GitHub CLI 1.1.0
|
||||
- Hub CLI 2.14.2
|
||||
- Netlify CLI 2.65.6
|
||||
- Netlify CLI 2.65.7
|
||||
- oc CLI 4.5.0
|
||||
- ORAS CLI 0.8.1
|
||||
- Vercel CLI 20.1.2
|
||||
@@ -99,16 +101,16 @@
|
||||
### Java
|
||||
| Version | Vendor | Environment Variable |
|
||||
| ------------------- | ------------ | -------------------- |
|
||||
| 1.7.0_272 | Zulu | JAVA_HOME_7_X64 |
|
||||
| 1.8.0_265 (default) | AdoptOpenJDK | JAVA_HOME_8_X64 |
|
||||
| 11.0.8 | AdoptOpenJDK | JAVA_HOME_11_X64 |
|
||||
| 1.7.0_282 | Zulu | JAVA_HOME_7_X64 |
|
||||
| 1.8.0_272 (default) | AdoptOpenJDK | JAVA_HOME_8_X64 |
|
||||
| 11.0.9 | AdoptOpenJDK | JAVA_HOME_11_X64 |
|
||||
| 12.0.2 | AdoptOpenJDK | JAVA_HOME_12_X64 |
|
||||
|
||||
### PHP
|
||||
| Tool | Version |
|
||||
| -------- | ----------------------------------------- |
|
||||
| PHP | 5.6.40 7.0.33 7.1.33 7.2.34 7.3.23 7.4.11 |
|
||||
| Composer | 1.10.15 |
|
||||
| Composer | 2.0.2 |
|
||||
| PHPUnit | 7.5.20 |
|
||||
|
||||
### Haskell
|
||||
@@ -131,7 +133,7 @@
|
||||
- Rustfmt 1.4.20
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 86.0.4240.75
|
||||
- Google Chrome 86.0.4240.111
|
||||
- ChromeDriver 86.0.4240.22
|
||||
- Mozilla Firefox 81.0.2
|
||||
- Geckodriver 0.27.0
|
||||
@@ -160,7 +162,7 @@
|
||||
- 2.4.10
|
||||
- 2.5.8
|
||||
- 2.6.6
|
||||
- 2.7.1
|
||||
- 2.7.2
|
||||
|
||||
#### Python
|
||||
- 2.7.18
|
||||
@@ -178,7 +180,7 @@
|
||||
- 8.17.0
|
||||
- 10.22.1
|
||||
- 12.19.0
|
||||
- 14.13.1
|
||||
- 14.14.0
|
||||
|
||||
#### Go
|
||||
- 1.11.13
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [.NET 5.0 will become a default .NET version on November, 10](https://github.com/actions/virtual-environments/issues/1891) |
|
||||
| [[Ubuntu] [Windows] Boost 1.69.0 will be deprecated on November, 10](https://github.com/actions/virtual-environments/issues/1847) |
|
||||
| [Ubuntu-latest workflows will use Ubuntu-20.04](https://github.com/actions/virtual-environments/issues/1816) |
|
||||
| [Obsolete Android build-tools packages will be removed from Ubuntu images on October, 20](https://github.com/actions/virtual-environments/issues/1743) |
|
||||
***
|
||||
# Ubuntu 18.04.5 LTS
|
||||
- Image Version: 20201015.1
|
||||
- Image Version: 20201026.1
|
||||
|
||||
## Installed Software
|
||||
### Language and Runtime
|
||||
@@ -29,7 +30,7 @@
|
||||
- Npm 6.14.8
|
||||
- Pip 9.0.1
|
||||
- Pip3 9.0.1
|
||||
- Pipx 0.15.5.1
|
||||
- Pipx 0.15.6.0
|
||||
- Vcpkg 2020.06.15
|
||||
- Yarn 1.22.5
|
||||
|
||||
@@ -37,15 +38,16 @@
|
||||
- Ant 1.10.5
|
||||
- Gradle 6.7
|
||||
- Maven 3.6.3
|
||||
- Sbt 1.4.0
|
||||
- Sbt 1.4.1
|
||||
|
||||
### Tools
|
||||
- 7-Zip 16.02
|
||||
- Ansible 2.9.14
|
||||
- AzCopy10 10.6.0 (available by `azcopy10` alias)
|
||||
- apt-fast 1.9.10
|
||||
- AzCopy10 10.6.1 (available by `azcopy10` alias)
|
||||
- AzCopy7 7.3.0 (available by `azcopy` alias)
|
||||
- Bazel 3.6.0
|
||||
- Bazelisk 1.7.2
|
||||
- Bazel 3.7.0
|
||||
- Bazelisk 1.7.3
|
||||
- Buildah 1.16.4
|
||||
- CMake 3.17.0
|
||||
- CodeQL Action Bundle 2.3.0
|
||||
@@ -53,13 +55,13 @@
|
||||
- Docker Compose 1.27.4
|
||||
- Docker-Buildx 0.4.2
|
||||
- Docker-Moby 19.03.13
|
||||
- Git 2.28.0
|
||||
- Git 2.29.0
|
||||
- Git LFS 2.12.0
|
||||
- Git-ftp 1.3.1
|
||||
- Google Cloud SDK 314.0.0
|
||||
- Google Cloud SDK 315.0.0
|
||||
- Haveged 1.9.1
|
||||
- Heroku 7.46.0
|
||||
- HHVM (HipHop VM) 4.79.0
|
||||
- Heroku 7.46.2
|
||||
- HHVM (HipHop VM) 4.80.0
|
||||
- jq 1.5
|
||||
- Kind 0.9.0
|
||||
- Kubectl 1.19.3
|
||||
@@ -67,19 +69,19 @@
|
||||
- Leiningen 2.9.4
|
||||
- m4 1.4.18
|
||||
- Mercurial 4.5.3
|
||||
- Minikube 1.14.0
|
||||
- Minikube 1.14.1
|
||||
- Newman 5.2.0
|
||||
- nvm 0.36.0
|
||||
- Packer 1.6.4
|
||||
- PhantomJS 2.1.1
|
||||
- Podman 2.1.1
|
||||
- Pulumi 2.12.0
|
||||
- Pulumi 2.12.1
|
||||
- R 4.0.3
|
||||
- Skopeo 1.2.0
|
||||
- Sphinx Open Source Search Server 2.2.11
|
||||
- SVN 1.9.7
|
||||
- Swig 3.0.12
|
||||
- Terraform 0.13.4
|
||||
- Terraform 0.13.5
|
||||
- unzip 6.00
|
||||
- wget 1.19.4
|
||||
- yamllint 1.25.0
|
||||
@@ -88,14 +90,14 @@
|
||||
|
||||
### CLI Tools
|
||||
- Alibaba Cloud CLI 3.0.60
|
||||
- AWS CLI 1.18.157
|
||||
- AWS CLI Session manager plugin 1.1.61.0
|
||||
- AWS CLI 1.18.164
|
||||
- AWS CLI Session manager plugin 1.2.7.0
|
||||
- AWS SAM CLI 1.6.2
|
||||
- Azure CLI (azure-cli) 2.13.0
|
||||
- Azure CLI (azure-devops) 0.18.0
|
||||
- GitHub CLI 1.1.0
|
||||
- Hub CLI 2.14.2
|
||||
- Netlify CLI 2.65.5
|
||||
- Netlify CLI 2.65.7
|
||||
- oc CLI 4.5.0
|
||||
- ORAS CLI 0.8.1
|
||||
- Vercel CLI 20.1.2
|
||||
@@ -103,22 +105,22 @@
|
||||
### Java
|
||||
| Version | Vendor | Environment Variable |
|
||||
| ------------------- | ------------ | -------------------- |
|
||||
| 1.7.0_272 | Zulu | JAVA_HOME_7_X64 |
|
||||
| 1.8.0_265 (default) | AdoptOpenJDK | JAVA_HOME_8_X64 |
|
||||
| 11.0.8 | AdoptOpenJDK | JAVA_HOME_11_X64 |
|
||||
| 1.7.0_282 | Zulu | JAVA_HOME_7_X64 |
|
||||
| 1.8.0_272 (default) | AdoptOpenJDK | JAVA_HOME_8_X64 |
|
||||
| 11.0.9 | AdoptOpenJDK | JAVA_HOME_11_X64 |
|
||||
| 12.0.2 | AdoptOpenJDK | JAVA_HOME_12_X64 |
|
||||
|
||||
### PHP
|
||||
| Tool | Version |
|
||||
| -------- | --------------------------- |
|
||||
| PHP | 7.1.33 7.2.34 7.3.23 7.4.11 |
|
||||
| Composer | 1.10.15 |
|
||||
| Composer | 2.0.2 |
|
||||
| PHPUnit | 7.5.20 |
|
||||
|
||||
### Haskell
|
||||
- GHC 8.10.2
|
||||
- Cabal 3.4.0.0
|
||||
- Stack 2.3.3
|
||||
- Stack 2.5.1
|
||||
|
||||
### Rust Tools
|
||||
- Rust 1.47.0
|
||||
@@ -135,9 +137,9 @@
|
||||
- Rustfmt 1.4.20
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 86.0.4240.75
|
||||
- Google Chrome 86.0.4240.111
|
||||
- ChromeDriver 86.0.4240.22
|
||||
- Mozilla Firefox 81.0
|
||||
- Mozilla Firefox 82.0
|
||||
- Geckodriver 0.27.0
|
||||
|
||||
### .NET Core SDK
|
||||
@@ -164,7 +166,7 @@
|
||||
- 2.4.10
|
||||
- 2.5.8
|
||||
- 2.6.6
|
||||
- 2.7.1
|
||||
- 2.7.2
|
||||
|
||||
#### Python
|
||||
- 2.7.18
|
||||
@@ -182,7 +184,7 @@
|
||||
- 8.17.0
|
||||
- 10.22.1
|
||||
- 12.19.0
|
||||
- 14.13.1
|
||||
- 14.14.0
|
||||
|
||||
#### Go
|
||||
- 1.11.13
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [.NET 5.0 will become a default .NET version on November, 10](https://github.com/actions/virtual-environments/issues/1891) |
|
||||
| [[Ubuntu] [Windows] Boost 1.69.0 will be deprecated on November, 10](https://github.com/actions/virtual-environments/issues/1847) |
|
||||
| [Ubuntu-latest workflows will use Ubuntu-20.04](https://github.com/actions/virtual-environments/issues/1816) |
|
||||
| [Obsolete Android build-tools packages will be removed from Ubuntu images on October, 20](https://github.com/actions/virtual-environments/issues/1743) |
|
||||
***
|
||||
# Ubuntu 20.04.1 LTS
|
||||
- Image Version: 20201015.1
|
||||
- Image Version: 20201026.1
|
||||
|
||||
## Installed Software
|
||||
### Language and Runtime
|
||||
@@ -29,7 +30,7 @@
|
||||
- Npm 6.14.8
|
||||
- Pip 20.0.2
|
||||
- Pip3 20.0.2
|
||||
- Pipx 0.15.5.1
|
||||
- Pipx 0.15.6.0
|
||||
- Vcpkg 2020.06.15
|
||||
- Yarn 1.22.5
|
||||
|
||||
@@ -37,15 +38,16 @@
|
||||
- Ant 1.10.7
|
||||
- Gradle 6.7
|
||||
- Maven 3.6.3
|
||||
- Sbt 1.4.0
|
||||
- Sbt 1.4.1
|
||||
|
||||
### Tools
|
||||
- 7-Zip 16.02
|
||||
- Ansible 2.9.6
|
||||
- AzCopy10 10.6.0 (available by `azcopy10` alias)
|
||||
- apt-fast 1.9.10
|
||||
- AzCopy10 10.6.1 (available by `azcopy10` alias)
|
||||
- AzCopy7 7.3.0 (available by `azcopy` alias)
|
||||
- Bazel 3.6.0
|
||||
- Bazelisk 1.7.2
|
||||
- Bazel 3.7.0
|
||||
- Bazelisk 1.7.3
|
||||
- Buildah 1.16.4
|
||||
- CMake 3.17.0
|
||||
- CodeQL Action Bundle 2.3.0
|
||||
@@ -53,13 +55,13 @@
|
||||
- Docker Compose 1.27.4
|
||||
- Docker-Buildx 0.4.2
|
||||
- Docker-Moby 19.03.13
|
||||
- Git 2.28.0
|
||||
- Git 2.29.0
|
||||
- Git LFS 2.12.0
|
||||
- Git-ftp 1.6.0
|
||||
- Google Cloud SDK 314.0.0
|
||||
- Google Cloud SDK 315.0.0
|
||||
- Haveged 1.9.1
|
||||
- Heroku 7.46.0
|
||||
- HHVM (HipHop VM) 4.79.0
|
||||
- Heroku 7.46.2
|
||||
- HHVM (HipHop VM) 4.80.0
|
||||
- jq 1.6
|
||||
- Kind 0.9.0
|
||||
- Kubectl 1.19.3
|
||||
@@ -67,19 +69,19 @@
|
||||
- Leiningen 2.9.4
|
||||
- m4 1.4.18
|
||||
- Mercurial 5.3.1
|
||||
- Minikube 1.14.0
|
||||
- Minikube 1.14.1
|
||||
- Newman 5.2.0
|
||||
- nvm 0.36.0
|
||||
- Packer 1.6.4
|
||||
- PhantomJS 2.1.1
|
||||
- Podman 2.1.1
|
||||
- Pulumi 2.12.0
|
||||
- Pulumi 2.12.1
|
||||
- R 4.0.3
|
||||
- Skopeo 1.2.0
|
||||
- Sphinx Open Source Search Server 2.2.11
|
||||
- SVN 1.13.0
|
||||
- Swig 4.0.1
|
||||
- Terraform 0.13.4
|
||||
- Terraform 0.13.5
|
||||
- unzip 6.00
|
||||
- wget 1.20.3
|
||||
- yamllint 1.25.0
|
||||
@@ -88,14 +90,14 @@
|
||||
|
||||
### CLI Tools
|
||||
- Alibaba Cloud CLI 3.0.60
|
||||
- AWS CLI 2.0.56
|
||||
- AWS CLI Session manager plugin 1.1.61.0
|
||||
- AWS CLI 2.0.59
|
||||
- AWS CLI Session manager plugin 1.2.7.0
|
||||
- AWS SAM CLI 1.6.2
|
||||
- Azure CLI (azure-cli) 2.13.0
|
||||
- Azure CLI (azure-devops) 0.18.0
|
||||
- GitHub CLI 1.1.0
|
||||
- Hub CLI 2.14.2
|
||||
- Netlify CLI 2.65.5
|
||||
- Netlify CLI 2.65.7
|
||||
- oc CLI 4.5.0
|
||||
- ORAS CLI 0.8.1
|
||||
- Vercel CLI 20.1.2
|
||||
@@ -103,20 +105,20 @@
|
||||
### Java
|
||||
| Version | Vendor | Environment Variable |
|
||||
| ---------------- | ------------ | -------------------- |
|
||||
| 1.8.0_265 | AdoptOpenJDK | JAVA_HOME_8_X64 |
|
||||
| 11.0.8 (default) | AdoptOpenJDK | JAVA_HOME_11_X64 |
|
||||
| 1.8.0_272 | AdoptOpenJDK | JAVA_HOME_8_X64 |
|
||||
| 11.0.9 (default) | AdoptOpenJDK | JAVA_HOME_11_X64 |
|
||||
|
||||
### PHP
|
||||
| Tool | Version |
|
||||
| -------- | ------- |
|
||||
| PHP | 7.4.11 |
|
||||
| Composer | 1.10.15 |
|
||||
| Composer | 2.0.2 |
|
||||
| PHPUnit | 7.5.20 |
|
||||
|
||||
### Haskell
|
||||
- GHC 8.10.2
|
||||
- Cabal 3.4.0.0
|
||||
- Stack 2.3.3
|
||||
- Stack 2.5.1
|
||||
|
||||
### Rust Tools
|
||||
- Rust 1.47.0
|
||||
@@ -133,9 +135,9 @@
|
||||
- Rustfmt 1.4.20
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 86.0.4240.75
|
||||
- Google Chrome 86.0.4240.111
|
||||
- ChromeDriver 86.0.4240.22
|
||||
- Mozilla Firefox 81.0
|
||||
- Mozilla Firefox 82.0
|
||||
- Geckodriver 0.27.0
|
||||
|
||||
### .NET Core SDK
|
||||
@@ -161,7 +163,7 @@
|
||||
#### Ruby
|
||||
- 2.5.8
|
||||
- 2.6.6
|
||||
- 2.7.1
|
||||
- 2.7.2
|
||||
|
||||
#### Python
|
||||
- 2.7.18
|
||||
@@ -179,7 +181,7 @@
|
||||
- 8.17.0
|
||||
- 10.22.1
|
||||
- 12.19.0
|
||||
- 14.13.1
|
||||
- 14.14.0
|
||||
|
||||
#### Go
|
||||
- 1.14.10
|
||||
|
||||
@@ -2,10 +2,13 @@
|
||||
|
||||
# Fix permissions for Homebrew
|
||||
# https://github.com/actions/virtual-environments/issues/1568
|
||||
|
||||
brew_folder="/home/linuxbrew/"
|
||||
homebrew_user=$(cut -d: -f1 /etc/passwd | tail -1)
|
||||
|
||||
if [ -d "$brew_folder" ]; then
|
||||
brew_folder_owner=$(ls -ld $brew_folder | awk '{print $3}')
|
||||
if [ "$USER" != "$brew_folder_owner" ]; then
|
||||
chown "$USER":docker -R $brew_folder
|
||||
if [ "$homebrew_user" != "$brew_folder_owner" ]; then
|
||||
chown "$homebrew_user":docker -R $brew_folder
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -2,10 +2,13 @@
|
||||
|
||||
# Fix permissions for the Rust folder
|
||||
# https://github.com/actions/virtual-environments/issues/572
|
||||
|
||||
rust_folder="/usr/share/rust"
|
||||
rust_user=$(cut -d: -f1 /etc/passwd | tail -1)
|
||||
|
||||
if [ -d "$rust_folder" ]; then
|
||||
rust_folder_owner=$(ls -ld $rust_folder | awk '{print $3}')
|
||||
if [ "$USER" != "$rust_folder_owner" ]; then
|
||||
chown "$USER":docker -R $rust_folder
|
||||
if [ "$rust_user" != "$rust_folder_owner" ]; then
|
||||
chown "$rust_user":docker -R $rust_folder
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -1,13 +1,23 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
apt-get -yq update
|
||||
apt-get -yq dist-upgrade
|
||||
systemctl disable apt-daily.service
|
||||
|
||||
# Stop and disable apt-daily upgrade services;
|
||||
systemctl stop apt-daily.timer
|
||||
systemctl disable apt-daily.timer
|
||||
systemctl disable apt-daily.service
|
||||
systemctl stop apt-daily-upgrade.timer
|
||||
systemctl disable apt-daily-upgrade.timer
|
||||
systemctl disable apt-daily-upgrade.service
|
||||
|
||||
# This step should completely disable any automatic updates except manual
|
||||
sudo sed -i 's/APT::Periodic::Update-Package-Lists "1"/APT::Periodic::Update-Package-Lists "0"/' /etc/apt/apt.conf.d/20auto-upgrades
|
||||
|
||||
# Enable retry logic for apt up to 10 times
|
||||
echo "APT::Acquire::Retries \"10\";" > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
# Configure apt to always assume Y
|
||||
echo "APT::Get::Assume-Yes \"true\";" > /etc/apt/apt.conf.d/90assumeyes
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: repos.sh
|
||||
## Desc: Installs official Microsoft package repos for the distribution
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: etc-environment.sh
|
||||
## Desc: Helper functions for source and modify /etc/environment
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: install.sh
|
||||
## Desc: Helper functions for installing tools
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: install-helpers.sh
|
||||
## Desc: Helper functions for installing tools
|
||||
|
||||
@@ -15,9 +15,13 @@ else
|
||||
versions=$(jq -r '.azureModules[] | select(.name | contains("az")) | .versions[]' $toolset)
|
||||
fi
|
||||
|
||||
# Try to install and update PowerShellGet before the actual installation
|
||||
pwsh -Command "Install-Module -Name PowerShellGet -Force"
|
||||
pwsh -Command "Update-Module -Name PowerShellGet -Force"
|
||||
|
||||
# Install Azure CLI (instructions taken from https://docs.microsoft.com/en-us/cli/azure/install-azure-cli)
|
||||
for version in ${versions[@]}; do
|
||||
pwsh -Command "Save-Module -Name Az -LiteralPath /usr/share/az_$version -RequiredVersion $version -Force"
|
||||
pwsh -Command "Save-Module -Name Az -LiteralPath /usr/share/az_$version -RequiredVersion $version -Force -Verbose"
|
||||
done
|
||||
|
||||
# Run tests to determine that the software installed as expected
|
||||
|
||||
@@ -12,9 +12,6 @@ source $HELPER_SCRIPTS/etc-environment.sh
|
||||
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
|
||||
eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)
|
||||
|
||||
# Make brew files and directories writable by any user
|
||||
sudo chmod -R o+w $HOMEBREW_PREFIX
|
||||
|
||||
# Update /etc/environemnt
|
||||
## Put HOMEBREW_* variables
|
||||
brew shellenv|grep 'export HOMEBREW'|sed -E 's/^export (.*);$/\1/' | sudo tee -a /etc/environment
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: pipx-packages.sh
|
||||
## Desc: Install tools via pipx
|
||||
|
||||
@@ -24,3 +24,7 @@ then
|
||||
echo "PATH = $PATH"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Clean yarn and npm cache
|
||||
yarn cache clean
|
||||
npm cache clean --force
|
||||
@@ -1,18 +1,19 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [.NET 5.0 will become a default .NET version on November, 10](https://github.com/actions/virtual-environments/issues/1891) |
|
||||
| [macOS 11.0 (Big Sur) is available as a preview 🚀](https://github.com/actions/virtual-environments/issues/1814) |
|
||||
| [[macOS] Default Ruby version will be changed to 2.7 on October, 26](https://github.com/actions/virtual-environments/issues/1775) |
|
||||
| [Default Xcode will be changed to Xcode 12.0 on October, 20](https://github.com/actions/virtual-environments/issues/1712) |
|
||||
| [Default Xcode will be changed to Xcode 12.0.1 on October, 20](https://github.com/actions/virtual-environments/issues/1712) |
|
||||
| [Xcode 11.0, 11.1, 11.4.0 will be deprecated on November, 5](https://github.com/actions/virtual-environments/issues/1688) |
|
||||
***
|
||||
# macOS 10.15 info
|
||||
- System Version: macOS 10.15.7 (19H2)
|
||||
- Kernel Version: Darwin 19.6.0
|
||||
- Image Version: 20201017.1
|
||||
- Image Version: 20201026.2
|
||||
|
||||
## Installed Software
|
||||
### Language and Runtime
|
||||
- Clang/LLVM 10.0.1
|
||||
- Clang/LLVM 11.0.0
|
||||
- gcc-8 (Homebrew GCC 8.4.0_1) 8.4.0 - available by `gcc-8` alias
|
||||
- gcc-9 (Homebrew GCC 9.3.0) 9.3.0 - available by `gcc-9` alias
|
||||
- GNU Fortran (Homebrew GCC 8.4.0_1) 8.4.0 - available by `gfortran-8` alias
|
||||
@@ -23,9 +24,9 @@
|
||||
- NVM - Cached node versions: v6.17.1 v8.17.0 v10.22.1 v12.19.0 v13.14.0 v14.14.0
|
||||
- Python 2.7.17
|
||||
- Python 3.8.6
|
||||
- Ruby 2.6.6p146
|
||||
- Ruby 2.7.2p137
|
||||
- .NET SDK 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.602 2.1.603 2.1.604 2.1.607 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 2.1.809 2.1.810 2.1.811 3.0.100 3.0.101 3.0.102 3.0.103 3.1.100 3.1.101 3.1.200 3.1.201 3.1.300 3.1.301 3.1.302 3.1.401 3.1.402 3.1.403
|
||||
- Go 1.15.2
|
||||
- Go 1.15.3
|
||||
- PHP 7.4.11
|
||||
- julia 1.5.2
|
||||
|
||||
@@ -35,14 +36,14 @@
|
||||
- Pip 20.2.3 (python 3.8)
|
||||
- Bundler version 2.1.4
|
||||
- Carthage 0.36.0
|
||||
- CocoaPods 1.9.3
|
||||
- Homebrew 2.5.6
|
||||
- CocoaPods 1.10.0
|
||||
- Homebrew 2.5.7
|
||||
- NPM 6.14.8
|
||||
- Yarn 1.22.5
|
||||
- NuGet 5.6.0.6489
|
||||
- Miniconda 4.8.3
|
||||
- RubyGems 3.1.4
|
||||
- Composer 1.10.15
|
||||
- Composer 2.0.2
|
||||
|
||||
### Project Management
|
||||
- Apache Maven 3.6.3
|
||||
@@ -51,7 +52,7 @@
|
||||
|
||||
### Utilities
|
||||
- Curl 7.73.0
|
||||
- Git: 2.28.0
|
||||
- Git: 2.29.1
|
||||
- Git LFS: 2.12.0
|
||||
- GitHub CLI: 1.1.0
|
||||
- Hub CLI: 2.14.2
|
||||
@@ -64,28 +65,28 @@
|
||||
- psql (PostgreSQL) 13.0
|
||||
- PostgreSQL 13.0
|
||||
- aria2 1.35.0
|
||||
- azcopy 10.6.0
|
||||
- azcopy 10.6.1
|
||||
- zstd 1.4.5
|
||||
- bazel 3.6.0
|
||||
- bazelisk 1.7.2
|
||||
- bazel 3.7.0
|
||||
- bazelisk 1.7.4
|
||||
- helm v3.3.4+ga61ce56
|
||||
- mongo v4.4.1
|
||||
- mongod v4.4.1
|
||||
- 7-Zip 16.02
|
||||
- Newman 5.2.0
|
||||
- virtualbox 6.1.14r140239
|
||||
- virtualbox 6.1.16r140961
|
||||
- Vagrant 2.2.10
|
||||
- GNU parallel 20200722
|
||||
- GNU parallel 20201022
|
||||
|
||||
|
||||
### Tools
|
||||
- Fastlane 2.163.0
|
||||
- Fastlane 2.165.0
|
||||
- Cmake 3.18.4
|
||||
- App Center CLI 2.7.2
|
||||
- Azure CLI 2.13.0
|
||||
- AWS CLI 2.0.57
|
||||
- AWS CLI 2.0.59
|
||||
- AWS SAM CLI 1.6.2
|
||||
- AWS Session Manager CLI 1.1.61.0
|
||||
- AWS Session Manager CLI 1.2.7.0
|
||||
- Aliyun CLI 3.0.60
|
||||
- GHCup v0.1.11
|
||||
- GHC 8.10.2
|
||||
@@ -99,19 +100,19 @@
|
||||
### Browsers
|
||||
- Safari 14.0 (15610.1.28.1.9)
|
||||
- SafariDriver 14.0 (15610.1.28.1.9)
|
||||
- Google Chrome 86.0.4240.80
|
||||
- Google Chrome 86.0.4240.111
|
||||
- ChromeDriver 86.0.4240.22
|
||||
- Microsoft Edge 85.0.564.70
|
||||
- MSEdgeDriver 85.0.564.70
|
||||
- Mozilla Firefox 81.0.2
|
||||
- Microsoft Edge 86.0.622.51
|
||||
- MSEdgeDriver 86.0.622.51
|
||||
- Mozilla Firefox 82.0
|
||||
- geckodriver 0.27.0
|
||||
|
||||
### Java
|
||||
| Version | Vendor | Environment Variable |
|
||||
| --------- | ------------ | -------------------- |
|
||||
| 1.7.0_272 | Zulu | JAVA_HOME_7_X64 |
|
||||
| 1.8.0_265 | AdoptOpenJDK | JAVA_HOME_8_X64 |
|
||||
| 11.0.8 | AdoptOpenJDK | JAVA_HOME_11_X64 |
|
||||
| 1.8.0_272 | AdoptOpenJDK | JAVA_HOME_8_X64 |
|
||||
| 11.0.9 | AdoptOpenJDK | JAVA_HOME_11_X64 |
|
||||
| 12.0.2 | AdoptOpenJDK | JAVA_HOME_12_X64 |
|
||||
| 13.0.2 | AdoptOpenJDK | JAVA_HOME_13_X64 |
|
||||
| 14.0.2 | AdoptOpenJDK | JAVA_HOME_14_X64 |
|
||||
@@ -120,7 +121,7 @@
|
||||
- 2.4.10
|
||||
- 2.5.8
|
||||
- 2.6.6
|
||||
- 2.7.1
|
||||
- 2.7.2
|
||||
|
||||
#### Python
|
||||
- 2.7.18
|
||||
@@ -212,21 +213,21 @@
|
||||
- NUnit 3.6.1
|
||||
|
||||
### Xcode
|
||||
| Version | Build | Path |
|
||||
| -------------- | -------- | ------------------------------ |
|
||||
| 12.2 (beta) | 12B5035g | /Applications/Xcode_12.2.app |
|
||||
| 12.1 | 12A7403 | /Applications/Xcode_12.1.app |
|
||||
| 12.0.1 | 12A7300 | /Applications/Xcode_12.app |
|
||||
| 11.7 (default) | 11E801a | /Applications/Xcode_11.7.app |
|
||||
| 11.6 | 11E708 | /Applications/Xcode_11.6.app |
|
||||
| 11.5 | 11E608c | /Applications/Xcode_11.5.app |
|
||||
| 11.4.1 | 11E503a | /Applications/Xcode_11.4.1.app |
|
||||
| 11.4 | 11E146 | /Applications/Xcode_11.4.app |
|
||||
| 11.3.1 | 11C505 | /Applications/Xcode_11.3.1.app |
|
||||
| 11.2.1 | 11B500 | /Applications/Xcode_11.2.1.app |
|
||||
| 11.1 | 11A1027 | /Applications/Xcode_11.1.app |
|
||||
| 11.0 | 11A420a | /Applications/Xcode_11.app |
|
||||
| 10.3 | 10G8 | /Applications/Xcode_10.3.app |
|
||||
| Version | Build | Path |
|
||||
| ---------------- | -------- | ------------------------------ |
|
||||
| 12.2 (beta) | 12B5035g | /Applications/Xcode_12.2.app |
|
||||
| 12.1 | 12A7403 | /Applications/Xcode_12.1.app |
|
||||
| 12.0.1 (default) | 12A7300 | /Applications/Xcode_12.app |
|
||||
| 11.7 | 11E801a | /Applications/Xcode_11.7.app |
|
||||
| 11.6 | 11E708 | /Applications/Xcode_11.6.app |
|
||||
| 11.5 | 11E608c | /Applications/Xcode_11.5.app |
|
||||
| 11.4.1 | 11E503a | /Applications/Xcode_11.4.1.app |
|
||||
| 11.4 | 11E146 | /Applications/Xcode_11.4.app |
|
||||
| 11.3.1 | 11C505 | /Applications/Xcode_11.3.1.app |
|
||||
| 11.2.1 | 11B500 | /Applications/Xcode_11.2.1.app |
|
||||
| 11.1 | 11A1027 | /Applications/Xcode_11.1.app |
|
||||
| 11.0 | 11A420a | /Applications/Xcode_11.app |
|
||||
| 10.3 | 10G8 | /Applications/Xcode_10.3.app |
|
||||
|
||||
#### Xcode Support Tools
|
||||
- xcpretty 0.3.0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[macOS] Built-in Python 2.7 will be used on macOS instead of Homebrew formula on November, 3rd.](https://github.com/actions/virtual-environments/issues/1848) |
|
||||
| [.NET 5.0 will become a default .NET version on November, 10](https://github.com/actions/virtual-environments/issues/1891) |
|
||||
| [macOS 11.0 (Big Sur) is available as a preview 🚀](https://github.com/actions/virtual-environments/issues/1814) |
|
||||
| [[macOS] Default Ruby version will be changed to 2.7 on October, 26](https://github.com/actions/virtual-environments/issues/1775) |
|
||||
| [Default Xcode will be changed to Xcode 12.0.1 on October, 20](https://github.com/actions/virtual-environments/issues/1712) |
|
||||
@@ -9,7 +9,7 @@
|
||||
# macOS 11.0 info
|
||||
- System Version: macOS 11.0 (20A5395g)
|
||||
- Kernel Version: Darwin 20.1.0
|
||||
- Image Version: 20201020.1
|
||||
- Image Version: 20201024.1
|
||||
|
||||
## Installed Software
|
||||
### Language and Runtime
|
||||
@@ -34,14 +34,14 @@
|
||||
- Pip 20.2.3 (python 3.8)
|
||||
- Bundler version 2.1.4
|
||||
- Carthage 0.36.0
|
||||
- CocoaPods 1.9.3
|
||||
- CocoaPods 1.10.0
|
||||
- Homebrew 2.5.6
|
||||
- NPM 6.14.8
|
||||
- Yarn 1.22.5
|
||||
- NuGet 5.6.0.6489
|
||||
- Miniconda 4.8.3
|
||||
- RubyGems 3.1.4
|
||||
- Composer 1.10.15
|
||||
- Composer 2.0.1
|
||||
|
||||
### Project Management
|
||||
- Apache Maven 3.6.3
|
||||
@@ -50,7 +50,7 @@
|
||||
|
||||
### Utilities
|
||||
- Curl 7.73.0
|
||||
- Git: 2.29.0
|
||||
- Git: 2.29.1
|
||||
- Git LFS: 2.12.0
|
||||
- GitHub CLI: 1.1.0
|
||||
- Hub CLI: 2.14.2
|
||||
@@ -63,10 +63,10 @@
|
||||
- psql (PostgreSQL) 13.0
|
||||
- PostgreSQL 13.0
|
||||
- aria2 1.35.0
|
||||
- azcopy 10.6.0
|
||||
- azcopy 10.6.1
|
||||
- zstd 1.4.5
|
||||
- bazel 3.7.0
|
||||
- bazelisk 1.7.3
|
||||
- bazelisk 1.7.4
|
||||
- helm v3.3.4+ga61ce56
|
||||
- mongo v4.4.1
|
||||
- mongod v4.4.1
|
||||
@@ -74,13 +74,13 @@
|
||||
- Newman 5.2.0
|
||||
|
||||
### Tools
|
||||
- Fastlane 2.164.0
|
||||
- Fastlane 2.165.0
|
||||
- Cmake 3.18.4
|
||||
- App Center CLI 2.7.2
|
||||
- Azure CLI 2.13.0
|
||||
- AWS CLI 2.0.57
|
||||
- AWS CLI 2.0.59
|
||||
- AWS SAM CLI 1.6.2
|
||||
- AWS Session Manager CLI 1.1.61.0
|
||||
- AWS Session Manager CLI 1.2.7.0
|
||||
- Aliyun CLI 3.0.60
|
||||
- GHCup v0.1.11
|
||||
- GHC 8.10.2
|
||||
@@ -94,24 +94,24 @@
|
||||
### Browsers
|
||||
- Safari 14.0.1 (16610.2.8.1.1)
|
||||
- SafariDriver 14.0.1 (16610.2.8.1.1)
|
||||
- Google Chrome 86.0.4240.80
|
||||
- Google Chrome 86.0.4240.111
|
||||
- ChromeDriver 86.0.4240.22
|
||||
- Microsoft Edge 85.0.564.70
|
||||
- MSEdgeDriver 85.0.564.70
|
||||
- Mozilla Firefox 81.0.2
|
||||
- Mozilla Firefox 82.0
|
||||
- geckodriver 0.27.0
|
||||
|
||||
### Java
|
||||
| Version | Vendor | Environment Variable |
|
||||
| --------- | ------------ | -------------------- |
|
||||
| 1.8.0_265 | AdoptOpenJDK | JAVA_HOME_8_X64 |
|
||||
| 11.0.8 | AdoptOpenJDK | JAVA_HOME_11_X64 |
|
||||
| 1.8.0_272 | AdoptOpenJDK | JAVA_HOME_8_X64 |
|
||||
| 11.0.9 | AdoptOpenJDK | JAVA_HOME_11_X64 |
|
||||
### Cached Tools
|
||||
#### Ruby
|
||||
- 2.4.10
|
||||
- 2.5.8
|
||||
- 2.6.6
|
||||
- 2.7.1
|
||||
- 2.7.2
|
||||
|
||||
#### Python
|
||||
- 3.7.9
|
||||
@@ -170,7 +170,6 @@
|
||||
| Version | Build | Path |
|
||||
| -------------- | -------- | ---------------------------- |
|
||||
| 12.2 (beta) | 12B5035g | /Applications/Xcode_12.2.app |
|
||||
| 12.1 | 12A7403 | /Applications/Xcode_12.1.app |
|
||||
| 11.7 (default) | 11E801a | /Applications/Xcode_11.7.app |
|
||||
|
||||
#### Xcode Support Tools
|
||||
@@ -180,40 +179,31 @@
|
||||
#### Installed SDKs
|
||||
| SDK | SDK Name | Xcode Version |
|
||||
| ----------------------- | -------------------- | ------------- |
|
||||
| macOS 10.15 | macosx10.15 | 11.7, 12.1 |
|
||||
| macOS 10.15 | macosx10.15 | 11.7 |
|
||||
| macOS 11.0 | macosx11.0 | 12.2 |
|
||||
| iOS 13.7 | iphoneos13.7 | 11.7 |
|
||||
| iOS 14.1 | iphoneos14.1 | 12.1 |
|
||||
| iOS 14.2 | iphoneos14.2 | 12.2 |
|
||||
| Simulator - iOS 13.7 | iphonesimulator13.7 | 11.7 |
|
||||
| Simulator - iOS 14.1 | iphonesimulator14.1 | 12.1 |
|
||||
| Simulator - iOS 14.2 | iphonesimulator14.2 | 12.2 |
|
||||
| tvOS 13.4 | appletvos13.4 | 11.7 |
|
||||
| tvOS 14.0 | appletvos14.0 | 12.1 |
|
||||
| tvOS 14.2 | appletvos14.2 | 12.2 |
|
||||
| Simulator - tvOS 13.4 | appletvsimulator13.4 | 11.7 |
|
||||
| Simulator - tvOS 14.0 | appletvsimulator14.0 | 12.1 |
|
||||
| Simulator - tvOS 14.2 | appletvsimulator14.2 | 12.2 |
|
||||
| watchOS 6.2 | watchos6.2 | 11.7 |
|
||||
| watchOS 7.0 | watchos7.0 | 12.1 |
|
||||
| watchOS 7.1 | watchos7.1 | 12.2 |
|
||||
| Simulator - watchOS 6.2 | watchsimulator6.2 | 11.7 |
|
||||
| Simulator - watchOS 7.0 | watchsimulator7.0 | 12.1 |
|
||||
| Simulator - watchOS 7.1 | watchsimulator7.1 | 12.2 |
|
||||
| DriverKit 19.0 | driverkit.macosx19.0 | 11.7, 12.1 |
|
||||
| DriverKit 19.0 | driverkit.macosx19.0 | 11.7 |
|
||||
| DriverKit 20.0 | driverkit.macosx20.0 | 12.2 |
|
||||
|
||||
#### Installed Simulators
|
||||
| OS | Xcode Version | Simulators |
|
||||
| ----------- | ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| iOS 13.7 | 11.7 | iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (7th generation)<br>iPad Air (3rd generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Pro (9.7-inch) |
|
||||
| iOS 14.1 | 12.1 | iPod touch (7th generation)<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 12<br>iPhone 12 mini<br>iPhone 12 Pro<br>iPhone 12 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (7th generation)<br>iPad (8th generation)<br>iPad Air (3rd generation)<br>iPad Air (4th generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Pro (9.7-inch) |
|
||||
| iOS 14.2 | 12.2 | iPod touch (7th generation)<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 12<br>iPhone 12 mini<br>iPhone 12 Pro<br>iPhone 12 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (7th generation)<br>iPad (8th generation)<br>iPad Air (3rd generation)<br>iPad Air (4th generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Pro (9.7-inch) |
|
||||
| tvOS 13.4 | 11.7 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| tvOS 14.0 | 12.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| tvOS 14.2 | 12.2 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| watchOS 6.2 | 11.7 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
||||
| watchOS 7.0 | 12.1 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm<br>Apple Watch Series 6 - 40mm<br>Apple Watch Series 6 - 44mm |
|
||||
| watchOS 7.1 | 12.2 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm<br>Apple Watch Series 6 - 40mm<br>Apple Watch Series 6 - 44mm |
|
||||
|
||||
### Android
|
||||
|
||||
22
images/macos/provision/assets/select-xamarin-sdk.sh
Normal file
22
images/macos/provision/assets/select-xamarin-sdk.sh
Normal file
@@ -0,0 +1,22 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
if [ -z "$1" ]; then
|
||||
echo "No Xamarin SDK specified."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
XAMARIN_SDK=$1
|
||||
|
||||
echo "Set Xamarin SDK to ${XAMARIN_SDK}"
|
||||
FOLDERS_LIST=(
|
||||
'/Library/Frameworks/Mono.framework/Versions'
|
||||
'/Library/Frameworks/Xamarin.iOS.framework/Versions'
|
||||
'/Library/Frameworks/Xamarin.Android.framework/Versions'
|
||||
'/Library/Frameworks/Xamarin.Mac.framework/Versions'
|
||||
)
|
||||
|
||||
for FOLDER in "${FOLDERS_LIST[@]}"
|
||||
do
|
||||
echo "Set Current folder for ${FOLDER}"
|
||||
sudo rm -f ${FOLDER}/Current
|
||||
sudo ln -s ${FOLDER}/${XAMARIN_SDK} ${FOLDER}/Current
|
||||
done
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
BOOTSTRAP_PATH="$1"
|
||||
ProvisionerPackageUri="$2"
|
||||
ProvisionerScriptUri="$3"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
# This script was taken from https://github.com/timsutton/osx-vm-templates/blob/master/scripts/add-network-interface-detection.sh
|
||||
# Distributed by MIT license, license can be found at the bottom of this script
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
# This script was taken from https://github.com/timsutton/osx-vm-templates/blob/master/scripts/autologin.sh
|
||||
# Distributed by MIT license, license can be found at the bottom of this script
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
# Add script for changing hostname to run on startup to prevent duplicate hostnames across the environment. Hostname and Computername should contain .local in name to avoid name resolution issues
|
||||
tee -a /usr/local/bin/change_hostname.sh > /dev/null <<\EOF
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
name="Mac-$(python -c 'from time import time; print int(round(time() * 1000))')"
|
||||
scutil --set HostName "${name}.local"
|
||||
|
||||
@@ -1,12 +1,4 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Enable firewall. SSH and VNC opened. Can't did it at bootstrap step, so placed it here
|
||||
defaults write /Library/Preferences/com.apple.alf globalstate -int 1
|
||||
|
||||
# Setting correct time zone
|
||||
echo "Configuring system time to GMT..."
|
||||
rm -f /etc/localtime
|
||||
ln -sf /usr/share/zoneinfo/UTC /etc/localtime
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo "Enabling safari driver..."
|
||||
# https://developer.apple.com/documentation/webkit/testing_with_webdriver_in_safari
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
[[ ! -d ~/.ssh ]] && mkdir ~/.ssh 2>/dev/null
|
||||
chmod 777 ~/.ssh
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
# Disabling automatic updates
|
||||
sudo softwareupdate --schedule off
|
||||
|
||||
@@ -1,20 +1,33 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
# Close all finder windows because they can interfere with UI tests
|
||||
osascript -e 'tell application "Finder" to close windows'
|
||||
|
||||
# Ignore available updates to prevent system pop-ups
|
||||
updateName=$(softwareupdate -l | grep "Title: " | awk -F[:,] '{print $2}' | awk '{$1=$1};1')
|
||||
if [ ! -z "$updateName" ]; then
|
||||
sudo softwareupdate --ignore "$updateName"
|
||||
if is_Less_BigSur; then
|
||||
# Ignore available updates to prevent system pop-ups
|
||||
updateName=$(softwareupdate -l | grep "Title: " | awk -F[:,] '{print $2}' | awk '{$1=$1};1') || true
|
||||
if [ ! -z "$updateName" ]; then
|
||||
sudo softwareupdate --ignore "$updateName"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Put documentation to $HOME root
|
||||
cp $HOME/image-generation/output/software-report/systeminfo.txt $HOME/image-generation/output/software-report/systeminfo.md $HOME/
|
||||
|
||||
# Put build vm assets scripts to proper directory
|
||||
mkdir -p /usr/local/opt/$USER/scripts
|
||||
mv $HOME/image-generation/assets/* /usr/local/opt/$USER/scripts
|
||||
|
||||
find /usr/local/opt/$USER/scripts -type f -name "*\.sh" -exec chmod +x {} \;
|
||||
|
||||
# Clean up npm cache which collected during image-generation
|
||||
# we have to do that here because `npm install` is run in a few different places during image-generation
|
||||
npm cache clean --force
|
||||
|
||||
# Clean yarn cache
|
||||
yarn cache clean
|
||||
|
||||
# Clean up temporary directories
|
||||
rm -rf ~/utils ~/image-generation
|
||||
@@ -1,6 +1,4 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
Launch_Daemons="/Library/LaunchDaemons"
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo Additional NTP servers adding into /etc/ntp.conf file...
|
||||
cat > /etc/ntp.conf << EOF
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
imagedata_file="$HOME/imagedata.json"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
# set screensaver idleTime to 0, to prevent turning screensaver on
|
||||
macUUID=`ioreg -rd1 -c IOPlatformExpertDevice | grep -i "UUID" | cut -c27-62`
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo "Changing shell to bash"
|
||||
sudo chsh -s /bin/bash $USERNAME
|
||||
sudo chsh -s /bin/bash root
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash -e
|
||||
#!/bin/bash -e -o pipefail
|
||||
source ~/utils/utils.sh
|
||||
|
||||
function filter_components_by_version {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo "install soundflower"
|
||||
brew cask install soundflower
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo Installing aws...
|
||||
curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
AZCOPY_DOWNLOAD_URL="https://aka.ms/downloadazcopy-v10-mac"
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
set -e
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
source ~/utils/utils.sh
|
||||
|
||||
echo "Installing Chrome..."
|
||||
brew cask install google-chrome
|
||||
brew_cask_install_ignoring_sha256 "google-chrome"
|
||||
|
||||
echo "Installing Chrome Driver"
|
||||
brew cask install chromedriver
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo "Installing Cocoapods..."
|
||||
|
||||
# Setup the Cocoapods master repo
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
@@ -22,7 +21,6 @@ binst_common_utils=(
|
||||
gh
|
||||
p7zip
|
||||
ant
|
||||
yamllint
|
||||
aria2
|
||||
)
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
###########################################################################
|
||||
# The main idea of this script is to automate dotnet installs
|
||||
@@ -23,7 +23,7 @@ echo "Parsing dotnet SDK (except rc and preview versions) from .json..."
|
||||
if is_BigSur; then
|
||||
DOTNET_CHANNELS=(
|
||||
'https://raw.githubusercontent.com/dotnet/core/master/release-notes/2.1/releases.json'
|
||||
'https://raw.githubusercontent.com/dotnet/core/master/release-notes/3.1/releases.json'
|
||||
'https://raw.githubusercontent.com/dotnet/core/master/release-notes/3.1/releases.json'
|
||||
)
|
||||
elif is_Less_Catalina; then
|
||||
DOTNET_CHANNELS=(
|
||||
@@ -33,7 +33,7 @@ else
|
||||
DOTNET_CHANNELS=(
|
||||
'https://raw.githubusercontent.com/dotnet/core/master/release-notes/2.1/releases.json'
|
||||
'https://raw.githubusercontent.com/dotnet/core/master/release-notes/3.0/releases.json'
|
||||
'https://raw.githubusercontent.com/dotnet/core/master/release-notes/3.1/releases.json'
|
||||
'https://raw.githubusercontent.com/dotnet/core/master/release-notes/3.1/releases.json'
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
echo "Installing Microsoft Edge..."
|
||||
# Workaround to install version 85 since webdriver is broken for 86
|
||||
cd "$(brew --repo homebrew/homebrew-cask)"
|
||||
git checkout 81f9d08d2b9b7557c0178621078cf59d2c5db2bc
|
||||
brew cask install microsoft-edge
|
||||
git checkout master
|
||||
|
||||
EDGE_INSTALLATION_PATH="/Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge"
|
||||
EDGE_VERSION=$("$EDGE_INSTALLATION_PATH" --version | cut -d' ' -f 3)
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo "Installing Firefox..."
|
||||
brew cask install firefox
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo "Installing GCC@8 using homebrew..."
|
||||
brew install gcc@8
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo Installing Git...
|
||||
brew install git
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
|
||||
export PATH="$HOME/.ghcup/bin:$PATH"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
MINICONDA_INSTALLER="/tmp/miniconda.sh"
|
||||
curl -sL https://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-x86_64.sh -o $MINICONDA_INSTALLER
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
# MongoDB object-value database
|
||||
# installs last version of MongoDB Community Edition
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
node_modules=(
|
||||
@@ -16,7 +18,6 @@ if is_Less_Catalina; then
|
||||
|
||||
echo Installing NPM 3.x.x...
|
||||
npm install -g npm@3
|
||||
npm config set prefix /usr/local
|
||||
|
||||
# This step is required to install App Center CLI
|
||||
echo Installing Omelette...
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#!/bin/sh
|
||||
|
||||
#!/bin/bash -e -o pipefail
|
||||
###########################################################################
|
||||
# The script installs node version manager with node versions 6,8,10 and 12
|
||||
#
|
||||
@@ -24,11 +23,8 @@ if [ $? -eq 0 ]; then
|
||||
nvm alias node12 lts/erbium
|
||||
nvm alias node13 v13
|
||||
nvm alias node14 v14
|
||||
|
||||
if is_Catalina || is_BigSur; then
|
||||
# set system node as default
|
||||
nvm alias default system
|
||||
fi
|
||||
# set system node as default
|
||||
nvm alias default system
|
||||
else
|
||||
echo error
|
||||
fi
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
@@ -37,7 +35,7 @@ JAVA_DEFAULT=$(get_toolset_value '.java.default')
|
||||
for JAVA_VERSION in "${JAVA_VERSIONS_LIST[@]}"
|
||||
do
|
||||
if [[ $JAVA_VERSION == "7" ]]; then
|
||||
installAzulJDK "https://cdn.azul.com/zulu/bin/zulu7.40.0.15-ca-jdk7.0.272-macosx_x64.dmg"
|
||||
installAzulJDK "https://cdn.azul.com/zulu/bin/zulu7.42.0.13-ca-jdk7.0.282-macosx_x64.dmg"
|
||||
else
|
||||
brew cask install "adoptopenjdk${JAVA_VERSION}"
|
||||
fi
|
||||
|
||||
@@ -1,19 +1,16 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
echo "Installing OpenSSL..."
|
||||
export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"
|
||||
|
||||
echo Installing OpenSSL...
|
||||
/usr/local/bin/brew install openssl
|
||||
brew install openssl
|
||||
|
||||
# Install OpenSSL 1.0.2t
|
||||
# https://www.openssl.org/policies/releasestrat.html - Version 1.0.2 will be supported until 2019-12-31 (LTS)
|
||||
# To preserve backward compatibility with ruby-toolcache
|
||||
/usr/local/bin/brew tap-new local/openssl
|
||||
FORMULA_PATH=$(/usr/local/bin/brew extract openssl local/openssl | grep "Homebrew/Library/Taps")
|
||||
/usr/local/bin/brew install $FORMULA_PATH
|
||||
brew tap-new --no-git local/openssl
|
||||
FORMULA_PATH=$(brew extract openssl local/openssl | grep "Homebrew/Library/Taps")
|
||||
brew install $FORMULA_PATH
|
||||
|
||||
# Set OpenSSL 1.0.2t as default
|
||||
ln -sf /usr/local/Cellar/openssl@1.0.2t /usr/local/Cellar/openssl
|
||||
@@ -25,4 +22,4 @@ ln -sf ../Cellar/openssl/1.0.2t /usr/local/opt/openssl
|
||||
# https://github.com/microsoft/azure-pipelines-agent/blob/master/docs/start/envosx.md
|
||||
mkdir -p /usr/local/lib/
|
||||
ln -s /usr/local/opt/openssl@1.0.2t/lib/libcrypto.1.0.0.dylib /usr/local/lib/
|
||||
ln -s /usr/local/opt/openssl@1.0.2t/lib/libssl.1.0.0.dylib /usr/local/lib/
|
||||
ln -s /usr/local/opt/openssl@1.0.2t/lib/libssl.1.0.0.dylib /usr/local/lib/
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo Installing PHP
|
||||
brew install php
|
||||
|
||||
19
images/macos/provision/core/pipx-packages.sh
Normal file
19
images/macos/provision/core/pipx-packages.sh
Normal file
@@ -0,0 +1,19 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
source ~/utils/utils.sh
|
||||
|
||||
export PATH="$PATH:/opt/pipx_bin"
|
||||
|
||||
toolset=$(get_toolset_path)
|
||||
pipx_packages=$(jq -r ".pipx[] .package" $toolset)
|
||||
|
||||
for package in $pipx_packages; do
|
||||
python_version=$(jq -r ".pipx[] | select(.package == \"$package\") .python" $toolset)
|
||||
if [ "$python_version" != "null" ]; then
|
||||
python_path="$HOME/hostedtoolcache/Python/$python_version*/x64/bin/python$python_version"
|
||||
echo "Install $package into python $python_path"
|
||||
pipx install $package --python $python_path
|
||||
else
|
||||
echo "Install $package into default python"
|
||||
pipx install $package
|
||||
fi
|
||||
done
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
#Install latest version of postgresql
|
||||
brew install postgres
|
||||
@@ -6,13 +6,21 @@ brew install postgres
|
||||
#Service postgresql should be started before use.
|
||||
brew services start postgresql
|
||||
|
||||
#Verify that PostgreSQL is ready for accept incoming connections.
|
||||
# exit codes:
|
||||
# ready - 0
|
||||
# reject - 1
|
||||
# connection timeout - 2
|
||||
# incorrect credentials or parameters - 3
|
||||
pg_isready
|
||||
#Verify PostgreSQL is ready for accept incoming connections
|
||||
echo "Check PostgreSQL service is running"
|
||||
i=10
|
||||
COMMAND='pg_isready'
|
||||
while [ $i -gt 0 ]; do
|
||||
echo "Check PostgreSQL service status"
|
||||
eval $COMMAND && break
|
||||
((i--))
|
||||
if [ $i == 0 ]; then
|
||||
echo "PostgreSQL service not ready, all attempts exhausted"
|
||||
exit 1
|
||||
fi
|
||||
echo "PostgreSQL service not ready, wait 10 more sec, attempts left: $i"
|
||||
sleep 10
|
||||
done
|
||||
|
||||
#Stop postgresql
|
||||
brew services stop postgresql
|
||||
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
echo Installing Azure CLI...
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
################################################################################
|
||||
## File: pypy.sh
|
||||
## Desc: Installs PyPy
|
||||
################################################################################
|
||||
source ~/utils/utils.sh
|
||||
set -e
|
||||
|
||||
function InstallPyPy
|
||||
{
|
||||
|
||||
@@ -1,18 +1,29 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
echo "Installing Python Tooling"
|
||||
|
||||
echo "Brew Installing Python 3"
|
||||
# Workaround to have both 3.8 & 3.9(which required by some brew formulas) in the system, but only 3.8 is linked
|
||||
/usr/local/bin/brew install python@3.8
|
||||
/usr/local/bin/brew install python@3.9
|
||||
/usr/local/bin/brew unlink python@3.9
|
||||
/usr/local/bin/brew unlink python@3.8
|
||||
/usr/local/bin/brew link python@3.8
|
||||
brew install python@3.8
|
||||
brew install python@3.9
|
||||
brew unlink python@3.9
|
||||
brew unlink python@3.8
|
||||
brew link python@3.8 --force
|
||||
|
||||
echo "Brew Installing Python 2"
|
||||
# Create local tap with formula due to python2 formula depreciation
|
||||
/usr/local/bin/brew tap-new local/python2
|
||||
FORMULA_PATH=$(/usr/local/bin/brew extract python@2 local/python2 | grep "Homebrew/Library/Taps")
|
||||
/usr/local/bin/brew install $FORMULA_PATH
|
||||
brew tap-new --no-git local/python2
|
||||
FORMULA_PATH=$(brew extract python@2 local/python2 | grep "Homebrew/Library/Taps")
|
||||
brew install $FORMULA_PATH
|
||||
|
||||
echo "Installing pipx"
|
||||
export PIPX_BIN_DIR=/usr/local/opt/pipx_bin
|
||||
export PIPX_HOME=/usr/local/opt/pipx
|
||||
|
||||
brew install pipx
|
||||
|
||||
echo "export PIPX_BIN_DIR=${PIPX_BIN_DIR}" >> "${HOME}/.bashrc"
|
||||
echo "export PIPX_HOME=${PIPX_HOME}" >> "${HOME}/.bashrc"
|
||||
echo 'export PATH="$PIPX_BIN_DIR:$PATH"' >> "${HOME}/.bashrc"
|
||||
|
||||
@@ -1,2 +1,3 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
shutdown -r now
|
||||
@@ -1,17 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
echo Installing Ruby...
|
||||
if is_Less_BigSur; then
|
||||
# We can't install latest ruby 2.7 as a default version related with bug
|
||||
# https://github.com/fastlane/fastlane/issues/15397
|
||||
/usr/local/bin/brew install ruby@2.6
|
||||
ln -sf /usr/local/opt/ruby\@2.6 /usr/local/opt/ruby
|
||||
else
|
||||
brew install ruby
|
||||
fi
|
||||
|
||||
|
||||
brew install ruby
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
echo Updating RubyGems...
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo Installing Rustup...
|
||||
brew install rustup-init
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
echo "Get the latest Stack version..."
|
||||
StackRelease=$(curl -s "https://api.github.com/repos/commercialhaskell/stack/releases/latest")
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
#!/bin/bash -e -o pipefail
|
||||
###########################################################################
|
||||
# The script downloads macos hosted tool cache for several Python versions
|
||||
# The script downloads macos hosted tool cache for several Python versions
|
||||
# and installs them onto the system
|
||||
#
|
||||
###########################################################################
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
# Download hosted tool cache with npm
|
||||
NPM_FEED="npm.pkg.github.com"
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
set -e
|
||||
source ~/utils/utils.sh
|
||||
|
||||
# Set env variable for vcpkg
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
source ~/utils/xamarin-utils.sh
|
||||
|
||||
@@ -22,9 +23,6 @@ echo "Moving Visual Studio to /Applications/..."
|
||||
pushd $TMPMOUNT
|
||||
tar cf - "./Visual Studio.app" | tar xf - -C /Applications/
|
||||
|
||||
echo "Launching vstools..."
|
||||
/Applications/Visual\ Studio.app/Contents/MacOS/vstool
|
||||
|
||||
popd
|
||||
sudo hdiutil detach "$TMPMOUNT"
|
||||
sudo rm -rf "$TMPMOUNT"
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
ANDROID_HOME=$HOME/Library/Android/sdk
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
source ~/utils/xamarin-utils.sh
|
||||
|
||||
@@ -8,6 +9,7 @@ XAMARIN_MAC_VERSIONS=($(get_toolset_value '.xamarin."mac-versions" | reverse | .
|
||||
XAMARIN_ANDROID_VERSIONS=($(get_toolset_value '.xamarin."android-versions" | reverse | .[]'))
|
||||
LATEST_SDK_SYMLINK=$(get_toolset_value '.xamarin.bundles[0].symlink')
|
||||
CURRENT_SDK_SYMLINK=$(get_toolset_value '.xamarin."bundle-default"')
|
||||
DEFAULT_XCODE_VERSION=$(get_default_xcode_from_toolset)
|
||||
|
||||
if [ "$CURRENT_SDK_SYMLINK" == "latest" ]; then
|
||||
CURRENT_SDK_SYMLINK=$LATEST_SDK_SYMLINK
|
||||
@@ -63,8 +65,10 @@ createBundleLink $CURRENT_SDK_SYMLINK "Current"
|
||||
# Fix nuget in some mono versions because of known bugs
|
||||
#
|
||||
|
||||
# Fix Mono issue with default nuget: https://github.com/mono/mono/issues/17637
|
||||
installNuget "6.4.0" "5.3.1"
|
||||
if is_Less_BigSur; then
|
||||
# Fix Mono issue with default nuget: https://github.com/mono/mono/issues/17637
|
||||
installNuget "6.4.0" "5.3.1"
|
||||
fi
|
||||
|
||||
if is_Less_Catalina; then
|
||||
installNuget "4.8.1" "4.3.0"
|
||||
@@ -79,3 +83,8 @@ popd
|
||||
|
||||
echo "Clean up packages..."
|
||||
sudo rm -rf "$TMPMOUNT"
|
||||
|
||||
# Fix Xamarin issue with Xcode symlink: https://github.com/xamarin/xamarin-macios/issues/9960
|
||||
PREFERENCES_XAMARIN_DIR="${HOME}/Library/Preferences/Xamarin"
|
||||
mkdir -p $PREFERENCES_XAMARIN_DIR
|
||||
/usr/libexec/PlistBuddy -c "add :AppleSdkRoot string /Applications/Xcode_${DEFAULT_XCODE_VERSION}.app" $PREFERENCES_XAMARIN_DIR/Settings.plist
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
XCODE_LIST=($(get_xcode_list_from_toolset))
|
||||
DEFAULT_XCODE_VERSION=$(get_default_xcode_from_toolset)
|
||||
|
||||
# https://github.com/microsoft/appcenter/issues/847
|
||||
# Assets.xcassets : error : CoreData: error: (6922) I/O error for database
|
||||
# Assets.xcassets : error : CoreData: error: (6922) I/O error for database
|
||||
# at $HOME/Library/Developer/Xcode/UserData/IB Support/Simulator Devices/{GUID}
|
||||
echo "Erase a device's contents and settings:"
|
||||
for XCODE_VERSION in "${XCODE_LIST[@]}"
|
||||
@@ -15,6 +15,11 @@ do
|
||||
#add sleep to let CoreSimulatorService to exit
|
||||
sleep 3
|
||||
|
||||
# Version 12.2_beta installed into 12.2 directory and 12.1_GM_seed in 12.1
|
||||
pattern="[0-9]{1,2}.*_"
|
||||
if [[ $XCODE_VERSION =~ $pattern ]] ; then
|
||||
XCODE_VERSION=$(echo $XCODE_VERSION | cut -d"_" -f 1)
|
||||
fi
|
||||
# Select xcode version by default
|
||||
sudo xcode-select -s "/Applications/Xcode_${XCODE_VERSION}.app/Contents/Developer"
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
source ~/utils/utils.sh
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
download_with_retries() {
|
||||
# Due to restrictions of bash functions, positional arguments are used here.
|
||||
# In case if you using latest argument NAME, you should also set value to all previous parameters.
|
||||
@@ -5,22 +7,31 @@ download_with_retries() {
|
||||
local URL="$1"
|
||||
local DEST="${2:-.}"
|
||||
local NAME="${3:-${URL##*/}}"
|
||||
local COMPRESSED="$4"
|
||||
|
||||
echo "Downloading $URL..."
|
||||
wget $URL --output-document="$DEST/$NAME" \
|
||||
--tries=30 \
|
||||
--wait 30 \
|
||||
--retry-connrefused \
|
||||
--retry-on-host-error \
|
||||
--retry-on-http-error=404,429,500,502,503 \
|
||||
--no-verbose
|
||||
|
||||
if [ $? != 0 ]; then
|
||||
echo "Could not download $URL; Exiting build!"
|
||||
exit 1
|
||||
if [[ $COMPRESSED == "compressed" ]]; then
|
||||
COMMAND="curl $URL -4 -sL --compressed -o '$DEST/$NAME'"
|
||||
else
|
||||
COMMAND="curl $URL -4 -sL -o '$DEST/$NAME'"
|
||||
fi
|
||||
|
||||
return 0
|
||||
echo "Downloading $URL..."
|
||||
retries=20
|
||||
interval=30
|
||||
while [ $retries -gt 0 ]; do
|
||||
((retries--))
|
||||
eval $COMMAND
|
||||
if [ $? != 0 ]; then
|
||||
echo "Unable to download $URL, next attempt in $interval sec, $retries attempts left"
|
||||
sleep $interval
|
||||
else
|
||||
echo "$URL was downloaded successfully to $DEST/$NAME"
|
||||
return 0
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Could not download $URL"
|
||||
return 1
|
||||
}
|
||||
|
||||
is_BigSur() {
|
||||
@@ -84,4 +95,17 @@ get_toolset_value() {
|
||||
verlte() {
|
||||
sortedVersion=$(echo -e "$1\n$2" | sort -V | head -n1)
|
||||
[ "$1" = "$sortedVersion" ]
|
||||
}
|
||||
|
||||
brew_cask_install_ignoring_sha256() {
|
||||
local TOOL_NAME=$1
|
||||
|
||||
CASK_DIR="$(brew --repo homebrew/cask)/Casks"
|
||||
chmod a+w "$CASK_DIR/$TOOL_NAME.rb"
|
||||
SHA=$(grep "sha256" "$CASK_DIR/$TOOL_NAME.rb" | awk '{print $2}')
|
||||
sed -i '' "s/$SHA/:no_check/" "$CASK_DIR/$TOOL_NAME.rb"
|
||||
brew cask install $TOOL_NAME
|
||||
pushd $CASK_DIR
|
||||
git checkout HEAD -- "$TOOL_NAME.rb"
|
||||
popd
|
||||
}
|
||||
@@ -1,11 +1,11 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
|
||||
# Xamarin can clean their SDKs while updating to newer versions,
|
||||
# so we should be able to detect it during image generation
|
||||
downloadAndInstallPKG() {
|
||||
local PKG_URL=$1
|
||||
local PKG_NAME=${PKG_URL##*/}
|
||||
|
||||
|
||||
download_with_retries $PKG_URL
|
||||
|
||||
echo "Installing $PKG_NAME..."
|
||||
@@ -159,7 +159,7 @@ installNunitConsole() {
|
||||
local MONO_VERSION=$1
|
||||
|
||||
cat <<EOF > ${TMPMOUNT}/${NUNIT3_CONSOLE_BIN}
|
||||
#!/bin/sh
|
||||
#!/bin/bash -e -o pipefail
|
||||
exec /Library/Frameworks/Mono.framework/Versions/${MONO_VERSION}/bin/mono --debug \$MONO_OPTIONS $NUNIT3_PATH/nunit3-console.exe "\$@"
|
||||
EOF
|
||||
sudo chmod +x ${TMPMOUNT}/${NUNIT3_CONSOLE_BIN}
|
||||
@@ -180,7 +180,7 @@ downloadNUnitConsole() {
|
||||
echo "Installing NUnit 3..."
|
||||
sudo unzip nunit3.zip -d $NUNIT3_PATH
|
||||
NUNIT3_CONSOLE_BIN=nunit3-console
|
||||
|
||||
|
||||
popd
|
||||
}
|
||||
|
||||
|
||||
@@ -96,6 +96,11 @@ function Get-PipVersion {
|
||||
return "${versionPart1} ${versionPart2} ${versionPart3}"
|
||||
}
|
||||
|
||||
function Get-PipxVersion {
|
||||
$pipxVersion = Run-Command "pipx --version" -SuppressStderr
|
||||
return "Pipx $pipxVersion"
|
||||
}
|
||||
|
||||
function Get-NVMNodeVersionList {
|
||||
$nvmPath = Join-Path $env:HOME ".nvm" "nvm.sh"
|
||||
$nvmInitCommand = ". ${nvmPath} > /dev/null 2>&1 || true"
|
||||
|
||||
@@ -83,6 +83,7 @@ $npmVersion = Run-Command "npm --version"
|
||||
$yarnVersion = Run-Command "yarn --version"
|
||||
$nugetVersion = Run-Command "nuget help" | Select-Object -First 1 | Take-Part -Part 2
|
||||
$pip3Version = Get-PipVersion -Version 3
|
||||
$pipxVersion = Get-PipxVersion
|
||||
$condaVersion = Invoke-Expression "conda --version"
|
||||
$rubyGemsVersion = Run-Command "gem --version"
|
||||
$composerVersion = Run-Command "composer --version" | Take-Part -Part 2
|
||||
@@ -99,6 +100,7 @@ if ($os.IsLessThanBigSur) {
|
||||
|
||||
$markdown += New-MDList -Style Unordered -Lines @(
|
||||
"Pip ${pip3Version}",
|
||||
$pipxVersion,
|
||||
$bundlerVersion,
|
||||
"Carthage ${carthageVersion}",
|
||||
"CocoaPods ${cocoaPodsVersion}",
|
||||
|
||||
@@ -43,6 +43,11 @@
|
||||
"type": "shell",
|
||||
"inline": "mkdir ~/image-generation"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "./provision/assets",
|
||||
"destination": "~/image-generation/"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "./tests",
|
||||
@@ -181,7 +186,8 @@
|
||||
"./provision/core/edge.sh",
|
||||
"./provision/core/firefox.sh",
|
||||
"./provision/core/toolcache-high-sierra.sh",
|
||||
"./provision/core/pypy.sh"
|
||||
"./provision/core/pypy.sh",
|
||||
"./provision/core/pipx-packages.sh"
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -43,6 +43,11 @@
|
||||
"type": "shell",
|
||||
"inline": "mkdir ~/image-generation"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "./provision/assets",
|
||||
"destination": "~/image-generation/"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "./tests",
|
||||
@@ -186,7 +191,8 @@
|
||||
"./provision/core/miniconda.sh",
|
||||
"./provision/core/xcode-postbuild.sh",
|
||||
"./provision/core/toolcache.sh",
|
||||
"./provision/core/pypy.sh"
|
||||
"./provision/core/pypy.sh",
|
||||
"./provision/core/pipx-packages.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"GITHUB_FEED_TOKEN={{user `github_feed_token`}}"
|
||||
|
||||
@@ -43,6 +43,11 @@
|
||||
"type": "shell",
|
||||
"inline": "mkdir ~/image-generation"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "./provision/assets",
|
||||
"destination": "~/image-generation/"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "./tests",
|
||||
@@ -181,7 +186,8 @@
|
||||
"./provision/core/firefox.sh",
|
||||
"./provision/core/xcode-postbuild.sh",
|
||||
"./provision/core/toolcache.sh",
|
||||
"./provision/core/pypy.sh"
|
||||
"./provision/core/pypy.sh",
|
||||
"./provision/core/pipx-packages.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"GITHUB_FEED_TOKEN={{user `github_feed_token`}}"
|
||||
|
||||
@@ -43,6 +43,11 @@
|
||||
"type": "shell",
|
||||
"inline": "mkdir ~/image-generation"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "./provision/assets",
|
||||
"destination": "~/image-generation/"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "./tests",
|
||||
@@ -181,7 +186,8 @@
|
||||
"./provision/core/chrome.sh",
|
||||
"./provision/core/edge.sh",
|
||||
"./provision/core/firefox.sh",
|
||||
"./provision/core/toolcache.sh"
|
||||
"./provision/core/toolcache.sh",
|
||||
"./provision/core/pipx-packages.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"GITHUB_FEED_TOKEN={{user `github_feed_token`}}"
|
||||
|
||||
@@ -3,10 +3,6 @@ Import-Module "$PSScriptRoot/../helpers/Tests.Helpers.psm1"
|
||||
$os = Get-OSVersion
|
||||
|
||||
Describe "Linters" {
|
||||
It "yamllint" {
|
||||
"yamllint --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
|
||||
It "SwiftLint" -Skip:($os.IsHighSierra) {
|
||||
"swiftlint version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
|
||||
7
images/macos/tests/PipxPackages.Tests.ps1
Normal file
7
images/macos/tests/PipxPackages.Tests.ps1
Normal file
@@ -0,0 +1,7 @@
|
||||
Describe "PipxPackages" {
|
||||
$pipxToolset = Get-ToolsetValue "pipx"
|
||||
$testCases = $pipxToolset | ForEach-Object { @{package = $_.package; cmd = $_.cmd} }
|
||||
It "<package>" -TestCases $testCases {
|
||||
"$cmd" | Should -ReturnZeroExitCode
|
||||
}
|
||||
}
|
||||
@@ -32,6 +32,10 @@ Describe "Python" {
|
||||
"pip3 --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
|
||||
It "Pipx is available" {
|
||||
"pipx --version" | Should -ReturnZeroExitCode
|
||||
}
|
||||
|
||||
It "Pip 3 and Python 3 came from the same brew formula" {
|
||||
$pip3Path = Split-Path (readlink (which pip3))
|
||||
$python3Path = Split-Path (readlink (which python3))
|
||||
|
||||
@@ -194,5 +194,11 @@
|
||||
"3.6"
|
||||
]
|
||||
}
|
||||
],
|
||||
"pipx": [
|
||||
{
|
||||
"package": "yamllint",
|
||||
"cmd": "yamllint --version"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -254,5 +254,11 @@
|
||||
"1.15.*"
|
||||
]
|
||||
}
|
||||
],
|
||||
"pipx": [
|
||||
{
|
||||
"package": "yamllint",
|
||||
"cmd": "yamllint --version"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -22,7 +22,7 @@
|
||||
"6.12.0.93", "6.10.0.106", "6.8.0.123", "6.6.0.166", "6.4.0.208"
|
||||
],
|
||||
"ios-versions": [
|
||||
"14.0.0.0", "13.20.2.2", "13.18.2.1", "13.16.0.13", "13.14.1.39", "13.10.0.21", "13.8.3.0", "13.6.0.12", "13.4.0.2", "13.2.0.47"
|
||||
"14.2.0.12", "14.0.0.0", "13.20.2.2", "13.18.2.1", "13.16.0.13", "13.14.1.39", "13.10.0.21", "13.8.3.0", "13.6.0.12", "13.4.0.2", "13.2.0.47"
|
||||
],
|
||||
"mac-versions": [
|
||||
"6.20.2.2", "6.18.3.2", "6.16.0.13", "6.14.1.39", "6.10.0.21", "6.8.3.0", "6.6.0.12", "6.4.0.2", "6.2.0.47"
|
||||
@@ -30,8 +30,15 @@
|
||||
"android-versions": [
|
||||
"11.0.2.0", "10.3.1.4", "10.2.0.100", "10.1.3.7", "10.0.6.2"
|
||||
],
|
||||
"bundle-default": "latest",
|
||||
"bundle-default": "6_12_1",
|
||||
"bundles": [
|
||||
{
|
||||
"symlink": "6_12_2",
|
||||
"mono":"6.12",
|
||||
"ios": "14.2",
|
||||
"mac": "6.20",
|
||||
"android": "11.0"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_1",
|
||||
"mono":"6.12",
|
||||
@@ -174,5 +181,11 @@
|
||||
"1.15.*"
|
||||
]
|
||||
}
|
||||
],
|
||||
"pipx": [
|
||||
{
|
||||
"package": "yamllint",
|
||||
"cmd": "yamllint --version"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -11,7 +11,7 @@
|
||||
"6.12.0.93"
|
||||
],
|
||||
"ios-versions": [
|
||||
"14.0.0.0", "13.20.2.2"
|
||||
"14.2.0.12", "14.0.0.0", "13.20.2.2"
|
||||
],
|
||||
"mac-versions": [
|
||||
"6.20.2.2"
|
||||
@@ -21,6 +21,13 @@
|
||||
],
|
||||
"bundle-default": "6_12_0",
|
||||
"bundles": [
|
||||
{
|
||||
"symlink": "6_12_2",
|
||||
"mono":"6.12",
|
||||
"ios": "14.2",
|
||||
"mac": "6.20",
|
||||
"android": "11.0"
|
||||
},
|
||||
{
|
||||
"symlink": "6_12_1",
|
||||
"mono":"6.12",
|
||||
@@ -88,5 +95,11 @@
|
||||
"1.15.*"
|
||||
]
|
||||
}
|
||||
],
|
||||
"pipx": [
|
||||
{
|
||||
"package": "yamllint",
|
||||
"cmd": "yamllint --version"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +1,11 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[Ubuntu] [Windows] Boost 1.69.0 will be deprecated on November, 10](https://github.com/actions/virtual-environments/issues/1847) |
|
||||
| [[In Discussion] Git internal tools will be removed from PATH Windows images and replaced with MSYS2 tools](https://github.com/actions/virtual-environments/issues/1525) |
|
||||
***
|
||||
# Microsoft Windows Server 2016 Datacenter
|
||||
- OS Version: 10.0.14393 Build 3930
|
||||
- Image Version: 20201012.1
|
||||
- OS Version: 10.0.14393 Build 3986
|
||||
- Image Version: 20201020.1
|
||||
|
||||
## Installed Software
|
||||
### Language and Runtime
|
||||
@@ -14,7 +15,7 @@
|
||||
- Java 13.0.2
|
||||
- Python 3.7.9
|
||||
- Ruby 2.5.8p224
|
||||
- Go 1.14.9
|
||||
- Go 1.14.10
|
||||
- PHP 7.4.11
|
||||
- Julia 1.5.2
|
||||
- Perl 5.32.0
|
||||
@@ -25,46 +26,46 @@
|
||||
- Vcpkg 2020.06.15
|
||||
- NPM 6.14.8
|
||||
- Yarn 1.22.10
|
||||
- pip 20.2.3 (python 3.7)
|
||||
- Miniconda 4.6.14
|
||||
- pip 20.2.4 (python 3.7)
|
||||
- Miniconda 4.8.3
|
||||
- RubyGems 3.1.4
|
||||
- Helm 3.3.4
|
||||
- Composer 1.10.13
|
||||
- Composer 1.10.15
|
||||
- NuGet 5.7.0.6726
|
||||
|
||||
### Project Management
|
||||
- Ant 1.10.9
|
||||
- Maven 3.6.3
|
||||
- Gradle 6.6
|
||||
- Gradle 6.7
|
||||
- sbt 1.4.0
|
||||
|
||||
### Tools
|
||||
- azcopy 10.6.0
|
||||
- Bazel 3.6.0
|
||||
- Bazelisk 1.7.1
|
||||
- Bazel 3.7.0
|
||||
- Bazelisk 1.7.3
|
||||
- CMake 3.18.4
|
||||
- CodeQL Action Bundle 2.2.5
|
||||
- CodeQL Action Bundle 2.3.0
|
||||
- R 4.0.3
|
||||
- Docker 19.03.12
|
||||
- Docker-compose 1.27.2
|
||||
- Git 2.28.0
|
||||
- Git LFS 2.11.0
|
||||
- Google Cloud SDK 313.0.1
|
||||
- Docker-compose 1.27.4
|
||||
- Git 2.29.0
|
||||
- Git LFS 2.12.0
|
||||
- Google Cloud SDK 315.0.0
|
||||
- InnoSetup 6.0.5
|
||||
- jq 1.6
|
||||
- Kubectl 1.19.1
|
||||
- Kubectl 1.19.3
|
||||
- Kind 0.9.0
|
||||
- Mingw-w64 8.1.0
|
||||
- Mercurial 5.0
|
||||
- NSIS v3.06.1
|
||||
- Newman 5.2.0
|
||||
- OpenSSL 1.1.1
|
||||
- Packer 1.6.3
|
||||
- Pulumi v2.11.2
|
||||
- Packer 1.6.4
|
||||
- Pulumi v2.12.0
|
||||
- Subversion (SVN) 1.14.0
|
||||
- ghc 8.10.2
|
||||
- Cabal 3.2.0.0
|
||||
- Stack 2.3.3
|
||||
- Stack 2.5.1
|
||||
- WinAppDriver 1.1.1809.18001
|
||||
- zstd 1.4.5
|
||||
- VSWhere 2.8.4
|
||||
@@ -72,12 +73,12 @@
|
||||
- yamllint 1.25.0
|
||||
|
||||
### CLI Tools
|
||||
- Azure CLI 2.12.1
|
||||
- Azure CLI 2.13.0
|
||||
- Azure DevOps CLI extension 0.18.0
|
||||
- Azure Dev Spaces CLI 1.0.20200921.3
|
||||
- AWS CLI 2.0.56
|
||||
- AWS CLI 2.0.57
|
||||
- AWS SAM CLI 1.6.2
|
||||
- AWS Session Manager CLI 1.1.61.0
|
||||
- AWS Session Manager CLI 1.2.7.0
|
||||
- Alibaba Cloud CLI 3.0.60
|
||||
- Cloud Foundry CLI 6.53.0
|
||||
- Hub CLI 2.14.2
|
||||
@@ -93,11 +94,11 @@
|
||||
- cargo-outdated v0.9.11
|
||||
|
||||
### Browsers and webdrivers
|
||||
- Google Chrome 86.0.4240.75
|
||||
- Google Chrome 86.0.4240.111
|
||||
- Chrome Driver 86.0.4240.22
|
||||
- Microsoft Edge 86.0.622.38
|
||||
- Microsoft Edge Driver 86.0.622.38
|
||||
- Mozilla Firefox 81.0.1
|
||||
- Microsoft Edge 86.0.622.48
|
||||
- Microsoft Edge Driver 86.0.622.48
|
||||
- Mozilla Firefox 82.0
|
||||
- Gecko Driver 0.27.0
|
||||
- IE Driver 3.150.1.0
|
||||
|
||||
@@ -137,8 +138,8 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| 1.11.13 | x64 | GOROOT_1_11_X64 |
|
||||
| 1.12.17 | x64 | GOROOT_1_12_X64 |
|
||||
| 1.13.15 | x64 | GOROOT_1_13_X64 |
|
||||
| 1.14.9 (Default) | x64 | GOROOT_1_14_X64 |
|
||||
| 1.15.2 | x64 | GOROOT_1_15_X64 |
|
||||
| 1.14.10 (Default) | x64 | GOROOT_1_14_X64 |
|
||||
| 1.15.3 | x64 | GOROOT_1_15_X64 |
|
||||
|
||||
|
||||
#### Node
|
||||
@@ -147,7 +148,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| 8.17.0 | x64 |
|
||||
| 10.22.1 | x64 |
|
||||
| 12.19.0 | x64 |
|
||||
| 14.13.1 | x64 |
|
||||
| 14.14.0 | x64 |
|
||||
|
||||
|
||||
#### Python
|
||||
@@ -158,6 +159,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| 3.6.8 | x64, x86 |
|
||||
| 3.7.9 (Default) | x64, x86 |
|
||||
| 3.8.6 | x64, x86 |
|
||||
| 3.9.0 | x64, x86 |
|
||||
|
||||
|
||||
#### Ruby
|
||||
@@ -200,6 +202,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
|
||||
### Database tools
|
||||
- Azure CosmosDb Emulator 2.11.6.0
|
||||
- DacFx 15.0.4897.1
|
||||
- SQLPS 1.0
|
||||
- MySQL 5.7.21.0
|
||||
|
||||
@@ -207,7 +210,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
### Visual Studio Enterprise 2017
|
||||
| Name | Version | Path |
|
||||
| ----------------------------- | --------------- | -------------------------------------------------------------- |
|
||||
| Visual Studio Enterprise 2017 | 15.9.28307.1259 | C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise |
|
||||
| Visual Studio Enterprise 2017 | 15.9.28307.1274 | C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise |
|
||||
|
||||
#### Workloads, components and extensions:
|
||||
|
||||
@@ -476,20 +479,20 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
|
||||
### .NET Core SDK
|
||||
`Location C:\Program Files\dotnet\sdk`
|
||||
- 1.1.14 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.508 2.1.509 2.1.510 2.1.511 2.1.512 2.1.513 2.1.514 2.1.515 2.1.516 2.1.517 2.1.518 2.1.602 2.1.603 2.1.604 2.1.605 2.1.606 2.1.607 2.1.608 2.1.609 2.1.610 2.1.611 2.1.612 2.1.613 2.1.614 2.1.615 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 2.1.809 2.1.810 3.1.100 3.1.101 3.1.102 3.1.103 3.1.104 3.1.105 3.1.106 3.1.107 3.1.108 3.1.200 3.1.201 3.1.202 3.1.300 3.1.301 3.1.302 3.1.401 3.1.402
|
||||
- 1.1.14 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.508 2.1.509 2.1.510 2.1.511 2.1.512 2.1.513 2.1.514 2.1.515 2.1.516 2.1.517 2.1.518 2.1.519 2.1.602 2.1.603 2.1.604 2.1.605 2.1.606 2.1.607 2.1.608 2.1.609 2.1.610 2.1.611 2.1.612 2.1.613 2.1.614 2.1.615 2.1.616 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 2.1.809 2.1.810 2.1.811 3.1.100 3.1.101 3.1.102 3.1.103 3.1.104 3.1.105 3.1.106 3.1.107 3.1.108 3.1.109 3.1.200 3.1.201 3.1.202 3.1.300 3.1.301 3.1.302 3.1.401 3.1.402 3.1.403
|
||||
|
||||
### .NET Core Runtime
|
||||
`Location: C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All`
|
||||
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22
|
||||
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22 2.1.23
|
||||
|
||||
`Location: C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App`
|
||||
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8
|
||||
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22 2.1.23 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9
|
||||
|
||||
`Location: C:\Program Files\dotnet\shared\Microsoft.NETCore.App`
|
||||
- 1.0.16 1.1.13 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8
|
||||
- 1.0.16 1.1.13 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22 2.1.23 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9
|
||||
|
||||
`Location: C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App`
|
||||
- 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8
|
||||
- 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9
|
||||
|
||||
### .NET Framework
|
||||
`Type: Developer Pack`
|
||||
@@ -518,7 +521,7 @@ All other versions are saved but not installed.
|
||||
| Pester | 3.4.0<br>5.0.4 |
|
||||
| PowerShellGet | 1.0.0.1<br>2.2.4.1<br>2.2.5 |
|
||||
| PSWindowsUpdate | 2.2.0.2 |
|
||||
| SqlServer | 21.1.18228 |
|
||||
| SqlServer | 21.1.18229 |
|
||||
| VSSetup | 2.2.16 |
|
||||
|
||||
### Android
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[Ubuntu] [Windows] Boost 1.69.0 will be deprecated on November, 10](https://github.com/actions/virtual-environments/issues/1847) |
|
||||
| [[In Discussion] Git internal tools will be removed from PATH Windows images and replaced with MSYS2 tools](https://github.com/actions/virtual-environments/issues/1525) |
|
||||
***
|
||||
# Microsoft Windows Server 2019 Datacenter
|
||||
- OS Version: 10.0.17763 Build 1457
|
||||
- Image Version: 20201011.1
|
||||
- OS Version: 10.0.17763 Build 1518
|
||||
- Image Version: 20201021.0
|
||||
|
||||
## Enabled windows optional features
|
||||
- Windows Subsystem for Linux
|
||||
@@ -17,7 +18,7 @@
|
||||
- Java 13.0.2
|
||||
- Python 3.7.9
|
||||
- Ruby 2.5.8p224
|
||||
- Go 1.14.9
|
||||
- Go 1.14.10
|
||||
- PHP 7.4.11
|
||||
- Julia 1.5.2
|
||||
- Perl 5.32.0
|
||||
@@ -28,46 +29,46 @@
|
||||
- Vcpkg 2020.06.15
|
||||
- NPM 6.14.8
|
||||
- Yarn 1.22.10
|
||||
- pip 20.2.3 (python 3.7)
|
||||
- Miniconda 4.6.14
|
||||
- pip 20.2.4 (python 3.7)
|
||||
- Miniconda 4.8.3
|
||||
- RubyGems 3.1.4
|
||||
- Helm 3.3.4
|
||||
- Composer 1.10.13
|
||||
- Composer 1.10.15
|
||||
- NuGet 5.7.0.6726
|
||||
|
||||
### Project Management
|
||||
- Ant 1.10.9
|
||||
- Maven 3.6.3
|
||||
- Gradle 6.6
|
||||
- sbt 1.4.0
|
||||
- Gradle 6.7
|
||||
- sbt 1.4.1
|
||||
|
||||
### Tools
|
||||
- azcopy 10.6.0
|
||||
- Bazel 3.6.0
|
||||
- Bazelisk 1.7.1
|
||||
- Bazel 3.7.0
|
||||
- Bazelisk 1.7.3
|
||||
- CMake 3.18.4
|
||||
- CodeQL Action Bundle 2.2.5
|
||||
- CodeQL Action Bundle 2.3.0
|
||||
- R 4.0.3
|
||||
- Docker 19.03.12
|
||||
- Docker-compose 1.27.2
|
||||
- Git 2.28.0
|
||||
- Git LFS 2.11.0
|
||||
- Google Cloud SDK 313.0.1
|
||||
- Docker-compose 1.27.4
|
||||
- Git 2.29.0
|
||||
- Git LFS 2.12.0
|
||||
- Google Cloud SDK 315.0.0
|
||||
- InnoSetup 6.0.5
|
||||
- jq 1.6
|
||||
- Kubectl 1.19.1
|
||||
- Kubectl 1.19.3
|
||||
- Kind 0.9.0
|
||||
- Mingw-w64 8.1.0
|
||||
- Mercurial 5.0
|
||||
- NSIS v3.06.1
|
||||
- Newman 5.2.0
|
||||
- OpenSSL 1.1.1
|
||||
- Packer 1.6.3
|
||||
- Pulumi v2.11.2
|
||||
- Packer 1.6.4
|
||||
- Pulumi v2.12.0
|
||||
- Subversion (SVN) 1.14.0
|
||||
- ghc 8.10.2
|
||||
- Cabal 3.2.0.0
|
||||
- Stack 2.3.3
|
||||
- Stack 2.5.1
|
||||
- WinAppDriver 1.1.1809.18001
|
||||
- zstd 1.4.5
|
||||
- VSWhere 2.8.4
|
||||
@@ -75,12 +76,12 @@
|
||||
- yamllint 1.25.0
|
||||
|
||||
### CLI Tools
|
||||
- Azure CLI 2.12.1
|
||||
- Azure CLI 2.13.0
|
||||
- Azure DevOps CLI extension 0.18.0
|
||||
- Azure Dev Spaces CLI 1.0.20200921.3
|
||||
- AWS CLI 2.0.56
|
||||
- AWS CLI 2.0.58
|
||||
- AWS SAM CLI 1.6.2
|
||||
- AWS Session Manager CLI 1.1.61.0
|
||||
- AWS Session Manager CLI 1.2.7.0
|
||||
- Alibaba Cloud CLI 3.0.60
|
||||
- Cloud Foundry CLI 6.53.0
|
||||
- Hub CLI 2.14.2
|
||||
@@ -96,11 +97,11 @@
|
||||
- cargo-outdated v0.9.11
|
||||
|
||||
### Browsers and webdrivers
|
||||
- Google Chrome 86.0.4240.75
|
||||
- Google Chrome 86.0.4240.111
|
||||
- Chrome Driver 86.0.4240.22
|
||||
- Microsoft Edge 86.0.622.38
|
||||
- Microsoft Edge Driver 86.0.622.38
|
||||
- Mozilla Firefox 81.0.1
|
||||
- Microsoft Edge 86.0.622.48
|
||||
- Microsoft Edge Driver 86.0.622.48
|
||||
- Mozilla Firefox 82.0
|
||||
- Gecko Driver 0.27.0
|
||||
- IE Driver 3.150.1.0
|
||||
|
||||
@@ -140,8 +141,8 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| 1.11.13 | x64 | GOROOT_1_11_X64 |
|
||||
| 1.12.17 | x64 | GOROOT_1_12_X64 |
|
||||
| 1.13.15 | x64 | GOROOT_1_13_X64 |
|
||||
| 1.14.9 (Default) | x64 | GOROOT_1_14_X64 |
|
||||
| 1.15.2 | x64 | GOROOT_1_15_X64 |
|
||||
| 1.14.10 (Default) | x64 | GOROOT_1_14_X64 |
|
||||
| 1.15.3 | x64 | GOROOT_1_15_X64 |
|
||||
|
||||
|
||||
#### Node
|
||||
@@ -150,7 +151,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| 8.17.0 | x64 |
|
||||
| 10.22.1 | x64 |
|
||||
| 12.19.0 | x64 |
|
||||
| 14.13.1 | x64 |
|
||||
| 14.14.0 | x64 |
|
||||
|
||||
|
||||
#### Python
|
||||
@@ -161,6 +162,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| 3.6.8 | x64, x86 |
|
||||
| 3.7.9 (Default) | x64, x86 |
|
||||
| 3.8.6 | x64, x86 |
|
||||
| 3.9.0 | x64, x86 |
|
||||
|
||||
|
||||
#### Ruby
|
||||
@@ -203,20 +205,21 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
|
||||
### Database tools
|
||||
- Azure CosmosDb Emulator 2.11.6.0
|
||||
- DacFx 15.0.4897.1
|
||||
- SQLPS 1.0
|
||||
- MySQL 5.7.21.0
|
||||
|
||||
|
||||
### Visual Studio Enterprise 2019
|
||||
| Name | Version | Path |
|
||||
| ----------------------------- | -------------- | -------------------------------------------------------------- |
|
||||
| Visual Studio Enterprise 2019 | 16.7.30523.141 | C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise |
|
||||
| Name | Version | Path |
|
||||
| ----------------------------- | ------------- | -------------------------------------------------------------- |
|
||||
| Visual Studio Enterprise 2019 | 16.7.30611.23 | C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise |
|
||||
|
||||
#### Workloads, components and extensions:
|
||||
|
||||
| Package | Version |
|
||||
| ------------------------------------------------------------------------- | -------------- |
|
||||
| Component.Android.NDK.R16B | 16.7.30521.138 |
|
||||
| Component.Android.NDK.R16B | 16.7.30611.6 |
|
||||
| Component.Android.SDK25.Private | 16.0.28625.61 |
|
||||
| Component.Android.SDK28 | 16.2.29003.222 |
|
||||
| Component.Ant | 1.9.3.8 |
|
||||
@@ -268,10 +271,10 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
| Microsoft.Net.ComponentGroup.4.7.DeveloperTools | 16.3.29207.166 |
|
||||
| Microsoft.Net.ComponentGroup.DevelopmentPrerequisites | 16.3.29207.166 |
|
||||
| Microsoft.Net.ComponentGroup.TargetingPacks.Common | 16.0.28516.191 |
|
||||
| Microsoft.Net.Core.Component.SDK.2.1 | 16.7.30428.286 |
|
||||
| Microsoft.Net.Core.Component.SDK.2.1 | 16.7.30611.6 |
|
||||
| Microsoft.NetCore.Component.DevelopmentTools | 16.5.29721.120 |
|
||||
| Microsoft.NetCore.Component.Runtime.3.1 | 16.7.30428.286 |
|
||||
| Microsoft.NetCore.Component.SDK | 16.7.30428.286 |
|
||||
| Microsoft.NetCore.Component.Runtime.3.1 | 16.7.30611.6 |
|
||||
| Microsoft.NetCore.Component.SDK | 16.7.30611.6 |
|
||||
| Microsoft.NetCore.Component.Web | 16.5.29721.120 |
|
||||
| Microsoft.VisualStudio.Component.AppInsights.Tools | 16.5.29515.121 |
|
||||
| Microsoft.VisualStudio.Component.AspNet45 | 16.0.28315.86 |
|
||||
@@ -459,20 +462,20 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
|
||||
|
||||
### .NET Core SDK
|
||||
`Location C:\Program Files\dotnet\sdk`
|
||||
- 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.508 2.1.509 2.1.510 2.1.511 2.1.512 2.1.513 2.1.514 2.1.515 2.1.516 2.1.517 2.1.518 2.1.602 2.1.603 2.1.604 2.1.605 2.1.606 2.1.607 2.1.608 2.1.609 2.1.610 2.1.611 2.1.612 2.1.613 2.1.614 2.1.615 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 2.1.809 2.1.810 3.1.100 3.1.101 3.1.102 3.1.103 3.1.104 3.1.105 3.1.106 3.1.107 3.1.108 3.1.200 3.1.201 3.1.202 3.1.300 3.1.301 3.1.302 3.1.401 3.1.402
|
||||
- 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.508 2.1.509 2.1.510 2.1.511 2.1.512 2.1.513 2.1.514 2.1.515 2.1.516 2.1.517 2.1.518 2.1.519 2.1.602 2.1.603 2.1.604 2.1.605 2.1.606 2.1.607 2.1.608 2.1.609 2.1.610 2.1.611 2.1.612 2.1.613 2.1.614 2.1.615 2.1.616 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 2.1.809 2.1.810 2.1.811 3.1.100 3.1.101 3.1.102 3.1.103 3.1.104 3.1.105 3.1.106 3.1.107 3.1.108 3.1.109 3.1.200 3.1.201 3.1.202 3.1.300 3.1.301 3.1.302 3.1.401 3.1.402 3.1.403
|
||||
|
||||
### .NET Core Runtime
|
||||
`Location: C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All`
|
||||
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22
|
||||
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22 2.1.23
|
||||
|
||||
`Location: C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App`
|
||||
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8
|
||||
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22 2.1.23 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9
|
||||
|
||||
`Location: C:\Program Files\dotnet\shared\Microsoft.NETCore.App`
|
||||
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8
|
||||
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 2.1.21 2.1.22 2.1.23 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9
|
||||
|
||||
`Location: C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App`
|
||||
- 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8
|
||||
- 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9
|
||||
|
||||
### .NET Framework
|
||||
`Type: Developer Pack`
|
||||
@@ -501,7 +504,7 @@ All other versions are saved but not installed.
|
||||
| Pester | 3.4.0<br>5.0.4 |
|
||||
| PowerShellGet | 1.0.0.1<br>2.2.4.1<br>2.2.5 |
|
||||
| PSWindowsUpdate | 2.2.0.2 |
|
||||
| SqlServer | 21.1.18228 |
|
||||
| SqlServer | 21.1.18229 |
|
||||
| VSSetup | 2.2.16 |
|
||||
|
||||
### Android
|
||||
|
||||
23
images/win/scripts/Installers/Configure-Shell.ps1
Normal file
23
images/win/scripts/Installers/Configure-Shell.ps1
Normal file
@@ -0,0 +1,23 @@
|
||||
# Create shells folder
|
||||
$shellPath = "C:\shells"
|
||||
New-Item -Path $shellPath -ItemType Directory | Out-Null
|
||||
|
||||
# sh and bash <--> C:\msys64\usr\bin\bash.exe
|
||||
New-Item -ItemType SymbolicLink -Path "$shellPath\bash.exe" -Target "C:\msys64\usr\bin\bash.exe" | Out-Null
|
||||
New-Item -ItemType SymbolicLink -Path "$shellPath\sh.exe" -Target "C:\msys64\usr\bin\sh.exe" | Out-Null
|
||||
|
||||
# WSL is available on Windows Server 2019
|
||||
if (Test-IsWin19)
|
||||
{
|
||||
# winbash <--> C:\Windows\System32\bash.exe
|
||||
New-Item -ItemType SymbolicLink -Path "$shellPath\winbash.exe" -Target "$env:SystemRoot\System32\bash.exe" | Out-Null
|
||||
}
|
||||
|
||||
# gitbash <--> C:\Program Files\Git\bin\bash.exe
|
||||
New-Item -ItemType SymbolicLink -Path "$shellPath\gitbash.exe" -Target "$env:ProgramFiles\Git\bin\bash.exe" | Out-Null
|
||||
|
||||
# msysbash <--> C:\msys64\usr\bin\bash.exe
|
||||
New-Item -ItemType SymbolicLink -Path "$shellPath\msysbash.exe" -Target "C:\msys64\usr\bin\bash.exe" | Out-Null
|
||||
|
||||
# Add shells to PATH
|
||||
Add-MachinePathItem $shellPath
|
||||
@@ -30,3 +30,7 @@ New-Item -Path $winInstallDir -ItemType Directory -Force
|
||||
|
||||
# Remove AllUsersAllHosts profile
|
||||
Remove-Item $profile.AllUsersAllHosts -Force
|
||||
|
||||
# Clean yarn and npm cache
|
||||
yarn cache clean
|
||||
npm cache clean --force
|
||||
@@ -128,11 +128,7 @@ if (Test-IsWin19) {
|
||||
}
|
||||
|
||||
# Expand disk size of OS drive
|
||||
New-Item -Path d:\ -Name cmds.txt -ItemType File -Force
|
||||
Add-Content -Path d:\cmds.txt "SELECT VOLUME=C`r`nEXTEND"
|
||||
|
||||
$expandResult = (diskpart /s 'd:\cmds.txt')
|
||||
Write-Host $expandResult
|
||||
|
||||
Write-Host "Disk sizes after expansion"
|
||||
wmic logicaldisk get size,freespace,caption
|
||||
$driveLetter = "C"
|
||||
$size = Get-PartitionSupportedSize -DriveLetter $driveLetter
|
||||
Resize-Partition -DriveLetter $driveLetter -Size $size.SizeMax
|
||||
Get-Volume | Select-Object DriveLetter, SizeRemaining, Size | Sort-Object DriveLetter
|
||||
@@ -26,7 +26,7 @@ Install-Binary -Url $downloadUrl `
|
||||
"/SP-", `
|
||||
"/CLOSEAPPLICATIONS", `
|
||||
"/RESTARTAPPLICATIONS", `
|
||||
"/o:PathOption=CmdTools", `
|
||||
"/o:PathOption=Cmd", `
|
||||
"/o:BashTerminalOption=ConHost", `
|
||||
"/o:EnableSymlinks=Enabled", `
|
||||
"/COMPONENTS=gitlfs")
|
||||
@@ -36,15 +36,5 @@ Choco-Install -PackageName hub
|
||||
# Disable GCM machine-wide
|
||||
[Environment]::SetEnvironmentVariable("GCM_INTERACTIVE", "Never", [System.EnvironmentVariableTarget]::Machine)
|
||||
|
||||
Add-MachinePathItem "C:\Program Files\Git\bin"
|
||||
|
||||
if (Test-IsWin16) {
|
||||
$env:Path += ";$env:ProgramFiles\Git\usr\bin\"
|
||||
}
|
||||
|
||||
# Add well-known SSH host keys to ssh_known_hosts
|
||||
ssh-keyscan -t rsa github.com >> "C:\Program Files\Git\etc\ssh\ssh_known_hosts"
|
||||
ssh-keyscan -t rsa ssh.dev.azure.com >> "C:\Program Files\Git\etc\ssh\ssh_known_hosts"
|
||||
|
||||
Invoke-PesterTests -TestFile "Git" -TestName "Git"
|
||||
Invoke-PesterTests -TestFile "CLI.Tools" -TestName "Hub CLI"
|
||||
|
||||
@@ -7,7 +7,7 @@ Choco-Install -PackageName mingw
|
||||
|
||||
# Make a copy of mingw32-make.exe to make.exe, which is a more discoverable name
|
||||
# and so the same command line can be used on Windows as on macOS and Linux
|
||||
$path = where.exe mingw32-make.exe | Get-Item
|
||||
$path = Get-Command mingw32-make.exe -CommandType All | Where-Object { $_.Path.Contains("C:\ProgramData\Chocolatey") } | Get-Item
|
||||
Copy-Item -Path $path -Destination (Join-Path $path.Directory 'make.exe')
|
||||
|
||||
Invoke-PesterTests -TestFile "Tools" -TestName "Mingw64"
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user