diff --git a/helpers/GenerateResourcesAndImage.ps1 b/helpers/GenerateResourcesAndImage.ps1 index 57c4675d..67858841 100644 --- a/helpers/GenerateResourcesAndImage.ps1 +++ b/helpers/GenerateResourcesAndImage.ps1 @@ -16,27 +16,32 @@ Function Get-PackerTemplatePath { [ImageType] $ImageType ) - $relativePath = "N/A" - switch ($ImageType) { ([ImageType]::Windows2016) { - $relativePath = "\images\win\windows2016.json" + $relativeTemplatePath = Join-Path "win" "windows2016.json" } ([ImageType]::Windows2019) { - $relativePath = "\images\win\windows2019.json" + $relativeTemplatePath = Join-Path "win" "windows2019.json" } ([ImageType]::Ubuntu1604) { - $relativePath = "\images\linux\ubuntu1604.json" + $relativeTemplatePath = Join-Path "linux" "ubuntu1604.json" } ([ImageType]::Ubuntu1804) { - $relativePath = "\images\linux\ubuntu1804.json" + $relativeTemplatePath = Join-Path "linux" "ubuntu1804.json" } ([ImageType]::Ubuntu2004) { - $relativePath = "\images\linux\ubuntu2004.json" + $relativeTemplatePath = Join-Path "linux" "ubuntu2004.json" } + default { throw "Unknown type of image" } } - return $RepositoryRoot + $relativePath; + $imageTemplatePath = [IO.Path]::Combine($RepositoryRoot, "images", $relativeTemplatePath) + + if (-not (Test-Path $imageTemplatePath)) { + throw "Template for image '$ImageType' doesn't exist on path '$imageTemplatePath'" + } + + return $imageTemplatePath; } Function Get-LatestCommit { @@ -45,7 +50,7 @@ Function Get-LatestCommit { process { Write-Host "Latest commit:" - git log --pretty=format:"Date: %cd; Commit: %H - %s; Author: %an <%ae>" -1 + git --no-pager log --pretty=format:"Date: %cd; Commit: %H - %s; Author: %an <%ae>" -1 } } @@ -87,12 +92,12 @@ Function GenerateResourcesAndImage { [Parameter(Mandatory = $True)] [string] $ResourceGroupName, [Parameter(Mandatory = $True)] - [string] $ImageGenerationRepositoryRoot, - [Parameter(Mandatory = $True)] [ImageType] $ImageType, [Parameter(Mandatory = $True)] [string] $AzureLocation, [Parameter(Mandatory = $False)] + [string] $ImageGenerationRepositoryRoot = $pwd, + [Parameter(Mandatory = $False)] [int] $SecondsToWaitForServicePrincipalSetup = 30, [Parameter(Mandatory = $False)] [string] $GithubFeedToken, @@ -184,7 +189,12 @@ Function GenerateResourcesAndImage { Get-LatestCommit -ErrorAction SilentlyContinue - packer.exe build -on-error=ask ` + $packerBinary = Get-Command "packer" + if (-not ($packerBinary)) { + throw "'packer' binary is not found on PATH" + } + + & $packerBinary build -on-error=ask ` -var "client_id=$($spClientId)" ` -var "client_secret=$($ServicePrincipalClientSecret)" ` -var "subscription_id=$($SubscriptionId)" ` diff --git a/images.CI/macos/move-vm.ps1 b/images.CI/macos/move-vm.ps1 index 17e6faea..69872140 100644 --- a/images.CI/macos/move-vm.ps1 +++ b/images.CI/macos/move-vm.ps1 @@ -48,12 +48,23 @@ Import-Module $PSScriptRoot\helpers.psm1 -DisableNameChecking # Connection to a vCenter Server system Connect-VCServer -try -{ - Get-VM $VMName | Move-VM -Datastore $TargetDataStore -ErrorAction Stop - Write-Host "VM has been moved successfully to target datastore '$TargetDataStore'" +$vm = Get-VM $VMName + +if ($env:AGENT_JOBSTATUS -eq 'Failed') { + try { + if($vm.PowerState -ne "PoweredOff") { + Stop-VM -VM $vm -Confirm:$false -ErrorAction Stop + } + Set-VM -VM $vm -Name "${VMName}_failed" -Confirm:$false -ErrorAction Stop + Write-Host "VM has been successfully powered off and renamed to [${VMName}_failed]" + } catch { + Write-Host "##vso[task.LogIssue type=error;]Failed to power off and rename VM '$VMName'" + } } -catch -{ + +try { + Move-VM -Vm $vm -Datastore $TargetDataStore -ErrorAction Stop + Write-Host "VM has been moved successfully to target datastore '$TargetDataStore'" +} catch { Write-Host "##vso[task.LogIssue type=error;]Failed to move VM '$VMName' to target datastore '$TargetDataStore'" } \ No newline at end of file diff --git a/images/linux/Ubuntu1604-README.md b/images/linux/Ubuntu1604-README.md index e5cbce80..b4513e8b 100644 --- a/images/linux/Ubuntu1604-README.md +++ b/images/linux/Ubuntu1604-README.md @@ -1,10 +1,10 @@ | Announcements | |-| +| [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) | -| [Clang/LLVM 10 will be set as a default one and Clang/LLVM 6 will be deprecated for Ubuntu 20.04 on September, 23](https://github.com/actions/virtual-environments/issues/1536) | *** # Ubuntu 16.04.7 LTS -- Image Version: 20201012.1 +- Image Version: 20201015.1 ## Installed Software ### Language and Runtime @@ -24,7 +24,7 @@ ### Package Management - Gem 3.1.4 - Helm 3.3.4 -- Homebrew 2.5.5 +- Homebrew 2.5.6 - Miniconda 4.8.3 - Npm 6.14.8 - Pip 8.1.1 @@ -34,7 +34,7 @@ ### Project Management - Ant 1.9.6 -- Gradle 6.6.1 +- Gradle 6.7 - Maven 3.6.3 - Sbt 1.4.0 @@ -44,9 +44,9 @@ - AzCopy10 10.6.0 (available by `azcopy10` alias) - AzCopy7 7.3.0 (available by `azcopy` alias) - Bazel 3.6.0 -- Bazelisk 1.7.1 +- Bazelisk 1.7.2 - CMake 3.17.0 -- CodeQL Action Bundle 2.2.5 +- CodeQL Action Bundle 2.3.0 - curl 7.47.0 - Docker Compose 1.27.4 - Docker-Buildx 0.4.2 @@ -54,23 +54,23 @@ - Git 2.28.0 - Git LFS 2.12.0 - Git-ftp 1.0.2 -- Google Cloud SDK 313.0.1 +- Google Cloud SDK 314.0.0 - Haveged 1.9.1 -- Heroku 7.45.0 +- Heroku 7.46.0 - HHVM (HipHop VM) 4.56.1 - jq 1.5 - Kind 0.9.0 -- Kubectl 1.19.2 +- Kubectl 1.19.3 - Kustomize 3.8.5 - Leiningen 2.9.4 - m4 1.4.17 - Mercurial 4.4.1 -- Minikube 1.13.1 +- Minikube 1.14.0 - Newman 5.2.0 - nvm 0.36.0 - Packer 1.6.4 - PhantomJS 2.1.1 -- Pulumi 2.11.2 +- Pulumi 2.12.0 - R 4.0.3 - Sphinx Open Source Search Server 2.2.9 - SVN 1.9.3 @@ -84,14 +84,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.158 +- AWS CLI Session manager plugin 1.2.7.0 - AWS SAM CLI 1.6.2 -- Azure CLI (azure-cli) 2.12.1 +- 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.6 - oc CLI 4.5.0 - ORAS CLI 0.8.1 - Vercel CLI 20.1.2 @@ -108,13 +108,13 @@ | Tool | Version | | -------- | ----------------------------------------- | | PHP | 5.6.40 7.0.33 7.1.33 7.2.34 7.3.23 7.4.11 | -| Composer | 1.10.13 | +| Composer | 1.10.15 | | 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,11 +133,11 @@ ### Browsers and Drivers - Google Chrome 86.0.4240.75 - ChromeDriver 86.0.4240.22 -- Mozilla Firefox 81.0 +- Mozilla Firefox 81.0.2 - Geckodriver 0.27.0 ### .NET Core 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.0.100 3.0.101 3.0.102 3.0.103 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.0.100 3.0.101 3.0.102 3.0.103 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 ### Az Module - 1.0.0 1.6.0 2.3.2 2.6.0 2.8.0 3.1.0 3.5.0 3.8.0 4.3.0 4.4.0 4.6.0 4.7.0 @@ -184,8 +184,8 @@ - 1.11.13 - 1.12.17 - 1.13.15 -- 1.14.9 -- 1.15.2 +- 1.14.10 +- 1.15.3 #### Boost - 1.69.0 @@ -197,7 +197,7 @@ | Android SDK Platform-Tools | 30.0.4 | | Android SDK Tools | 26.1.1 | | Android SDK Platforms | android-30 (rev 3)
android-29 (rev 5)
android-28 (rev 6)
android-27 (rev 3)
android-26 (rev 2)
android-25 (rev 3)
android-24 (rev 2)
android-23 (rev 3)
android-22 (rev 2)
android-21 (rev 2)
android-20 (rev 2)
android-19 (rev 4)
android-18 (rev 3)
android-17 (rev 3)
android-16 (rev 5)
android-15 (rev 5)
android-14 (rev 4)
android-13 (rev 1)
android-12 (rev 3)
android-11 (rev 2)
android-10 (rev 2) | -| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2
29.0.0 29.0.1 29.0.2 29.0.3
28.0.0 28.0.1 28.0.2 28.0.3
27.0.0 27.0.1 27.0.2 27.0.3
26.0.0 26.0.1 26.0.2 26.0.3
25.0.0 25.0.1 25.0.2 25.0.3
24.0.0 24.0.1 24.0.2 24.0.3
23.0.1 23.0.2 23.0.3 23.0.0
22.0.1 22.0.0
21.1.2 21.0.0 21.0.1 21.0.2 21.1.0 21.1.1
20.0.0
19.1.0 19.0.0 19.0.1 19.0.2 19.0.3
18.0.1 18.1.0 18.1.1
17.0.0 | +| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2
29.0.0 29.0.1 29.0.2 29.0.3
28.0.0 28.0.1 28.0.2 28.0.3
27.0.0 27.0.1 27.0.2 27.0.3
26.0.0 26.0.1 26.0.2 26.0.3
25.0.0 25.0.1 25.0.2 25.0.3
24.0.0 24.0.1 24.0.2 24.0.3
23.0.1 23.0.2 23.0.3
22.0.1
21.1.2
20.0.0
19.1.0 | | Google APIs | addon-google_apis-google-21
addon-google_apis-google-22
addon-google_apis-google-23
addon-google_apis-google-24 | | NDK | 21.3.6528147 | | Android Support Repository | 47.0.0 | diff --git a/images/linux/Ubuntu1804-README.md b/images/linux/Ubuntu1804-README.md index 86137c03..0029ea31 100644 --- a/images/linux/Ubuntu1804-README.md +++ b/images/linux/Ubuntu1804-README.md @@ -1,10 +1,10 @@ | Announcements | |-| +| [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) | -| [Clang/LLVM 10 will be set as a default one and Clang/LLVM 6 will be deprecated for Ubuntu 20.04 on September, 23](https://github.com/actions/virtual-environments/issues/1536) | *** # Ubuntu 18.04.5 LTS -- Image Version: 20201012.1 +- Image Version: 20201015.1 ## Installed Software ### Language and Runtime @@ -24,7 +24,7 @@ ### Package Management - Gem 3.1.4 - Helm 3.3.4 -- Homebrew 2.5.5 +- Homebrew 2.5.6 - Miniconda 4.8.3 - Npm 6.14.8 - Pip 9.0.1 @@ -35,7 +35,7 @@ ### Project Management - Ant 1.10.5 -- Gradle 6.6.1 +- Gradle 6.7 - Maven 3.6.3 - Sbt 1.4.0 @@ -45,10 +45,10 @@ - AzCopy10 10.6.0 (available by `azcopy10` alias) - AzCopy7 7.3.0 (available by `azcopy` alias) - Bazel 3.6.0 -- Bazelisk 1.7.1 +- Bazelisk 1.7.2 - Buildah 1.16.4 - CMake 3.17.0 -- CodeQL Action Bundle 2.2.5 +- CodeQL Action Bundle 2.3.0 - curl 7.58.0 - Docker Compose 1.27.4 - Docker-Buildx 0.4.2 @@ -56,24 +56,24 @@ - Git 2.28.0 - Git LFS 2.12.0 - Git-ftp 1.3.1 -- Google Cloud SDK 313.0.1 +- Google Cloud SDK 314.0.0 - Haveged 1.9.1 -- Heroku 7.45.0 -- HHVM (HipHop VM) 4.78.0 +- Heroku 7.46.0 +- HHVM (HipHop VM) 4.79.0 - jq 1.5 - Kind 0.9.0 -- Kubectl 1.19.2 +- Kubectl 1.19.3 - Kustomize 3.8.5 - Leiningen 2.9.4 - m4 1.4.18 - Mercurial 4.5.3 -- Minikube 1.13.1 +- Minikube 1.14.0 - Newman 5.2.0 - nvm 0.36.0 - Packer 1.6.4 - PhantomJS 2.1.1 - Podman 2.1.1 -- Pulumi 2.11.2 +- Pulumi 2.12.0 - R 4.0.3 - Skopeo 1.2.0 - Sphinx Open Source Search Server 2.2.11 @@ -91,7 +91,7 @@ - AWS CLI 1.18.157 - AWS CLI Session manager plugin 1.1.61.0 - AWS SAM CLI 1.6.2 -- Azure CLI (azure-cli) 2.12.1 +- Azure CLI (azure-cli) 2.13.0 - Azure CLI (azure-devops) 0.18.0 - GitHub CLI 1.1.0 - Hub CLI 2.14.2 @@ -112,7 +112,7 @@ | Tool | Version | | -------- | --------------------------- | | PHP | 7.1.33 7.2.34 7.3.23 7.4.11 | -| Composer | 1.10.13 | +| Composer | 1.10.15 | | PHPUnit | 7.5.20 | ### Haskell @@ -141,7 +141,7 @@ - Geckodriver 0.27.0 ### .NET Core 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.0.100 3.0.101 3.0.102 3.0.103 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.0.100 3.0.101 3.0.102 3.0.103 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 ### Az Module - 1.0.0 1.6.0 2.3.2 2.6.0 2.8.0 3.1.0 3.5.0 3.8.0 4.3.0 4.4.0 4.6.0 4.7.0 @@ -188,27 +188,27 @@ - 1.11.13 - 1.12.17 - 1.13.15 -- 1.14.9 -- 1.15.2 +- 1.14.10 +- 1.15.3 #### Boost - 1.69.0 - 1.72.0 ### Android -| Package Name | Version | -| -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Android SDK Platform-Tools | 30.0.4 | -| Android SDK Tools | 26.1.1 | -| Android SDK Platforms | android-30 (rev 3)
android-29 (rev 5)
android-28 (rev 6)
android-27 (rev 3)
android-26 (rev 2)
android-25 (rev 3)
android-24 (rev 2)
android-23 (rev 3)
android-22 (rev 2)
android-21 (rev 2)
android-20 (rev 2)
android-19 (rev 4)
android-18 (rev 3)
android-17 (rev 3) | -| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2
29.0.0 29.0.1 29.0.2 29.0.3
28.0.0 28.0.1 28.0.2 28.0.3
27.0.0 27.0.1 27.0.2 27.0.3
26.0.0 26.0.1 26.0.2 26.0.3
25.0.0 25.0.1 25.0.2 25.0.3
24.0.0 24.0.1 24.0.2 24.0.3
23.0.1 23.0.2 23.0.3 23.0.0
22.0.1 22.0.0
21.1.2 21.0.0 21.0.1 21.0.2 21.1.0 21.1.1
20.0.0
19.1.0 19.0.0 19.0.1 19.0.2 19.0.3
18.0.1 18.1.0 18.1.1
17.0.0 | -| Google APIs | addon-google_apis-google-21
addon-google_apis-google-22
addon-google_apis-google-23
addon-google_apis-google-24 | -| NDK | 21.3.6528147 | -| Android Support Repository | 47.0.0 | -| Google Play services | 49 | -| Google Repository | 58 | -| SDK Patch Applier v4 | 1 | -| CMake | 3.10.2
3.6.4111459 | +| Package Name | Version | +| -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Android SDK Platform-Tools | 30.0.4 | +| Android SDK Tools | 26.1.1 | +| Android SDK Platforms | android-30 (rev 3)
android-29 (rev 5)
android-28 (rev 6)
android-27 (rev 3)
android-26 (rev 2)
android-25 (rev 3)
android-24 (rev 2)
android-23 (rev 3)
android-22 (rev 2)
android-21 (rev 2)
android-20 (rev 2)
android-19 (rev 4)
android-18 (rev 3)
android-17 (rev 3) | +| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2
29.0.0 29.0.1 29.0.2 29.0.3
28.0.0 28.0.1 28.0.2 28.0.3
27.0.0 27.0.1 27.0.2 27.0.3
26.0.0 26.0.1 26.0.2 26.0.3
25.0.0 25.0.1 25.0.2 25.0.3
24.0.0 24.0.1 24.0.2 24.0.3
23.0.1 23.0.2 23.0.3
22.0.1
21.1.2
20.0.0
19.1.0 | +| Google APIs | addon-google_apis-google-21
addon-google_apis-google-22
addon-google_apis-google-23
addon-google_apis-google-24 | +| NDK | 21.3.6528147 | +| Android Support Repository | 47.0.0 | +| Google Play services | 49 | +| Google Repository | 58 | +| SDK Patch Applier v4 | 1 | +| CMake | 3.10.2
3.6.4111459 | ### Cached Docker images - alpine:3.7 diff --git a/images/linux/Ubuntu2004-README.md b/images/linux/Ubuntu2004-README.md index 02045ace..b192a23a 100644 --- a/images/linux/Ubuntu2004-README.md +++ b/images/linux/Ubuntu2004-README.md @@ -1,10 +1,10 @@ | Announcements | |-| +| [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) | -| [Clang/LLVM 10 will be set as a default one and Clang/LLVM 6 will be deprecated for Ubuntu 20.04 on September, 23](https://github.com/actions/virtual-environments/issues/1536) | *** # Ubuntu 20.04.1 LTS -- Image Version: 20201012.1 +- Image Version: 20201015.1 ## Installed Software ### Language and Runtime @@ -24,7 +24,7 @@ ### Package Management - Gem 3.1.2 - Helm 3.3.4 -- Homebrew 2.5.5 +- Homebrew 2.5.6 - Miniconda 4.8.3 - Npm 6.14.8 - Pip 20.0.2 @@ -35,7 +35,7 @@ ### Project Management - Ant 1.10.7 -- Gradle 6.6.1 +- Gradle 6.7 - Maven 3.6.3 - Sbt 1.4.0 @@ -45,10 +45,10 @@ - AzCopy10 10.6.0 (available by `azcopy10` alias) - AzCopy7 7.3.0 (available by `azcopy` alias) - Bazel 3.6.0 -- Bazelisk 1.7.1 +- Bazelisk 1.7.2 - Buildah 1.16.4 - CMake 3.17.0 -- CodeQL Action Bundle 2.2.5 +- CodeQL Action Bundle 2.3.0 - curl 7.68.0 - Docker Compose 1.27.4 - Docker-Buildx 0.4.2 @@ -56,24 +56,24 @@ - Git 2.28.0 - Git LFS 2.12.0 - Git-ftp 1.6.0 -- Google Cloud SDK 313.0.1 +- Google Cloud SDK 314.0.0 - Haveged 1.9.1 -- Heroku 7.45.0 -- HHVM (HipHop VM) 4.78.0 +- Heroku 7.46.0 +- HHVM (HipHop VM) 4.79.0 - jq 1.6 - Kind 0.9.0 -- Kubectl 1.19.2 +- Kubectl 1.19.3 - Kustomize 3.8.5 - Leiningen 2.9.4 - m4 1.4.18 - Mercurial 5.3.1 -- Minikube 1.13.1 +- Minikube 1.14.0 - Newman 5.2.0 - nvm 0.36.0 - Packer 1.6.4 - PhantomJS 2.1.1 - Podman 2.1.1 -- Pulumi 2.11.2 +- Pulumi 2.12.0 - R 4.0.3 - Skopeo 1.2.0 - Sphinx Open Source Search Server 2.2.11 @@ -91,7 +91,7 @@ - AWS CLI 2.0.56 - AWS CLI Session manager plugin 1.1.61.0 - AWS SAM CLI 1.6.2 -- Azure CLI (azure-cli) 2.12.1 +- Azure CLI (azure-cli) 2.13.0 - Azure CLI (azure-devops) 0.18.0 - GitHub CLI 1.1.0 - Hub CLI 2.14.2 @@ -110,7 +110,7 @@ | Tool | Version | | -------- | ------- | | PHP | 7.4.11 | -| Composer | 1.10.13 | +| Composer | 1.10.15 | | PHPUnit | 7.5.20 | ### Haskell @@ -139,10 +139,10 @@ - Geckodriver 0.27.0 ### .NET Core 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 ### Az Module -- 4.7.0 +- 4.8.0 ### Databases - Postgre SQL 13.0 @@ -182,8 +182,8 @@ - 14.13.1 #### Go -- 1.14.9 -- 1.15.2 +- 1.14.10 +- 1.15.3 ### Android | Package Name | Version | diff --git a/images/macos/macos-10.15-Readme.md b/images/macos/macos-10.15-Readme.md index 7a506d8b..415b41ba 100644 --- a/images/macos/macos-10.15-Readme.md +++ b/images/macos/macos-10.15-Readme.md @@ -1,13 +1,14 @@ | Announcements | |-| +| [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) | -| [Xcode 11.0, 11.1, 11.4.0 will be deprecated on October, 20](https://github.com/actions/virtual-environments/issues/1688) | -| [Remove Xcode 12 beta 6 from MacOS Catalina image in favor of Xcode 12.2 beta 1 on October 13](https://github.com/actions/virtual-environments/issues/1646) | +| [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: 20201003.1 +- Image Version: 20201017.1 ## Installed Software ### Language and Runtime @@ -16,14 +17,14 @@ - 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 - GNU Fortran (Homebrew GCC 9.3.0) 9.3.0 - available by `gfortran-9` alias -- R 4.0.2 -- Node.js v12.18.4 -- NVM 0.35.3 -- NVM - Cached node versions: v6.17.1 v8.17.0 v10.22.1 v12.18.4 v13.14.0 v14.13.0 +- R 4.0.3 +- Node.js v12.19.0 +- NVM 0.36.0 +- 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.5 +- Python 3.8.6 - Ruby 2.6.6p146 -- .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 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 +- .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 - PHP 7.4.11 - julia 1.5.2 @@ -31,28 +32,28 @@ ### Package Management - Vcpkg 2020.06.15 - Pip 19.3.1 (python 2.7) -- Pip 20.1.1 (python 3.8) +- Pip 20.2.3 (python 3.8) - Bundler version 2.1.4 - Carthage 0.36.0 - CocoaPods 1.9.3 -- Homebrew 2.5.2 -- NPM 6.14.6 +- 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.13 +- Composer 1.10.15 ### Project Management - Apache Maven 3.6.3 -- Gradle 6.6.1 +- Gradle 6.7 - Apache Ant(TM) 1.10.9 ### Utilities -- Curl 7.72.0 +- Curl 7.73.0 - Git: 2.28.0 - Git LFS: 2.12.0 -- GitHub CLI: 1.0.0 +- GitHub CLI: 1.1.0 - Hub CLI: 2.14.2 - GNU Wget 1.20.3 - Subversion (SVN) 1.14.0 @@ -60,16 +61,16 @@ - OpenSSL 1.0.2t 10 Sep 2019 `(/usr/local/opt/openssl -> /usr/local/Cellar/openssl@1.0.2t/1.0.2t)` - jq 1.6 - gpg (GnuPG) 2.2.23 -- psql (PostgreSQL) 12.4 -- PostgreSQL 12.4 +- psql (PostgreSQL) 13.0 +- PostgreSQL 13.0 - aria2 1.35.0 - azcopy 10.6.0 - zstd 1.4.5 -- bazel 3.5.1 -- bazelisk 1.6.1 +- bazel 3.6.0 +- bazelisk 1.7.2 - helm v3.3.4+ga61ce56 -- mongo v4.4.0 -- mongod v4.4.0 +- mongo v4.4.1 +- mongod v4.4.1 - 7-Zip 16.02 - Newman 5.2.0 - virtualbox 6.1.14r140239 @@ -78,18 +79,18 @@ ### Tools -- Fastlane 2.162.0 -- Cmake 3.18.3 -- App Center CLI 2.7.1 -- Azure CLI 2.12.1 -- AWS CLI 2.0.54 -- AWS SAM CLI 1.4.0 +- Fastlane 2.163.0 +- Cmake 3.18.4 +- App Center CLI 2.7.2 +- Azure CLI 2.13.0 +- AWS CLI 2.0.57 +- AWS SAM CLI 1.6.2 - AWS Session Manager CLI 1.1.61.0 -- Aliyun CLI 3.0.59 +- Aliyun CLI 3.0.60 - GHCup v0.1.11 -- GHC 8.8.4 +- GHC 8.10.2 - Cabal 3.2.0.0 -- Stack 2.3.3 +- Stack 2.5.1 ### Linters - yamllint 1.25.0 @@ -98,11 +99,11 @@ ### Browsers - Safari 14.0 (15610.1.28.1.9) - SafariDriver 14.0 (15610.1.28.1.9) -- Google Chrome 85.0.4183.121 -- ChromeDriver 85.0.4183.87 -- Microsoft Edge 85.0.564.68 -- MSEdgeDriver 85.0.564.68 -- Mozilla Firefox 81.0.1 +- Google Chrome 86.0.4240.80 +- ChromeDriver 86.0.4240.22 +- Microsoft Edge 85.0.564.70 +- MSEdgeDriver 85.0.564.70 +- Mozilla Firefox 81.0.2 - geckodriver 0.27.0 ### Java @@ -127,6 +128,7 @@ - 3.6.12 - 3.7.9 - 3.8.6 +- 3.9.0 #### PyPy - 2.7.13 [PyPy 7.3.2] @@ -135,23 +137,23 @@ #### Node.js - 8.17.0 - 10.22.1 -- 12.18.4 -- 14.13.0 +- 12.19.0 +- 14.14.0 #### Go - 1.11.13 - 1.12.17 - 1.13.15 -- 1.14.9 -- 1.15.2 +- 1.14.10 +- 1.15.3 ### Rust Tools -- Rust 1.46.0 +- Rust 1.47.0 - Rustup 1.22.1 #### Packages - Bindgen 0.55.1 -- Cbindgen 0.14.6 +- Cbindgen 0.15.0 - Cargo-outdated v0.9.11 - Cargo-audit 0.12.1 @@ -161,7 +163,7 @@ #### PowerShell Modules | Module | Version | | ---------- | ------- | -| Az | 4.7.0 | +| Az | 4.8.0 | | MarkdownPS | 1.9 | | Pester | 5.0.4 | @@ -210,21 +212,21 @@ - NUnit 3.6.1 ### Xcode -| Version | Build | Path | -| -------------- | -------- | ------------------------------- | -| 12.2 | 12B5025f | /Applications/Xcode_12.2.app | -| 12.0 | 12A7209 | /Applications/Xcode_12.app | -| 12.0 | 12A8189n | /Applications/Xcode_12_beta.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 | 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 | #### Xcode Support Tools - xcpretty 0.3.0 @@ -234,57 +236,59 @@ - xctool 0.3.7 #### Installed SDKs -| SDK | SDK Name | Xcode Version | -| ----------------------- | -------------------- | ---------------------------------------------------------------- | -| macOS 10.14 | macosx10.14 | 10.3 | -| macOS 10.15 | macosx10.15 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5, 11.6, 11.7, 12.0 | -| macOS 11.0 | macosx11.0 | 12.0, 12.2 | -| iOS 12.4 | iphoneos12.4 | 10.3 | -| iOS 13.0 | iphoneos13.0 | 11.0 | -| iOS 13.1 | iphoneos13.1 | 11.1 | -| iOS 13.2 | iphoneos13.2 | 11.2.1, 11.3.1 | -| iOS 13.4 | iphoneos13.4 | 11.4, 11.4.1 | -| iOS 13.5 | iphoneos13.5 | 11.5 | -| iOS 13.6 | iphoneos13.6 | 11.6 | -| iOS 13.7 | iphoneos13.7 | 11.7 | -| iOS 14.0 | iphoneos14.0 | 12.0, 12.0 | -| iOS 14.2 | iphoneos14.2 | 12.2 | -| Simulator - iOS 12.4 | iphonesimulator12.4 | 10.3 | -| Simulator - iOS 13.0 | iphonesimulator13.0 | 11.0 | -| Simulator - iOS 13.1 | iphonesimulator13.1 | 11.1 | -| Simulator - iOS 13.2 | iphonesimulator13.2 | 11.2.1, 11.3.1 | -| Simulator - iOS 13.4 | iphonesimulator13.4 | 11.4, 11.4.1 | -| Simulator - iOS 13.5 | iphonesimulator13.5 | 11.5 | -| Simulator - iOS 13.6 | iphonesimulator13.6 | 11.6 | -| Simulator - iOS 13.7 | iphonesimulator13.7 | 11.7 | -| Simulator - iOS 14.0 | iphonesimulator14.0 | 12.0, 12.0 | -| Simulator - iOS 14.2 | iphonesimulator14.2 | 12.2 | -| tvOS 12.4 | appletvos12.4 | 10.3 | -| tvOS 13.0 | appletvos13.0 | 11.0, 11.1 | -| tvOS 13.2 | appletvos13.2 | 11.2.1, 11.3.1 | -| tvOS 13.4 | appletvos13.4 | 11.4, 11.4.1, 11.5, 11.6, 11.7 | -| tvOS 14.0 | appletvos14.0 | 12.0, 12.0 | -| tvOS 14.2 | appletvos14.2 | 12.2 | -| Simulator - tvOS 12.4 | appletvsimulator12.4 | 10.3 | -| Simulator - tvOS 13.0 | appletvsimulator13.0 | 11.0, 11.1 | -| Simulator - tvOS 13.2 | appletvsimulator13.2 | 11.2.1, 11.3.1 | -| Simulator - tvOS 13.4 | appletvsimulator13.4 | 11.4, 11.4.1, 11.5, 11.6, 11.7 | -| Simulator - tvOS 14.0 | appletvsimulator14.0 | 12.0, 12.0 | -| Simulator - tvOS 14.2 | appletvsimulator14.2 | 12.2 | -| watchOS 5.3 | watchos5.3 | 10.3 | -| watchOS 6.0 | watchos6.0 | 11.0, 11.1 | -| watchOS 6.1 | watchos6.1 | 11.2.1, 11.3.1 | -| watchOS 6.2 | watchos6.2 | 11.4, 11.4.1, 11.5, 11.6, 11.7 | -| watchOS 7.0 | watchos7.0 | 12.0, 12.0 | -| watchOS 7.1 | watchos7.1 | 12.2 | -| Simulator - watchOS 5.3 | watchsimulator5.3 | 10.3 | -| Simulator - watchOS 6.0 | watchsimulator6.0 | 11.0, 11.1 | -| Simulator - watchOS 6.1 | watchsimulator6.1 | 11.2.1, 11.3.1 | -| Simulator - watchOS 6.2 | watchsimulator6.2 | 11.4, 11.4.1, 11.5, 11.6, 11.7 | -| Simulator - watchOS 7.0 | watchsimulator7.0 | 12.0, 12.0 | -| Simulator - watchOS 7.1 | watchsimulator7.1 | 12.2 | -| DriverKit 19.0 | driverkit.macosx19.0 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5, 11.6, 11.7, 12.0 | -| DriverKit 20.0 | driverkit.macosx20.0 | 12.0, 12.2 | +| SDK | SDK Name | Xcode Version | +| ----------------------- | -------------------- | ------------------------------------------------------------------------ | +| macOS 10.14 | macosx10.14 | 10.3 | +| macOS 10.15 | macosx10.15 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5, 11.6, 11.7, 12.0.1, 12.1 | +| macOS 11.0 | macosx11.0 | 12.2 | +| iOS 12.4 | iphoneos12.4 | 10.3 | +| iOS 13.0 | iphoneos13.0 | 11.0 | +| iOS 13.1 | iphoneos13.1 | 11.1 | +| iOS 13.2 | iphoneos13.2 | 11.2.1, 11.3.1 | +| iOS 13.4 | iphoneos13.4 | 11.4, 11.4.1 | +| iOS 13.5 | iphoneos13.5 | 11.5 | +| iOS 13.6 | iphoneos13.6 | 11.6 | +| iOS 13.7 | iphoneos13.7 | 11.7 | +| iOS 14.0 | iphoneos14.0 | 12.0.1 | +| iOS 14.1 | iphoneos14.1 | 12.1 | +| iOS 14.2 | iphoneos14.2 | 12.2 | +| Simulator - iOS 12.4 | iphonesimulator12.4 | 10.3 | +| Simulator - iOS 13.0 | iphonesimulator13.0 | 11.0 | +| Simulator - iOS 13.1 | iphonesimulator13.1 | 11.1 | +| Simulator - iOS 13.2 | iphonesimulator13.2 | 11.2.1, 11.3.1 | +| Simulator - iOS 13.4 | iphonesimulator13.4 | 11.4, 11.4.1 | +| Simulator - iOS 13.5 | iphonesimulator13.5 | 11.5 | +| Simulator - iOS 13.6 | iphonesimulator13.6 | 11.6 | +| Simulator - iOS 13.7 | iphonesimulator13.7 | 11.7 | +| Simulator - iOS 14.0 | iphonesimulator14.0 | 12.0.1 | +| Simulator - iOS 14.1 | iphonesimulator14.1 | 12.1 | +| Simulator - iOS 14.2 | iphonesimulator14.2 | 12.2 | +| tvOS 12.4 | appletvos12.4 | 10.3 | +| tvOS 13.0 | appletvos13.0 | 11.0, 11.1 | +| tvOS 13.2 | appletvos13.2 | 11.2.1, 11.3.1 | +| tvOS 13.4 | appletvos13.4 | 11.4, 11.4.1, 11.5, 11.6, 11.7 | +| tvOS 14.0 | appletvos14.0 | 12.0.1, 12.1 | +| tvOS 14.2 | appletvos14.2 | 12.2 | +| Simulator - tvOS 12.4 | appletvsimulator12.4 | 10.3 | +| Simulator - tvOS 13.0 | appletvsimulator13.0 | 11.0, 11.1 | +| Simulator - tvOS 13.2 | appletvsimulator13.2 | 11.2.1, 11.3.1 | +| Simulator - tvOS 13.4 | appletvsimulator13.4 | 11.4, 11.4.1, 11.5, 11.6, 11.7 | +| Simulator - tvOS 14.0 | appletvsimulator14.0 | 12.0.1, 12.1 | +| Simulator - tvOS 14.2 | appletvsimulator14.2 | 12.2 | +| watchOS 5.3 | watchos5.3 | 10.3 | +| watchOS 6.0 | watchos6.0 | 11.0, 11.1 | +| watchOS 6.1 | watchos6.1 | 11.2.1, 11.3.1 | +| watchOS 6.2 | watchos6.2 | 11.4, 11.4.1, 11.5, 11.6, 11.7 | +| watchOS 7.0 | watchos7.0 | 12.0.1, 12.1 | +| watchOS 7.1 | watchos7.1 | 12.2 | +| Simulator - watchOS 5.3 | watchsimulator5.3 | 10.3 | +| Simulator - watchOS 6.0 | watchsimulator6.0 | 11.0, 11.1 | +| Simulator - watchOS 6.1 | watchsimulator6.1 | 11.2.1, 11.3.1 | +| Simulator - watchOS 6.2 | watchsimulator6.2 | 11.4, 11.4.1, 11.5, 11.6, 11.7 | +| Simulator - watchOS 7.0 | watchsimulator7.0 | 12.0.1, 12.1 | +| Simulator - watchOS 7.1 | watchsimulator7.1 | 12.2 | +| DriverKit 19.0 | driverkit.macosx19.0 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5, 11.6, 11.7, 12.0.1, 12.1 | +| DriverKit 20.0 | driverkit.macosx20.0 | 12.2 | #### Installed Simulators | OS | Xcode Version | Simulators | @@ -298,20 +302,21 @@ | iOS 13.5 | 11.5 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | | iOS 13.6 | 11.6 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | | iOS 13.7 | 11.7 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | -| iOS 14.0 | 12.0
12.0 | iPod touch (7th generation)
iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad (8th generation)
iPad Air (3rd generation)
iPad Air (4th generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | -| iOS 14.2 | 12.2 | iPod touch (7th generation)
iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad (8th generation)
iPad Air (3rd generation)
iPad Air (4th generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| iOS 14.0 | 12.0.1 | iPod touch (7th generation)
iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad (8th generation)
iPad Air (3rd generation)
iPad Air (4th generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| iOS 14.1 | 12.1 | iPod touch (7th generation)
iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 12
iPhone 12 mini
iPhone 12 Pro
iPhone 12 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad (8th generation)
iPad Air (3rd generation)
iPad Air (4th generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| iOS 14.2 | 12.2 | iPod touch (7th generation)
iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 12
iPhone 12 mini
iPhone 12 Pro
iPhone 12 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad (8th generation)
iPad Air (3rd generation)
iPad Air (4th generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | | tvOS 12.4 | 10.3 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | | tvOS 13.0 | 11.0
11.1 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | | tvOS 13.2 | 11.2.1 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | | tvOS 13.3 | 11.3.1 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | | tvOS 13.4 | 11.4
11.4.1
11.5
11.6
11.7 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | -| tvOS 14.0 | 12.0
12.0 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | +| tvOS 14.0 | 12.0.1
12.1 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | | tvOS 14.2 | 12.2 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | | watchOS 5.3 | 10.3 | Apple Watch Series 2 - 38mm
Apple Watch Series 2 - 42mm
Apple Watch Series 3 - 38mm
Apple Watch Series 3 - 42mm
Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm | | watchOS 6.0 | 11.0
11.1 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm | | watchOS 6.1 | 11.2.1
11.3.1 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm | | watchOS 6.2 | 11.4
11.4.1
11.5
11.6
11.7 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm | -| watchOS 7.0 | 12.0
12.0 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm
Apple Watch Series 6 - 40mm
Apple Watch Series 6 - 44mm | +| watchOS 7.0 | 12.0.1
12.1 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm
Apple Watch Series 6 - 40mm
Apple Watch Series 6 - 44mm | | watchOS 7.1 | 12.2 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm
Apple Watch Series 6 - 40mm
Apple Watch Series 6 - 44mm | ### Android diff --git a/images/macos/macos-11.0-Readme.md b/images/macos/macos-11.0-Readme.md index 7363eefc..b4776beb 100644 --- a/images/macos/macos-11.0-Readme.md +++ b/images/macos/macos-11.0-Readme.md @@ -1,56 +1,58 @@ | Announcements | |-| -| [Default Xcode will be changed to Xcode 12.0 on October, 20](https://github.com/actions/virtual-environments/issues/1712) | -| [Xcode 11.0, 11.1, 11.4.0 will be deprecated on October, 20](https://github.com/actions/virtual-environments/issues/1688) | -| [Remove Xcode 12 beta 6 from MacOS Catalina image in favor of Xcode 12.2 beta 1 on October 13](https://github.com/actions/virtual-environments/issues/1646) | +| [[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) | +| [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) | +| [Xcode 11.0, 11.1, 11.4.0 will be deprecated on November, 5](https://github.com/actions/virtual-environments/issues/1688) | *** # macOS 11.0 info -- System Version: macOS 11.0 (20A5384c) +- System Version: macOS 11.0 (20A5395g) - Kernel Version: Darwin 20.1.0 -- Image Version: 20201002.1 +- Image Version: 20201020.1 ## 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 - GNU Fortran (Homebrew GCC 9.3.0) 9.3.0 - available by `gfortran-9` alias -- Node.js v12.18.4 -- NVM 0.35.3 -- NVM - Cached node versions: v6.17.1 v8.17.0 v10.22.1 v12.18.4 v13.14.0 v14.13.0 +- Node.js v12.19.0 +- NVM 0.36.0 +- 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.5 +- Python 3.8.6 - 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 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 -- Go 1.15.2 +- .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.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.3 - PHP 7.4.11 - julia 1.5.2 ### Package Management - Vcpkg 2020.06.15 -- Pip 20.1.1 (python 3.8) +- Pip 20.2.3 (python 3.8) - Bundler version 2.1.4 - Carthage 0.36.0 - CocoaPods 1.9.3 -- Homebrew 2.5.2 -- NPM 6.14.6 +- 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.13 +- Composer 1.10.15 ### Project Management - Apache Maven 3.6.3 -- Gradle 6.6.1 +- Gradle 6.7 - Apache Ant(TM) 1.10.9 ### Utilities -- Curl 7.72.0 -- Git: 2.28.0 +- Curl 7.73.0 +- Git: 2.29.0 - Git LFS: 2.12.0 -- GitHub CLI: 1.0.0 +- GitHub CLI: 1.1.0 - Hub CLI: 2.14.2 - GNU Wget 1.20.3 - Subversion (SVN) 1.14.0 @@ -58,45 +60,45 @@ - OpenSSL 1.0.2t 10 Sep 2019 `(/usr/local/opt/openssl -> /usr/local/Cellar/openssl@1.0.2t/1.0.2t)` - jq 1.6 - gpg (GnuPG) 2.2.23 -- psql (PostgreSQL) 12.4 -- PostgreSQL 12.4 +- psql (PostgreSQL) 13.0 +- PostgreSQL 13.0 - aria2 1.35.0 - azcopy 10.6.0 - zstd 1.4.5 -- bazel 3.5.1 -- bazelisk 1.6.1 +- bazel 3.7.0 +- bazelisk 1.7.3 - helm v3.3.4+ga61ce56 -- mongo v4.4.0 -- mongod v4.4.0 +- mongo v4.4.1 +- mongod v4.4.1 - 7-Zip 16.02 - Newman 5.2.0 ### Tools -- Fastlane 2.162.0 -- Cmake 3.18.3 -- App Center CLI 2.7.1 -- Azure CLI 2.12.1 -- AWS CLI 2.0.54 -- AWS SAM CLI 1.4.0 +- Fastlane 2.164.0 +- Cmake 3.18.4 +- App Center CLI 2.7.2 +- Azure CLI 2.13.0 +- AWS CLI 2.0.57 +- AWS SAM CLI 1.6.2 - AWS Session Manager CLI 1.1.61.0 -- Aliyun CLI 3.0.59 +- Aliyun CLI 3.0.60 - GHCup v0.1.11 -- GHC 8.8.4 +- GHC 8.10.2 - Cabal 3.2.0.0 -- Stack 2.3.3 +- Stack 2.5.1 ### Linters -- yamllint 1.24.2 +- yamllint 1.25.0 - SwiftLint 0.40.3 ### Browsers -- Safari 14.0.1 (16610.2.6.1.6) -- SafariDriver 14.0.1 (16610.2.6.1.6) -- Google Chrome 85.0.4183.121 -- ChromeDriver 85.0.4183.87 -- Microsoft Edge 85.0.564.68 -- MSEdgeDriver 85.0.564.63 -- Mozilla Firefox 81.0.1 +- Safari 14.0.1 (16610.2.8.1.1) +- SafariDriver 14.0.1 (16610.2.8.1.1) +- Google Chrome 86.0.4240.80 +- ChromeDriver 86.0.4240.22 +- Microsoft Edge 85.0.564.70 +- MSEdgeDriver 85.0.564.70 +- Mozilla Firefox 81.0.2 - geckodriver 0.27.0 ### Java @@ -114,22 +116,23 @@ #### Python - 3.7.9 - 3.8.6 +- 3.9.0 #### Node.js - 10.22.1 -- 12.18.4 -- 14.13.0 +- 12.19.0 +- 14.14.0 #### Go -- 1.15.2 +- 1.15.3 ### Rust Tools -- Rust 1.46.0 +- Rust 1.47.0 - Rustup 1.22.1 #### Packages - Bindgen 0.55.1 -- Cbindgen 0.14.6 +- Cbindgen 0.15.0 - Cargo-outdated v0.9.11 - Cargo-audit 0.12.1 @@ -139,7 +142,7 @@ #### PowerShell Modules | Module | Version | | ---------- | ------- | -| Az | 4.7.0 | +| Az | 4.8.0 | | MarkdownPS | 1.9 | | Pester | 5.0.4 | @@ -166,8 +169,8 @@ ### Xcode | Version | Build | Path | | -------------- | -------- | ---------------------------- | -| 12.2 | 12B5025f | /Applications/Xcode_12.2.app | -| 12.0 | 12A8189n | /Applications/Xcode_12.app | +| 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 @@ -177,28 +180,41 @@ #### Installed SDKs | SDK | SDK Name | Xcode Version | | ----------------------- | -------------------- | ------------- | -| macOS 10.15 | macosx10.15 | 11.7 | -| macOS 11.0 | macosx11.0 | 12.0, 12.2 | +| macOS 10.15 | macosx10.15 | 11.7, 12.1 | +| macOS 11.0 | macosx11.0 | 12.2 | | iOS 13.7 | iphoneos13.7 | 11.7 | -| iOS 14.0 | iphoneos14.0 | 12.0 | +| 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.0 | iphonesimulator14.0 | 12.0 | +| 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.0 | +| 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.0 | +| 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.0 | +| 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.0 | +| Simulator - watchOS 7.0 | watchsimulator7.0 | 12.1 | | Simulator - watchOS 7.1 | watchsimulator7.1 | 12.2 | -| DriverKit 19.0 | driverkit.macosx19.0 | 11.7 | -| DriverKit 20.0 | driverkit.macosx20.0 | 12.0, 12.2 | +| DriverKit 19.0 | driverkit.macosx19.0 | 11.7, 12.1 | +| DriverKit 20.0 | driverkit.macosx20.0 | 12.2 | + +#### Installed Simulators +| OS | Xcode Version | Simulators | +| ----------- | ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| iOS 13.7 | 11.7 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| iOS 14.1 | 12.1 | iPod touch (7th generation)
iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 12
iPhone 12 mini
iPhone 12 Pro
iPhone 12 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad (8th generation)
iPad Air (3rd generation)
iPad Air (4th generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| iOS 14.2 | 12.2 | iPod touch (7th generation)
iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 12
iPhone 12 mini
iPhone 12 Pro
iPhone 12 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad (8th generation)
iPad Air (3rd generation)
iPad Air (4th generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| tvOS 13.4 | 11.7 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | +| tvOS 14.0 | 12.1 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | +| tvOS 14.2 | 12.2 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | +| watchOS 6.2 | 11.7 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm | +| watchOS 7.0 | 12.1 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm
Apple Watch Series 6 - 40mm
Apple Watch Series 6 - 44mm | +| watchOS 7.1 | 12.2 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm
Apple Watch Series 6 - 40mm
Apple Watch Series 6 - 44mm | ### Android | Package Name | Version | diff --git a/images/macos/provision/configuration/add-network-interface-detection.sh b/images/macos/provision/configuration/add-network-interface-detection.sh index e939f04b..ca9192bf 100755 --- a/images/macos/provision/configuration/add-network-interface-detection.sh +++ b/images/macos/provision/configuration/add-network-interface-detection.sh @@ -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 diff --git a/images/macos/provision/configuration/autologin.sh b/images/macos/provision/configuration/autologin.sh index caa29a6b..02f2f06d 100755 --- a/images/macos/provision/configuration/autologin.sh +++ b/images/macos/provision/configuration/autologin.sh @@ -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 diff --git a/images/macos/provision/configuration/configure-hostname.sh b/images/macos/provision/configuration/configure-hostname.sh index 477e0980..e0de0bf8 100644 --- a/images/macos/provision/configuration/configure-hostname.sh +++ b/images/macos/provision/configuration/configure-hostname.sh @@ -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" diff --git a/images/macos/provision/configuration/configure-machine.sh b/images/macos/provision/configuration/configure-machine.sh index dbfae673..df991c21 100644 --- a/images/macos/provision/configuration/configure-machine.sh +++ b/images/macos/provision/configuration/configure-machine.sh @@ -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 # https://developer.apple.com/documentation/webkit/testing_with_webdriver_in_safari # Safari’s executable is located at /usr/bin/safaridriver diff --git a/images/macos/provision/configuration/configure-ssh.sh b/images/macos/provision/configuration/configure-ssh.sh index f85e9efa..73095f55 100755 --- a/images/macos/provision/configuration/configure-ssh.sh +++ b/images/macos/provision/configuration/configure-ssh.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash -e -o pipefail [[ ! -d ~/.ssh ]] && mkdir ~/.ssh 2>/dev/null chmod 777 ~/.ssh diff --git a/images/macos/provision/configuration/disable-auto-updates.sh b/images/macos/provision/configuration/disable-auto-updates.sh index 3a35f5be..050f7d9a 100755 --- a/images/macos/provision/configuration/disable-auto-updates.sh +++ b/images/macos/provision/configuration/disable-auto-updates.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/bash -e -o pipefail # Disabling automatic updates sudo softwareupdate --schedule off diff --git a/images/macos/provision/configuration/finalize-vm.sh b/images/macos/provision/configuration/finalize-vm.sh index b01b3c23..b6975139 100644 --- a/images/macos/provision/configuration/finalize-vm.sh +++ b/images/macos/provision/configuration/finalize-vm.sh @@ -1,12 +1,16 @@ -#!/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 diff --git a/images/macos/provision/configuration/max-files.sh b/images/macos/provision/configuration/max-files.sh index a6e41f12..cd1df451 100755 --- a/images/macos/provision/configuration/max-files.sh +++ b/images/macos/provision/configuration/max-files.sh @@ -1,6 +1,4 @@ -#!/bin/bash - -set -e +#!/bin/bash -e -o pipefail Launch_Daemons="/Library/LaunchDaemons" diff --git a/images/macos/provision/configuration/ntpconf.sh b/images/macos/provision/configuration/ntpconf.sh index 09916cc3..b4f68128 100755 --- a/images/macos/provision/configuration/ntpconf.sh +++ b/images/macos/provision/configuration/ntpconf.sh @@ -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 diff --git a/images/macos/provision/configuration/preimagedata.sh b/images/macos/provision/configuration/preimagedata.sh index c269a149..8060acb7 100644 --- a/images/macos/provision/configuration/preimagedata.sh +++ b/images/macos/provision/configuration/preimagedata.sh @@ -1,4 +1,5 @@ -#!/bin/bash +#!/bin/bash -e -o pipefail + source ~/utils/utils.sh imagedata_file="$HOME/imagedata.json" diff --git a/images/macos/provision/configuration/screensaver-off.sh b/images/macos/provision/configuration/screensaver-off.sh index c154f8d8..6844792e 100755 --- a/images/macos/provision/configuration/screensaver-off.sh +++ b/images/macos/provision/configuration/screensaver-off.sh @@ -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` diff --git a/images/macos/provision/configuration/shell-change.sh b/images/macos/provision/configuration/shell-change.sh index a84216cb..5fb12a03 100644 --- a/images/macos/provision/configuration/shell-change.sh +++ b/images/macos/provision/configuration/shell-change.sh @@ -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 \ No newline at end of file diff --git a/images/macos/provision/core/android-toolsets.sh b/images/macos/provision/core/android-toolsets.sh index 093a133c..2f6139c8 100755 --- a/images/macos/provision/core/android-toolsets.sh +++ b/images/macos/provision/core/android-toolsets.sh @@ -1,4 +1,4 @@ -#!/bin/bash -e +#!/bin/bash -e -o pipefail source ~/utils/utils.sh function filter_components_by_version { diff --git a/images/macos/provision/core/audiodevice.sh b/images/macos/provision/core/audiodevice.sh index 4a151e3f..ec7d71d9 100644 --- a/images/macos/provision/core/audiodevice.sh +++ b/images/macos/provision/core/audiodevice.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/bash -e -o pipefail echo "install soundflower" brew cask install soundflower diff --git a/images/macos/provision/core/aws.sh b/images/macos/provision/core/aws.sh index 4d98d512..02009449 100644 --- a/images/macos/provision/core/aws.sh +++ b/images/macos/provision/core/aws.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/bash -e -o pipefail echo Installing aws... curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg" diff --git a/images/macos/provision/core/azcopy.sh b/images/macos/provision/core/azcopy.sh index 56b848e9..5098c878 100755 --- a/images/macos/provision/core/azcopy.sh +++ b/images/macos/provision/core/azcopy.sh @@ -1,5 +1,4 @@ -#!/bin/bash -set -e +#!/bin/bash -e -o pipefail AZCOPY_DOWNLOAD_URL="https://aka.ms/downloadazcopy-v10-mac" diff --git a/images/macos/provision/core/build-xcode-symlinks.sh b/images/macos/provision/core/build-xcode-symlinks.sh index 0cee8df8..60070938 100644 --- a/images/macos/provision/core/build-xcode-symlinks.sh +++ b/images/macos/provision/core/build-xcode-symlinks.sh @@ -1,4 +1,4 @@ -set -e +#!/bin/bash -e -o pipefail source ~/utils/utils.sh diff --git a/images/macos/provision/core/chrome.sh b/images/macos/provision/core/chrome.sh index 203faee7..4a9deba1 100644 --- a/images/macos/provision/core/chrome.sh +++ b/images/macos/provision/core/chrome.sh @@ -1,3 +1,5 @@ +#!/bin/bash -e -o pipefail + echo "Installing Chrome..." brew cask install google-chrome diff --git a/images/macos/provision/core/cocoapods.sh b/images/macos/provision/core/cocoapods.sh index edf2a85f..d692bf3d 100755 --- a/images/macos/provision/core/cocoapods.sh +++ b/images/macos/provision/core/cocoapods.sh @@ -1,4 +1,5 @@ -#!/bin/sh +#!/bin/bash -e -o pipefail + echo "Installing Cocoapods..." # Setup the Cocoapods master repo diff --git a/images/macos/provision/core/commonutils.sh b/images/macos/provision/core/commonutils.sh index 74d8fc09..a479974c 100644 --- a/images/macos/provision/core/commonutils.sh +++ b/images/macos/provision/core/commonutils.sh @@ -1,5 +1,4 @@ -#!/bin/sh -set -e +#!/bin/bash -e -o pipefail source ~/utils/utils.sh diff --git a/images/macos/provision/core/dotnet.sh b/images/macos/provision/core/dotnet.sh index 78056488..36df3be9 100755 --- a/images/macos/provision/core/dotnet.sh +++ b/images/macos/provision/core/dotnet.sh @@ -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 diff --git a/images/macos/provision/core/edge.sh b/images/macos/provision/core/edge.sh index bc19a566..da1673e0 100644 --- a/images/macos/provision/core/edge.sh +++ b/images/macos/provision/core/edge.sh @@ -1,3 +1,5 @@ +#!/bin/bash -e -o pipefail + source ~/utils/utils.sh echo "Installing Microsoft Edge..." diff --git a/images/macos/provision/core/firefox.sh b/images/macos/provision/core/firefox.sh index f6a90d61..b9ee1c5e 100644 --- a/images/macos/provision/core/firefox.sh +++ b/images/macos/provision/core/firefox.sh @@ -1,3 +1,5 @@ +#!/bin/bash -e -o pipefail + echo "Installing Firefox..." brew cask install firefox diff --git a/images/macos/provision/core/gcc.sh b/images/macos/provision/core/gcc.sh index febc0760..fefe20fd 100644 --- a/images/macos/provision/core/gcc.sh +++ b/images/macos/provision/core/gcc.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/bash -e -o pipefail echo "Installing GCC@8 using homebrew..." brew install gcc@8 diff --git a/images/macos/provision/core/git.sh b/images/macos/provision/core/git.sh index 55feb92b..d59ebf91 100644 --- a/images/macos/provision/core/git.sh +++ b/images/macos/provision/core/git.sh @@ -1,3 +1,5 @@ +#!/bin/bash -e -o pipefail + echo Installing Git... brew install git diff --git a/images/macos/provision/core/haskell.sh b/images/macos/provision/core/haskell.sh index 1bc11d91..b7f35e4d 100644 --- a/images/macos/provision/core/haskell.sh +++ b/images/macos/provision/core/haskell.sh @@ -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" diff --git a/images/macos/provision/core/miniconda.sh b/images/macos/provision/core/miniconda.sh index b214b352..876883a6 100644 --- a/images/macos/provision/core/miniconda.sh +++ b/images/macos/provision/core/miniconda.sh @@ -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 diff --git a/images/macos/provision/core/mongodb.sh b/images/macos/provision/core/mongodb.sh index 1b6a5a8d..3a4440d9 100644 --- a/images/macos/provision/core/mongodb.sh +++ b/images/macos/provision/core/mongodb.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash -e -o pipefail # MongoDB object-value database # installs last version of MongoDB Community Edition diff --git a/images/macos/provision/core/node.sh b/images/macos/provision/core/node.sh index 840b433f..59e727ce 100644 --- a/images/macos/provision/core/node.sh +++ b/images/macos/provision/core/node.sh @@ -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... diff --git a/images/macos/provision/core/nvm.sh b/images/macos/provision/core/nvm.sh index 527bd4c6..c02ecf43 100755 --- a/images/macos/provision/core/nvm.sh +++ b/images/macos/provision/core/nvm.sh @@ -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 diff --git a/images/macos/provision/core/openjdk.sh b/images/macos/provision/core/openjdk.sh index ca2c5f01..c2b22baf 100644 --- a/images/macos/provision/core/openjdk.sh +++ b/images/macos/provision/core/openjdk.sh @@ -1,6 +1,4 @@ -#!/bin/sh - -set -e +#!/bin/bash -e -o pipefail source ~/utils/utils.sh diff --git a/images/macos/provision/core/openssl.sh b/images/macos/provision/core/openssl.sh index a058673a..16a317c0 100755 --- a/images/macos/provision/core/openssl.sh +++ b/images/macos/provision/core/openssl.sh @@ -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/ \ No newline at end of file +ln -s /usr/local/opt/openssl@1.0.2t/lib/libssl.1.0.0.dylib /usr/local/lib/ diff --git a/images/macos/provision/core/php.sh b/images/macos/provision/core/php.sh index 08c19f94..90111448 100644 --- a/images/macos/provision/core/php.sh +++ b/images/macos/provision/core/php.sh @@ -1,5 +1,4 @@ -#!/bin/sh -set -e +#!/bin/bash -e -o pipefail echo Installing PHP brew install php diff --git a/images/macos/provision/core/postgresql.sh b/images/macos/provision/core/postgresql.sh index f69e078a..b5d7ab61 100644 --- a/images/macos/provision/core/postgresql.sh +++ b/images/macos/provision/core/postgresql.sh @@ -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 \ No newline at end of file diff --git a/images/macos/provision/core/powershell.sh b/images/macos/provision/core/powershell.sh index 5717adc7..12beeca6 100644 --- a/images/macos/provision/core/powershell.sh +++ b/images/macos/provision/core/powershell.sh @@ -1,3 +1,5 @@ +#!/bin/bash -e -o pipefail + source ~/utils/utils.sh echo Installing Azure CLI... diff --git a/images/macos/provision/core/pypy.sh b/images/macos/provision/core/pypy.sh index 5f24cd5f..d55d785a 100644 --- a/images/macos/provision/core/pypy.sh +++ b/images/macos/provision/core/pypy.sh @@ -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 { diff --git a/images/macos/provision/core/python.sh b/images/macos/provision/core/python.sh index 8d588d74..62922053 100755 --- a/images/macos/provision/core/python.sh +++ b/images/macos/provision/core/python.sh @@ -1,21 +1,22 @@ -#!/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 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 @@ -26,4 +27,3 @@ 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" - diff --git a/images/macos/provision/core/reboot.sh b/images/macos/provision/core/reboot.sh index a6e44435..e0a2dfb8 100644 --- a/images/macos/provision/core/reboot.sh +++ b/images/macos/provision/core/reboot.sh @@ -1,2 +1,3 @@ -#!/bin/bash +#!/bin/bash -e -o pipefail + shutdown -r now \ No newline at end of file diff --git a/images/macos/provision/core/ruby.sh b/images/macos/provision/core/ruby.sh index 19877de3..61eb33c0 100755 --- a/images/macos/provision/core/ruby.sh +++ b/images/macos/provision/core/ruby.sh @@ -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 diff --git a/images/macos/provision/core/rubygem.sh b/images/macos/provision/core/rubygem.sh index 872436f8..14f4af7a 100755 --- a/images/macos/provision/core/rubygem.sh +++ b/images/macos/provision/core/rubygem.sh @@ -1,17 +1,10 @@ -#!/bin/sh +#!/bin/bash -e -o pipefail + source ~/utils/utils.sh echo Updating RubyGems... gem update --system - -# Freeze xcodeproj 1.18.0 because version 1.19.0 contains breaking changes related to CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER flag -# Related issues: -# - https://github.com/CocoaPods/CocoaPods/issues/10153 -# - https://github.com/actions/virtual-environments/issues/1804 -# Need to revisit when Cocoapods 1.10.0 is released and added to VM -gem install xcodeproj -v 1.18.0 - echo Installing xcode-install utility... gem install xcode-install --force diff --git a/images/macos/provision/core/rust.sh b/images/macos/provision/core/rust.sh index 5ef7675c..de82c7b4 100644 --- a/images/macos/provision/core/rust.sh +++ b/images/macos/provision/core/rust.sh @@ -1,6 +1,4 @@ -#!/bin/sh - -set -e +#!/bin/bash -e -o pipefail echo Installing Rustup... brew install rustup-init diff --git a/images/macos/provision/core/stack.sh b/images/macos/provision/core/stack.sh index 81b41fa8..17c5ecd9 100644 --- a/images/macos/provision/core/stack.sh +++ b/images/macos/provision/core/stack.sh @@ -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") diff --git a/images/macos/provision/core/toolcache-high-sierra.sh b/images/macos/provision/core/toolcache-high-sierra.sh index 61a3cc8c..9a67418b 100644 --- a/images/macos/provision/core/toolcache-high-sierra.sh +++ b/images/macos/provision/core/toolcache-high-sierra.sh @@ -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 # ########################################################################### diff --git a/images/macos/provision/core/toolcache.sh b/images/macos/provision/core/toolcache.sh index eb6dc905..dab45deb 100755 --- a/images/macos/provision/core/toolcache.sh +++ b/images/macos/provision/core/toolcache.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash -e -o pipefail # Download hosted tool cache with npm NPM_FEED="npm.pkg.github.com" diff --git a/images/macos/provision/core/vcpkg.sh b/images/macos/provision/core/vcpkg.sh index 289d7ba4..260f2c2a 100644 --- a/images/macos/provision/core/vcpkg.sh +++ b/images/macos/provision/core/vcpkg.sh @@ -1,6 +1,5 @@ -#!/bin/bash +#!/bin/bash -e -o pipefail -set -e source ~/utils/utils.sh # Set env variable for vcpkg diff --git a/images/macos/provision/core/vsmac.sh b/images/macos/provision/core/vsmac.sh index 20a8efd4..f0c498fc 100644 --- a/images/macos/provision/core/vsmac.sh +++ b/images/macos/provision/core/vsmac.sh @@ -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" \ No newline at end of file diff --git a/images/macos/provision/core/xamarin-android-ndk.sh b/images/macos/provision/core/xamarin-android-ndk.sh index 35e4d006..d5b23ebb 100644 --- a/images/macos/provision/core/xamarin-android-ndk.sh +++ b/images/macos/provision/core/xamarin-android-ndk.sh @@ -1,4 +1,5 @@ -#!/bin/sh +#!/bin/bash -e -o pipefail + source ~/utils/utils.sh ANDROID_HOME=$HOME/Library/Android/sdk diff --git a/images/macos/provision/core/xamarin.sh b/images/macos/provision/core/xamarin.sh index 0f0801d7..86dc1a0f 100755 --- a/images/macos/provision/core/xamarin.sh +++ b/images/macos/provision/core/xamarin.sh @@ -1,4 +1,5 @@ -#!/bin/sh +#!/bin/bash -e -o pipefail + source ~/utils/utils.sh source ~/utils/xamarin-utils.sh @@ -63,8 +64,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" diff --git a/images/macos/provision/core/xcode-clt.sh b/images/macos/provision/core/xcode-clt.sh index 49693d33..84e4a9e5 100644 --- a/images/macos/provision/core/xcode-clt.sh +++ b/images/macos/provision/core/xcode-clt.sh @@ -1,4 +1,5 @@ #!/bin/bash -e -o pipefail +source ~/utils/utils.sh is_clt_installed() { clt_path=`xcode-select -p 2>&1` @@ -10,8 +11,15 @@ install_clt() { # This temporary file prompts the 'softwareupdate' utility to list the Command Line Tools clt_placeholder="/tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress" sudo touch $clt_placeholder + # The only working tools for Big Sur are 12.2 + if is_Less_BigSur; then + cltPattern="Command Line Tools" + else + cltPattern="Command Line Tools.*Xcode-12.2" + fi + clt_label_command="/usr/sbin/softwareupdate -l | - grep -B 1 -E 'Command Line Tools' | + grep -B 1 -E '${cltPattern}' | awk -F'*' '/^ *\\*/ {print \$2}' | sed -e 's/^ *Label: //' -e 's/^ *//' | sort -V | diff --git a/images/macos/provision/core/xcode-postbuild.sh b/images/macos/provision/core/xcode-postbuild.sh index bf7ba387..6afd42c2 100644 --- a/images/macos/provision/core/xcode-postbuild.sh +++ b/images/macos/provision/core/xcode-postbuild.sh @@ -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" diff --git a/images/macos/provision/core/xcode-sims.sh b/images/macos/provision/core/xcode-sims.sh index fb2af5d4..8dff14a5 100755 --- a/images/macos/provision/core/xcode-sims.sh +++ b/images/macos/provision/core/xcode-sims.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash -e -o pipefail source ~/utils/utils.sh diff --git a/images/macos/provision/core/xcode-tools.sh b/images/macos/provision/core/xcode-tools.sh index 643dc293..773b07a9 100755 --- a/images/macos/provision/core/xcode-tools.sh +++ b/images/macos/provision/core/xcode-tools.sh @@ -1,10 +1,8 @@ -#!/bin/sh +#!/bin/bash -e -o pipefail # The script currently requires 2 external variables to be set: XCODE_INSTALL_USER # and XCODE_INSTALL_PASSWORD, in order to access the Apple Developer Center -set -e - source ~/utils/utils.sh source ~/utils/xcode-utils.sh diff --git a/images/macos/provision/utils/utils.sh b/images/macos/provision/utils/utils.sh index 85881c7e..d2c39317 100755 --- a/images/macos/provision/utils/utils.sh +++ b/images/macos/provision/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=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() { diff --git a/images/macos/provision/utils/xamarin-utils.sh b/images/macos/provision/utils/xamarin-utils.sh index dd6d7ae9..1017cec2 100644 --- a/images/macos/provision/utils/xamarin-utils.sh +++ b/images/macos/provision/utils/xamarin-utils.sh @@ -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 < ${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 } diff --git a/images/macos/provision/utils/xcode-utils.sh b/images/macos/provision/utils/xcode-utils.sh index 7cd63b2f..cfe93439 100644 --- a/images/macos/provision/utils/xcode-utils.sh +++ b/images/macos/provision/utils/xcode-utils.sh @@ -1,3 +1,5 @@ +#!/bin/bash -e -o pipefail + createXamarinProvisionatorSymlink() { local XCODE_VERSION="$1" local FULL_VERSION=$(echo "${XCODE_VERSION}.0.0" | cut -d'.' -f 1,2,3) diff --git a/images/macos/toolsets/toolset-10.15.json b/images/macos/toolsets/toolset-10.15.json index c54db919..e041c15e 100644 --- a/images/macos/toolsets/toolset-10.15.json +++ b/images/macos/toolsets/toolset-10.15.json @@ -1,6 +1,6 @@ { "xcode": { - "default": "11.7", + "default": "12", "versions": [ "12.2_beta", "12.1_GM_seed", "12", "11.7", "11.6", "11.5", "11.4.1", "11.4", "11.3.1", "11.2.1", "11.1", "11", "10.3" ] @@ -19,7 +19,7 @@ "android-versions": [ "11.0.2.0", "10.3.1.4", "10.2.0.100", "10.1.3.7", "10.0.6.2" ], - "bundle-default": "6_12_0", + "bundle-default": "latest", "bundles": [ { "symlink": "6_12_1", diff --git a/images/macos/toolsets/toolset-11.0.json b/images/macos/toolsets/toolset-11.0.json index ed8903d3..cb14b3a0 100644 --- a/images/macos/toolsets/toolset-11.0.json +++ b/images/macos/toolsets/toolset-11.0.json @@ -2,7 +2,7 @@ "xcode": { "default": "11.7", "versions": [ - "12.2_beta", "12.1_GM_seed", "11.7" + "12.2_beta", "11.7" ] }, "xamarin": {