From c7b3b38ac52e8e14eef177d180361145e4ce2db7 Mon Sep 17 00:00:00 2001 From: Nikita Bykov Date: Tue, 10 Mar 2020 17:23:36 +0300 Subject: [PATCH 01/44] Added "Output Readme file content" step to Image generation --- images.CI/azure-pipelines/image-generation.yml | 7 +++++++ images.CI/azure-pipelines/ubuntu1604.yml | 3 ++- images.CI/azure-pipelines/ubuntu1804.yml | 3 ++- images.CI/azure-pipelines/windows2016.yml | 3 ++- images.CI/azure-pipelines/windows2019.yml | 3 ++- 5 files changed, 15 insertions(+), 4 deletions(-) diff --git a/images.CI/azure-pipelines/image-generation.yml b/images.CI/azure-pipelines/image-generation.yml index 332f34ad..246b36f2 100644 --- a/images.CI/azure-pipelines/image-generation.yml +++ b/images.CI/azure-pipelines/image-generation.yml @@ -55,6 +55,13 @@ jobs: -ImageName ${{ parameters.image_type }} ` -AccessToken $(RELEASE_TARGET_TOKEN) + - task: PowerShell@2 + displayName: 'Output Readme file content' + inputs: + targetType: 'inline' + script: | + Get-Content ((Get-ChildItem -Path "images" -Include ${{ parameters.image_readme_name }} -Recurse -Depth 1).FullName) + - task: PowerShell@2 displayName: 'Clean up resources' condition: always() diff --git a/images.CI/azure-pipelines/ubuntu1604.yml b/images.CI/azure-pipelines/ubuntu1604.yml index 8f6dcef2..b2c99337 100644 --- a/images.CI/azure-pipelines/ubuntu1604.yml +++ b/images.CI/azure-pipelines/ubuntu1604.yml @@ -16,4 +16,5 @@ pr: jobs: - template: image-generation.yml parameters: - image_type: ubuntu1604 \ No newline at end of file + image_type: ubuntu1604 + image_readme_name: Ubuntu1604-README.md \ No newline at end of file diff --git a/images.CI/azure-pipelines/ubuntu1804.yml b/images.CI/azure-pipelines/ubuntu1804.yml index 998ba42e..d07bbade 100644 --- a/images.CI/azure-pipelines/ubuntu1804.yml +++ b/images.CI/azure-pipelines/ubuntu1804.yml @@ -16,4 +16,5 @@ pr: jobs: - template: image-generation.yml parameters: - image_type: ubuntu1804 \ No newline at end of file + image_type: ubuntu1804 + image_readme_name: Ubuntu1804-README.md \ No newline at end of file diff --git a/images.CI/azure-pipelines/windows2016.yml b/images.CI/azure-pipelines/windows2016.yml index 667b30bd..f164a096 100644 --- a/images.CI/azure-pipelines/windows2016.yml +++ b/images.CI/azure-pipelines/windows2016.yml @@ -16,4 +16,5 @@ pr: jobs: - template: image-generation.yml parameters: - image_type: Windows2016-Azure \ No newline at end of file + image_type: Windows2016-Azure + image_readme_name: Windows2016-Readme.md \ No newline at end of file diff --git a/images.CI/azure-pipelines/windows2019.yml b/images.CI/azure-pipelines/windows2019.yml index 508fa12b..8675f087 100644 --- a/images.CI/azure-pipelines/windows2019.yml +++ b/images.CI/azure-pipelines/windows2019.yml @@ -16,4 +16,5 @@ pr: jobs: - template: image-generation.yml parameters: - image_type: Windows2019-Azure \ No newline at end of file + image_type: Windows2019-Azure + image_readme_name: Windows2016-Readme.md \ No newline at end of file From d7aad6b116a93b5bb2012c10396dadcd3c04ad2e Mon Sep 17 00:00:00 2001 From: Nikita Bykov Date: Tue, 10 Mar 2020 17:30:00 +0300 Subject: [PATCH 02/44] Added test software to doc --- images/win/scripts/Installers/Validate-Bazel.ps1 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/images/win/scripts/Installers/Validate-Bazel.ps1 b/images/win/scripts/Installers/Validate-Bazel.ps1 index 71af7df7..b4dca48c 100644 --- a/images/win/scripts/Installers/Validate-Bazel.ps1 +++ b/images/win/scripts/Installers/Validate-Bazel.ps1 @@ -20,4 +20,5 @@ $Description = @" _Version:_ $(bazel --version)
"@ -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description \ No newline at end of file +Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description +Add-SoftwareDetailsToMarkdown -SoftwareName "Test Software" -DescriptionMarkdown "Test Software" \ No newline at end of file From 9ca5bd05722691e93354b97c46ae7487c1c2a90f Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Wed, 11 Mar 2020 10:42:22 +0300 Subject: [PATCH 03/44] Fix android tools installation --- images/linux/scripts/installers/1604/android.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/images/linux/scripts/installers/1604/android.sh b/images/linux/scripts/installers/1604/android.sh index 95a44edc..c9b4d9d2 100644 --- a/images/linux/scripts/installers/1604/android.sh +++ b/images/linux/scripts/installers/1604/android.sh @@ -19,11 +19,11 @@ echo "ANDROID_HOME=${ANDROID_SDK_ROOT}" | tee -a /etc/environment # Download the latest command line tools so that we can accept all of the licenses. # See https://developer.android.com/studio/#command-tools wget -O android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip -unzip android-sdk.zip -d ${ANDROID_ROOT} +unzip android-sdk.zip -d ${ANDROID_SDK_ROOT} rm -f android-sdk.zip # Install the following SDKs and build tools, passing in "y" to accept licenses. -echo "y" | ${ANDROID_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ +echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ "ndk-bundle" \ "platform-tools" \ "platforms;android-29" \ From c8fe3857b9208abea9e0b43fb8115f8ef955b6ef Mon Sep 17 00:00:00 2001 From: Nikita Bykov Date: Wed, 11 Mar 2020 12:12:54 +0300 Subject: [PATCH 04/44] fixed inline script --- images.CI/azure-pipelines/image-generation.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/images.CI/azure-pipelines/image-generation.yml b/images.CI/azure-pipelines/image-generation.yml index 246b36f2..7daa4fb6 100644 --- a/images.CI/azure-pipelines/image-generation.yml +++ b/images.CI/azure-pipelines/image-generation.yml @@ -60,7 +60,8 @@ jobs: inputs: targetType: 'inline' script: | - Get-Content ((Get-ChildItem -Path "images" -Include ${{ parameters.image_readme_name }} -Recurse -Depth 1).FullName) + $docsPath = (Get-ChildItem -Path "images" -Include ${{ parameters.image_readme_name }} -Recurse -Depth 1 | Select-Object -First 1 + Get-Content -Path $docsPath - task: PowerShell@2 displayName: 'Clean up resources' From 0deb800ffad5fd93cd902cb3c29f6a92b1b350a3 Mon Sep 17 00:00:00 2001 From: Nikita Bykov Date: Wed, 11 Mar 2020 12:24:38 +0300 Subject: [PATCH 05/44] deleted the extra bracket --- images.CI/azure-pipelines/image-generation.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images.CI/azure-pipelines/image-generation.yml b/images.CI/azure-pipelines/image-generation.yml index 7daa4fb6..03b084ca 100644 --- a/images.CI/azure-pipelines/image-generation.yml +++ b/images.CI/azure-pipelines/image-generation.yml @@ -60,7 +60,7 @@ jobs: inputs: targetType: 'inline' script: | - $docsPath = (Get-ChildItem -Path "images" -Include ${{ parameters.image_readme_name }} -Recurse -Depth 1 | Select-Object -First 1 + $docsPath = Get-ChildItem -Path "images" -Include ${{ parameters.image_readme_name }} -Recurse -Depth 1 | Select-Object -First 1 Get-Content -Path $docsPath - task: PowerShell@2 From f7ce1c8ca3852f59e652e6fbc8ff02f6319e9456 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Wed, 11 Mar 2020 13:02:35 +0300 Subject: [PATCH 06/44] Fix android tools installation --- images/linux/scripts/installers/1804/android.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/images/linux/scripts/installers/1804/android.sh b/images/linux/scripts/installers/1804/android.sh index 716f8bb1..c415080d 100644 --- a/images/linux/scripts/installers/1804/android.sh +++ b/images/linux/scripts/installers/1804/android.sh @@ -19,11 +19,11 @@ echo "ANDROID_HOME=${ANDROID_SDK_ROOT}" | tee -a /etc/environment # Download the latest command line tools so that we can accept all of the licenses. # See https://developer.android.com/studio/#command-tools wget -O android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip -unzip android-sdk.zip -d ${ANDROID_ROOT} +unzip android-sdk.zip -d ${ANDROID_SDK_ROOT} rm -f android-sdk.zip # Install the following SDKs and build tools, passing in "y" to accept licenses. -echo "y" | ${ANDROID_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ +echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ "ndk-bundle" \ "platform-tools" \ "platforms;android-29" \ From 63c8c9c5872e72623fd124e999bb022c0b331747 Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Wed, 11 Mar 2020 14:17:58 +0300 Subject: [PATCH 07/44] add function to download and install vsix --- .../scripts/ImageHelpers/ImageHelpers.psm1 | 1 + .../scripts/ImageHelpers/InstallHelpers.ps1 | 68 +++++++++++++++++++ .../Install-AnalysisExtenstion.ps1 | 39 +---------- .../Installers/Windows2019/Install-Wix.ps1 | 45 +----------- 4 files changed, 74 insertions(+), 79 deletions(-) diff --git a/images/win/scripts/ImageHelpers/ImageHelpers.psm1 b/images/win/scripts/ImageHelpers/ImageHelpers.psm1 index ae58a981..f38e3563 100644 --- a/images/win/scripts/ImageHelpers/ImageHelpers.psm1 +++ b/images/win/scripts/ImageHelpers/ImageHelpers.psm1 @@ -18,5 +18,6 @@ Export-ModuleMember -Function @( 'Add-SoftwareDetailsToMarkdown' 'Stop-SvcWithErrHandling' 'Set-SvcWithErrHandling' + 'Install-VsixExtension' 'Get-VS19ExtensionVersion' ) diff --git a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 index f6c553b2..9e6a49ec 100644 --- a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 +++ b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 @@ -161,6 +161,74 @@ Hashtable for service arguments } } +function Install-VsixExtension +{ + Param + ( + [String]$Url, + [String]$Name + ) + + $FilePath = "${env:Temp}\$Name" + $ReleaseInPath = 'Enterprise' + $exitCode = -1 + $retries = 20 + + while($true) + { + try + { + Write-Host "Downloading $Name..." + (New-Object System.Net.WebClient).DownloadFile($Url, $FilePath) + break + } + catch + { + Write-Host "There is an error during $Name downloading" + $_ + if ($retries -gt 0) + { + $retries-- + Write-Host "Waiting 30 seconds before retrying. Retries left: $retries" + Start-Sleep -Seconds 30 + } + else { + Write-Host "File can't be downloaded" + $_ + exit 1 + } + } + } + + $ArgumentList = ('/quiet', $FilePath) + + Write-Host "Starting Install $Name..." + try + { + $process = Start-Process -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2019\$ReleaseInPath\Common7\IDE\VSIXInstaller.exe" -ArgumentList $ArgumentList -Wait -PassThru + } + catch + { + Write-Host "There is an error during $Name installation" + $_ + exit 1 + } + + $exitCode = $process.ExitCode + + if ($exitCode -eq 0 -or $exitCode -eq 1001) # 1001 means the extension is already installed + { + Write-Host "$Name installed successfully" + } + else + { + Write-Host "Unsuccessful exit code returned by the installation process: $exitCode." + exit 1 + } + + #Cleanup installation files + Remove-Item -Force -Confirm:$false $FilePath +} function Get-VS19ExtensionVersion { param ( diff --git a/images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 b/images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 index 43bfb603..2d477c18 100644 --- a/images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 +++ b/images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 @@ -3,42 +3,9 @@ ## Desc: Install the Microsoft Analysis Services Projects Visual Studio extension ################################################################################### +Import-Module -Name ImageHelpers -Force; $extensionUrl = "https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ProBITools/vsextensions/MicrosoftAnalysisServicesModelingProjects/2.9.5/vspackage" -$extensionDownloadPath = Join-Path $Env:TEMP "Microsoft.DataTools.AnalysisServices.vsix" -Write-Host "Downloading Microsoft.DataTools.AnalysisServices.vsix extension" -(New-Object System.Net.WebClient).DownloadFile($extensionUrl, $extensionDownloadPath) +$extensionName = "Microsoft.DataTools.AnalysisServices.vsix" -Write-Host "Installing Microsoft.DataTools.AnalysisServices.vsix extension" -try -{ - $process = Start-Process ` - -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\VSIXInstaller.exe" ` - -ArgumentList ("/quiet", "$extensionDownloadPath") ` - -Wait ` - -PassThru -} -catch -{ - Write-Host "There is an error during Microsoft.DataTools.AnalysisServices.vsix installation" - $_ - exit 1 -} - - -$exitCode = $process.ExitCode - -if ($exitCode -eq 0 -or $exitCode -eq 1001) # 1001 means the extension is already installed -{ - Write-Host "Microsoft.DataTools.AnalysisServices.vsix installed successfully" -} -else -{ - Write-Host "Unsuccessful exit code returned by the installation process: $exitCode." - exit 1 -} - -#Cleanup installation files -Remove-Item -Force -Confirm:$false $extensionDownloadPath - -exit $exitCode +Install-VsixExtension -Url $extensionUrl -Name $extensionName diff --git a/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 b/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 index 8fc79bc4..ae6459ec 100644 --- a/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 +++ b/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 @@ -2,52 +2,11 @@ ## File: Install-Wix.ps1 ## Desc: Install WIX. ################################################################################ -function Install-VsixExtension -{ - Param - ( - [String]$Url, - [String]$Name - ) - - $ReleaseInPath = 'Enterprise' - $exitCode = -1 - - try - { - Write-Host "Downloading $Name..." - $FilePath = "${env:Temp}\$Name" - - Invoke-WebRequest -Uri $Url -OutFile $FilePath - - $ArgumentList = ('/quiet', $FilePath) - - Write-Host "Starting Install $Name..." - $process = Start-Process -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2019\$ReleaseInPath\Common7\IDE\VSIXInstaller.exe" -ArgumentList $ArgumentList -Wait -PassThru - $exitCode = $process.ExitCode - - if ($exitCode -eq 0 -or $exitCode -eq 3010) - { - Write-Host -Object 'Installation successful' - return $exitCode - } - else - { - Write-Host -Object "Non zero exit code returned by the installation process : $exitCode." - return $exitCode - } - } - catch - { - Write-Host -Object "Failed to install the Extension $Name" - Write-Host -Object $_.Exception.Message - return -1 - } -} +Import-Module -Name ImageHelpers -Force; choco install wixtoolset -y --force #Installing VS extension 'Wix Toolset Visual Studio 2019 Extension' -$exitCode = Install-VsixExtension -Url 'https://wixtoolset.gallerycdn.vsassets.io/extensions/wixtoolset/wixtoolsetvisualstudio2019extension/1.0.0.4/1563296438961/Votive2019.vsix' -Name 'Votive2019.vsix' +Install-VsixExtension -Url 'https://wixtoolset.gallerycdn.vsassets.io/extensions/wixtoolset/wixtoolsetvisualstudio2019extension/1.0.0.4/1563296438961/Votive2019.vsix' -Name 'Votive2019.vsix' #return $exitCode From 5e91840910157a32aa10a5534d447e355bda33d5 Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Wed, 11 Mar 2020 14:20:49 +0300 Subject: [PATCH 08/44] change Install-Wix --- images/win/scripts/Installers/Windows2019/Install-Wix.ps1 | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 b/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 index ae6459ec..918217c5 100644 --- a/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 +++ b/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 @@ -7,6 +7,8 @@ Import-Module -Name ImageHelpers -Force; choco install wixtoolset -y --force +$extensionUrl = "https://wixtoolset.gallerycdn.vsassets.io/extensions/wixtoolset/wixtoolsetvisualstudio2019extension/1.0.0.4/1563296438961/Votive2019.vsix" +$extensionName = "Votive2019.vsix" + #Installing VS extension 'Wix Toolset Visual Studio 2019 Extension' -Install-VsixExtension -Url 'https://wixtoolset.gallerycdn.vsassets.io/extensions/wixtoolset/wixtoolsetvisualstudio2019extension/1.0.0.4/1563296438961/Votive2019.vsix' -Name 'Votive2019.vsix' -#return $exitCode +Install-VsixExtension -Url $extensionUrl -Name $extensionName From 82330ae29b80e9d17024567dff39af321bbd9690 Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Wed, 11 Mar 2020 14:25:29 +0300 Subject: [PATCH 09/44] add blank line --- images/win/scripts/ImageHelpers/InstallHelpers.ps1 | 1 + 1 file changed, 1 insertion(+) diff --git a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 index 9e6a49ec..e00ab3f8 100644 --- a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 +++ b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 @@ -229,6 +229,7 @@ function Install-VsixExtension #Cleanup installation files Remove-Item -Force -Confirm:$false $FilePath } + function Get-VS19ExtensionVersion { param ( From bb528023709024ded97db477718c46dafce0899c Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Wed, 11 Mar 2020 15:29:35 +0300 Subject: [PATCH 10/44] simplify download, get rid of VS edition variable --- .../scripts/ImageHelpers/InstallHelpers.ps1 | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 index e00ab3f8..0ef41704 100644 --- a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 +++ b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 @@ -170,11 +170,10 @@ function Install-VsixExtension ) $FilePath = "${env:Temp}\$Name" - $ReleaseInPath = 'Enterprise' $exitCode = -1 $retries = 20 - while($true) + while($retries -gt 0) { try { @@ -186,17 +185,18 @@ function Install-VsixExtension { Write-Host "There is an error during $Name downloading" $_ - if ($retries -gt 0) + + $retries-- + + if ($retries -eq 0) { - $retries-- - Write-Host "Waiting 30 seconds before retrying. Retries left: $retries" - Start-Sleep -Seconds 30 - } - else { Write-Host "File can't be downloaded" $_ exit 1 } + + Write-Host "Waiting 30 seconds before retrying. Retries left: $retries" + Start-Sleep -Seconds 30 } } @@ -205,7 +205,7 @@ function Install-VsixExtension Write-Host "Starting Install $Name..." try { - $process = Start-Process -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2019\$ReleaseInPath\Common7\IDE\VSIXInstaller.exe" -ArgumentList $ArgumentList -Wait -PassThru + $process = Start-Process -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\VSIXInstaller.exe" -ArgumentList $ArgumentList -Wait -PassThru } catch { From 3919d5143946681813c2877ff6b7d61d80b2b495 Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov Date: Wed, 11 Mar 2020 16:27:48 +0300 Subject: [PATCH 11/44] Software updates week 11 --- images/macos/macos-10.15-Readme.md | 43 ++++++++++++++++-------------- 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/images/macos/macos-10.15-Readme.md b/images/macos/macos-10.15-Readme.md index aae45169..10c9ac28 100644 --- a/images/macos/macos-10.15-Readme.md +++ b/images/macos/macos-10.15-Readme.md @@ -1,5 +1,5 @@ # macOS Catalina 10.15.3 (19D76) -The following software is installed on machines with the 20200224.1 update. +The following software is installed on machines with the 20200307.2 update. #### Xcode 11.3.1 set by default ## Operating System @@ -21,40 +21,42 @@ The following software is installed on machines with the 20200224.1 update. - GNU Fortran (Homebrew GCC 9.2.0_3) 9.2.0 - Node.js v12.16.1 - NVM 0.33.11 -- NVM - Cached node versions: v6.17.1 v8.17.0 v10.19.0 v12.16.1 v13.9.0 -- PowerShell 6.2.4 +- NVM - Cached node versions: v6.17.1 v8.17.0 v10.19.0 v12.16.1 v13.10.1 +- PowerShell 7.0.0 - Python 2.7.17 - Python 3.7.6 - Ruby 2.6.5p114 - .NET SDK 2.0.0 3.0.100 3.0.101 3.0.102 3.0.103 3.1.100 3.1.101 - Go 1.14 - PHP 7.4.3 +- julia 1.3.1 ### Package Management - Rustup 1.21.1 +- Vcpkg 2020.02.04 - Bundler version 2.1.4 - Carthage 0.34.0 - CocoaPods 1.9.0 -- Homebrew 2.2.6 +- Homebrew 2.2.9 - NPM 6.13.4 -- Yarn 1.22.0 +- Yarn 1.22.1 - NuGet 5.4.0.6315 - Pip 19.3.1 (python 2.7) - Pip 19.3.1 (python 3.7) - Miniconda 4.7.12 - RubyGems 3.1.2 -- Vcpkg 2020.02.04 ### Project Management - Apache Maven 3.6.3 -- Gradle 6.2.1 +- Gradle 6.2.2 ### Utilities -- Curl 7.68.0 -- Git: 2.25.0 +- Curl 7.69.0 +- Git: 2.25.1 - Git LFS: 2.10.0 - GNU Wget 1.20.3 - Subversion (SVN) 1.13.0 +- Packer 1.5.4 - GNU parallel 20200222 - OpenSSL 1.0.2t 10 Sep 2019 - jq 1.6 @@ -63,18 +65,20 @@ The following software is installed on machines with the 20200224.1 update. - aria2 1.35.0 - azcopy 10.3.4 - zstd 1.4.4 +- bazel 2.2.0 +- bazelisk v1.3.0 ### Tools -- Fastlane 2.142.0 -- Cmake 3.16.4 +- Fastlane 2.143.0 +- Cmake 3.16.5 - App Center CLI 2.3.3 - Azure CLI 2.1.0 ### Browsers -- Google Chrome 80.0.3987.122 +- Google Chrome 80.0.3987.132 - ChromeDriver 80.0.3987.106 -- Microsoft Edge 80.0.361.62 -- MSEdgeDriver 80.0.361.62 +- Microsoft Edge 80.0.361.66 +- MSEdgeDriver 80.0.361.66 - Mozilla Firefox 73.0.1 - geckodriver 0.26.0 @@ -98,7 +102,7 @@ The following software is installed on machines with the 20200224.1 update. ### Xamarin #### Visual Studio for Mac -- 8.4.7.17 +- 8.4.8.2 #### Mono - 6.6.0.166 @@ -126,7 +130,7 @@ The following software is installed on machines with the 20200224.1 update. ### Xcode | Version | Build | Path | | ---------------- | ------- | --------------------------------- | -| 11.4 (beta) | 11N123k | /Applications/Xcode_11.4_beta.app | +| 11.4 (beta) | 11N132i | /Applications/Xcode_11.4_beta.app | | 11.3.1 (default) | 11C505 | /Applications/Xcode_11.3.1.app | | 11.3 | 11C29 | /Applications/Xcode_11.3.app | | 11.2.1 | 11B500 | /Applications/Xcode_11.2.1.app | @@ -185,9 +189,9 @@ The following software is installed on machines with the 20200224.1 update. ### Android #### Android SDK Tools -| Package Name | Description | -| ---------------------------------- | ---------------------------------- | -| tools | Android SDK Tools, Revision 26.1.1 | +| Package Name | Description | +| ------------ | ---------------------------------- | +| tools | Android SDK Tools, Revision 26.1.1 | #### Android SDK Platform-Tools | Package Name | Description | @@ -257,4 +261,3 @@ The following software is installed on machines with the 20200224.1 update. | Google Repository | 58 | | Intel x86 Emulator Accelerator (HAXM installer) | 7.5.1 | - From 0e584565f4654edd15f96c7928441cc997bda29a Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Wed, 11 Mar 2020 17:31:39 +0300 Subject: [PATCH 12/44] remove exitCode variable --- images/win/scripts/ImageHelpers/InstallHelpers.ps1 | 1 - 1 file changed, 1 deletion(-) diff --git a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 index 0ef41704..eaabd236 100644 --- a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 +++ b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 @@ -170,7 +170,6 @@ function Install-VsixExtension ) $FilePath = "${env:Temp}\$Name" - $exitCode = -1 $retries = 20 while($retries -gt 0) From 8254ea02aff68249e1578519eaefe2c8798f3048 Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov Date: Wed, 11 Mar 2020 17:36:06 +0300 Subject: [PATCH 13/44] update boost toolset and notes --- .../win/scripts/Installers/Validate-Boost.ps1 | 35 ++++++++++++++++--- 1 file changed, 30 insertions(+), 5 deletions(-) diff --git a/images/win/scripts/Installers/Validate-Boost.ps1 b/images/win/scripts/Installers/Validate-Boost.ps1 index 9c97c28d..9e1c6965 100644 --- a/images/win/scripts/Installers/Validate-Boost.ps1 +++ b/images/win/scripts/Installers/Validate-Boost.ps1 @@ -37,7 +37,7 @@ else # Adding description of the software to Markdown $tmplMark = @" -#### {0} +#### {0} [{2}] _Environment:_ * {1}: root directory of the Boost version {0} installation @@ -45,8 +45,9 @@ _Environment:_ "@ $tmplMarkRoot = @" -#### {0} +#### {0} [{2}] +_Environment:_ * PATH: contains the location of Boost version {0} * BOOST_ROOT: root directory of the Boost version {0} installation * {1}: root directory of the Boost version {0} installation @@ -62,14 +63,38 @@ foreach($BoostVersion in $BoostVersionsToInstall) Validate-BoostVersion -BoostRootPath $BoostRootDirectory -BoostRelease $BoostVersion $BoostVersionTag = "BOOST_ROOT_{0}" -f $BoostVersion.Replace('.', '_') - if($BoostVersion -eq $env:BOOST_DEFAULT) + if ([Version]$BoostVersion -ge "1.70.0") { - $null = $Description.AppendLine(($tmplMarkRoot -f $BoostVersion, $BoostVersionTag)) + $BoostToolsetName = "msvc-14.2" } else { - $null = $Description.AppendLine(($tmplMark -f $BoostVersion, $BoostVersionTag)) + $BoostToolsetName = "msvc-14.1" + } + + if($BoostVersion -eq $env:BOOST_DEFAULT) + { + $null = $Description.AppendLine(($tmplMarkRoot -f $BoostVersion, $BoostVersionTag, $BoostToolsetName)) + } + else + { + $null = $Description.AppendLine(($tmplMark -f $BoostVersion, $BoostVersionTag, $BoostToolsetName)) } } +$CMakeFindBoostInfo = @" + +#### _Notes:_ +Link: https://cmake.org/cmake/help/latest/module/FindBoost.html + +If Boost was built using the ``boost-cmake`` project or from ``Boost 1.70.0`` on it provides a package +configuration file for use with find\_package's config mode. This module looks for the package +configuration file called BoostConfig.cmake or boost-config.cmake and stores the result in CACHE entry "Boost_DIR". +If found, the package configuration file is loaded and this module returns with no further action. +See documentation of the Boost CMake package configuration for details on what it provides. + +Set ``Boost_NO_BOOST_CMAKE to ON``, to disable the search for boost-cmake. +"@ + +$null = $Description.AppendLine($CMakeFindBoostInfo) Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description.ToString() From 6bfc4bd78b4544f5d34fefd1e1245636f3af3807 Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Wed, 11 Mar 2020 23:34:22 +0300 Subject: [PATCH 14/44] add config directory --- images/linux/ubuntu1604.json | 8 ++++++++ images/linux/ubuntu1804.json | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/images/linux/ubuntu1604.json b/images/linux/ubuntu1604.json index 51e1bb51..ea02031d 100644 --- a/images/linux/ubuntu1604.json +++ b/images/linux/ubuntu1604.json @@ -129,6 +129,14 @@ ], "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" }, + { + "type": "shell", + "inline": [ + "mkdir -p /etc/skel/.config/configstore", + "echo 'export XDG_CONFIG_HOME=$HOME/.config' | tee -a /etc/skel/.bashrc" + ], + "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" + }, { "type": "shell", "scripts": [ diff --git a/images/linux/ubuntu1804.json b/images/linux/ubuntu1804.json index 33800251..420c2c0c 100644 --- a/images/linux/ubuntu1804.json +++ b/images/linux/ubuntu1804.json @@ -132,6 +132,14 @@ ], "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" }, + { + "type": "shell", + "inline": [ + "mkdir -p /etc/skel/.config/configstore", + "echo 'export XDG_CONFIG_HOME=$HOME/.config' | tee -a /etc/skel/.bashrc" + ], + "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" + }, { "type": "shell", "scripts": [ From 98167072879f3290e616dcb941fb6f297e2766b3 Mon Sep 17 00:00:00 2001 From: Nikita Bykov Date: Thu, 12 Mar 2020 10:49:59 +0300 Subject: [PATCH 15/44] removed test data --- images/win/scripts/Installers/Validate-Bazel.ps1 | 1 - 1 file changed, 1 deletion(-) diff --git a/images/win/scripts/Installers/Validate-Bazel.ps1 b/images/win/scripts/Installers/Validate-Bazel.ps1 index 40857ed1..1728a9a6 100644 --- a/images/win/scripts/Installers/Validate-Bazel.ps1 +++ b/images/win/scripts/Installers/Validate-Bazel.ps1 @@ -31,7 +31,6 @@ _Version:_ $(bazel --version)
"@ Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description -Add-SoftwareDetailsToMarkdown -SoftwareName "Test Software" -DescriptionMarkdown "Test Software" # Adding description of Bazelisk to Markdown $bazelisk_version = ((bazelisk version | Select-String "Bazelisk version:") -Split(" v"))[2] From d7c9e5f1d343f548355675f9127858e9141978ca Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Thu, 12 Mar 2020 18:54:01 +0300 Subject: [PATCH 16/44] add comment --- images/linux/ubuntu1604.json | 1 + images/linux/ubuntu1804.json | 1 + 2 files changed, 2 insertions(+) diff --git a/images/linux/ubuntu1604.json b/images/linux/ubuntu1604.json index ea02031d..133751f3 100644 --- a/images/linux/ubuntu1604.json +++ b/images/linux/ubuntu1604.json @@ -132,6 +132,7 @@ { "type": "shell", "inline": [ + "# This directory is supposed to be created in $HOME and owned by user(https://github.com/actions/virtual-environments/issues/491)", "mkdir -p /etc/skel/.config/configstore", "echo 'export XDG_CONFIG_HOME=$HOME/.config' | tee -a /etc/skel/.bashrc" ], diff --git a/images/linux/ubuntu1804.json b/images/linux/ubuntu1804.json index 420c2c0c..d96b8bea 100644 --- a/images/linux/ubuntu1804.json +++ b/images/linux/ubuntu1804.json @@ -135,6 +135,7 @@ { "type": "shell", "inline": [ + "# This directory is supposed to be created in $HOME and owned by user(https://github.com/actions/virtual-environments/issues/491)", "mkdir -p /etc/skel/.config/configstore", "echo 'export XDG_CONFIG_HOME=$HOME/.config' | tee -a /etc/skel/.bashrc" ], From ac65f0647ec661f86963fbdae4763f73f9a49867 Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Thu, 12 Mar 2020 20:03:50 +0300 Subject: [PATCH 17/44] change openssl installation order --- images/win/Windows2016-Azure.json | 24 ++++++++++++------------ images/win/Windows2019-Azure.json | 24 ++++++++++++------------ 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/images/win/Windows2016-Azure.json b/images/win/Windows2016-Azure.json index fcb0ed4c..8e3bcfbf 100644 --- a/images/win/Windows2016-Azure.json +++ b/images/win/Windows2016-Azure.json @@ -323,6 +323,12 @@ "{{ template_dir }}/scripts/Installers/Download-ToolCache.ps1" ] }, + { + "type": "powershell", + "scripts":[ + "{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1" + ] + }, { "type": "powershell", "scripts":[ @@ -547,12 +553,6 @@ "{{ template_dir }}/scripts/Installers/Install-GitVersion.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1" - ] - }, { "type": "powershell", "scripts":[ @@ -620,6 +620,12 @@ "{{ template_dir }}/scripts/Installers/Validate-ToolCache.ps1" ] }, + { + "type": "powershell", + "scripts":[ + "{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1" + ] + }, { "type": "powershell", "scripts":[ @@ -820,12 +826,6 @@ "{{ template_dir }}/scripts/Installers/Validate-GitVersion.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1" - ] - }, { "type": "powershell", "scripts":[ diff --git a/images/win/Windows2019-Azure.json b/images/win/Windows2019-Azure.json index 8f82a6eb..400be83f 100644 --- a/images/win/Windows2019-Azure.json +++ b/images/win/Windows2019-Azure.json @@ -298,6 +298,12 @@ "{{ template_dir }}/scripts/Installers/Download-ToolCache.ps1" ] }, + { + "type": "powershell", + "scripts":[ + "{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1" + ] + }, { "type": "powershell", "scripts":[ @@ -528,12 +534,6 @@ "{{ template_dir }}/scripts/Installers/Install-GitVersion.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1" - ] - }, { "type": "powershell", "scripts":[ @@ -607,6 +607,12 @@ "{{ template_dir }}/scripts/Installers/Validate-ToolCache.ps1" ] }, + { + "type": "powershell", + "scripts":[ + "{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1" + ] + }, { "type": "powershell", "scripts":[ @@ -801,12 +807,6 @@ "{{ template_dir }}/scripts/Installers/Validate-GitVersion.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1" - ] - }, { "type": "powershell", "scripts":[ From 09bc20f23875c19774c58472bbefdd36bbd546df Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Thu, 12 Mar 2020 23:46:11 +0300 Subject: [PATCH 18/44] move inline to envvariables.sh --- images/linux/scripts/installers/envvariables.sh | 7 +++++++ images/linux/ubuntu1604.json | 16 +++++----------- images/linux/ubuntu1804.json | 16 +++++----------- 3 files changed, 17 insertions(+), 22 deletions(-) create mode 100644 images/linux/scripts/installers/envvariables.sh diff --git a/images/linux/scripts/installers/envvariables.sh b/images/linux/scripts/installers/envvariables.sh new file mode 100644 index 00000000..7ffdd35f --- /dev/null +++ b/images/linux/scripts/installers/envvariables.sh @@ -0,0 +1,7 @@ +#Set ImageVersion and ImageOS env variables +"echo ImageVersion=$IMAGE_VERSION | tee -a /etc/environment", +"echo ImageOS=$IMAGE_OS | tee -a /etc/environment" + +# This directory is supposed to be created in $HOME and owned by user(https://github.com/actions/virtual-environments/issues/491) +mkdir -p /etc/skel/.config/configstore +echo 'export XDG_CONFIG_HOME=$HOME/.config' | tee -a /etc/skel/.bashrc diff --git a/images/linux/ubuntu1604.json b/images/linux/ubuntu1604.json index 133751f3..dc08e206 100644 --- a/images/linux/ubuntu1604.json +++ b/images/linux/ubuntu1604.json @@ -123,18 +123,12 @@ }, { "type": "shell", - "inline": [ - "echo ImageVersion={{user `image_version`}} | tee -a /etc/environment", - "echo ImageOS={{user `image_os`}} | tee -a /etc/environment" + "scripts": [ + "{{template_dir}}/scripts/installers/envvariables.sh" ], - "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" - }, - { - "type": "shell", - "inline": [ - "# This directory is supposed to be created in $HOME and owned by user(https://github.com/actions/virtual-environments/issues/491)", - "mkdir -p /etc/skel/.config/configstore", - "echo 'export XDG_CONFIG_HOME=$HOME/.config' | tee -a /etc/skel/.bashrc" + "environment_vars": [ + "IMAGE_VERSION={{user `image_version`}}", + "IMAGE_OS={{user `image_os`}}" ], "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" }, diff --git a/images/linux/ubuntu1804.json b/images/linux/ubuntu1804.json index d96b8bea..f5443028 100644 --- a/images/linux/ubuntu1804.json +++ b/images/linux/ubuntu1804.json @@ -126,18 +126,12 @@ }, { "type": "shell", - "inline": [ - "echo ImageVersion={{user `image_version`}} | tee -a /etc/environment", - "echo ImageOS={{user `image_os`}} | tee -a /etc/environment" + "scripts": [ + "{{template_dir}}/scripts/installers/envvariables.sh" ], - "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" - }, - { - "type": "shell", - "inline": [ - "# This directory is supposed to be created in $HOME and owned by user(https://github.com/actions/virtual-environments/issues/491)", - "mkdir -p /etc/skel/.config/configstore", - "echo 'export XDG_CONFIG_HOME=$HOME/.config' | tee -a /etc/skel/.bashrc" + "environment_vars": [ + "IMAGE_VERSION={{user `image_version`}}", + "IMAGE_OS={{user `image_os`}}" ], "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" }, From d9f22812003fccf3b0822ad8a9f1ee76645291d8 Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Fri, 13 Mar 2020 00:12:02 +0300 Subject: [PATCH 19/44] remove comma and quotes --- images/linux/scripts/installers/envvariables.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/images/linux/scripts/installers/envvariables.sh b/images/linux/scripts/installers/envvariables.sh index 7ffdd35f..35e3dba6 100644 --- a/images/linux/scripts/installers/envvariables.sh +++ b/images/linux/scripts/installers/envvariables.sh @@ -1,6 +1,6 @@ #Set ImageVersion and ImageOS env variables -"echo ImageVersion=$IMAGE_VERSION | tee -a /etc/environment", -"echo ImageOS=$IMAGE_OS | tee -a /etc/environment" +echo ImageVersion=$IMAGE_VERSION | tee -a /etc/environment +echo ImageOS=$IMAGE_OS | tee -a /etc/environment # This directory is supposed to be created in $HOME and owned by user(https://github.com/actions/virtual-environments/issues/491) mkdir -p /etc/skel/.config/configstore From c0b037bd3009a8fb63e879d89573bc80aff00036 Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov <47745270+al-cheb@users.noreply.github.com> Date: Fri, 13 Mar 2020 09:39:37 +0300 Subject: [PATCH 20/44] Run script to configure TLS12 earlier (#545) --- images/win/Windows2016-Azure.json | 12 ++++++------ images/win/Windows2019-Azure.json | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/images/win/Windows2016-Azure.json b/images/win/Windows2016-Azure.json index fcb0ed4c..94f200b0 100644 --- a/images/win/Windows2016-Azure.json +++ b/images/win/Windows2016-Azure.json @@ -102,6 +102,12 @@ "{{ template_dir }}/scripts/Installers/Windows2016/Initialize-VM.ps1" ] }, + { + "type": "powershell", + "scripts":[ + "{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1" + ] + }, { "type": "windows-restart", "restart_timeout": "30m" @@ -266,12 +272,6 @@ "{{ template_dir }}/scripts/Installers/Validate-ServiceFabricSDK.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1" - ] - }, { "type": "powershell", "scripts":[ diff --git a/images/win/Windows2019-Azure.json b/images/win/Windows2019-Azure.json index 8f82a6eb..c6df555b 100644 --- a/images/win/Windows2019-Azure.json +++ b/images/win/Windows2019-Azure.json @@ -102,6 +102,12 @@ "{{ template_dir }}/scripts/Installers/Windows2019/Initialize-VM.ps1" ] }, + { + "type": "powershell", + "scripts":[ + "{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1" + ] + }, { "type": "windows-restart", "restart_timeout": "10m" @@ -247,12 +253,6 @@ "{{ template_dir }}/scripts/Installers/Validate-ServiceFabricSDK.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1" - ] - }, { "type": "powershell", "scripts":[ From d05df3249201476de2e111f1e57d36a6ce79b34b Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Fri, 13 Mar 2020 11:09:03 +0300 Subject: [PATCH 21/44] rename script to configure-environment.sh --- .../installers/{envvariables.sh => configure-environment.sh} | 0 images/linux/ubuntu1604.json | 2 +- images/linux/ubuntu1804.json | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename images/linux/scripts/installers/{envvariables.sh => configure-environment.sh} (100%) diff --git a/images/linux/scripts/installers/envvariables.sh b/images/linux/scripts/installers/configure-environment.sh similarity index 100% rename from images/linux/scripts/installers/envvariables.sh rename to images/linux/scripts/installers/configure-environment.sh diff --git a/images/linux/ubuntu1604.json b/images/linux/ubuntu1604.json index dc08e206..45b7386c 100644 --- a/images/linux/ubuntu1604.json +++ b/images/linux/ubuntu1604.json @@ -124,7 +124,7 @@ { "type": "shell", "scripts": [ - "{{template_dir}}/scripts/installers/envvariables.sh" + "{{template_dir}}/scripts/installers/configure-environment.sh" ], "environment_vars": [ "IMAGE_VERSION={{user `image_version`}}", diff --git a/images/linux/ubuntu1804.json b/images/linux/ubuntu1804.json index f5443028..4cf6f15b 100644 --- a/images/linux/ubuntu1804.json +++ b/images/linux/ubuntu1804.json @@ -127,7 +127,7 @@ { "type": "shell", "scripts": [ - "{{template_dir}}/scripts/installers/envvariables.sh" + "{{template_dir}}/scripts/installers/configure-environment.sh" ], "environment_vars": [ "IMAGE_VERSION={{user `image_version`}}", From c985fea383e5a77473d089b5dee4fd1c27de3d85 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Fri, 13 Mar 2020 13:02:25 +0300 Subject: [PATCH 22/44] Add check for sdk manager installation --- images/linux/scripts/installers/1604/android.sh | 13 ++++++++++++- images/linux/scripts/installers/1804/android.sh | 12 +++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/images/linux/scripts/installers/1604/android.sh b/images/linux/scripts/installers/1604/android.sh index c9b4d9d2..8f132114 100644 --- a/images/linux/scripts/installers/1604/android.sh +++ b/images/linux/scripts/installers/1604/android.sh @@ -22,8 +22,19 @@ wget -O android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux unzip android-sdk.zip -d ${ANDROID_SDK_ROOT} rm -f android-sdk.zip +# Check sdk manager installation +${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list 1>/dev/null +if [ $? -eq 0 ] +then + echo "Android SDK manager was installed" +else + echo "Android SDK manager was not installed" + exit 1 +fi + + # Install the following SDKs and build tools, passing in "y" to accept licenses. -echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ +echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \ "ndk-bundle" \ "platform-tools" \ "platforms;android-29" \ diff --git a/images/linux/scripts/installers/1804/android.sh b/images/linux/scripts/installers/1804/android.sh index c415080d..098e9c3c 100644 --- a/images/linux/scripts/installers/1804/android.sh +++ b/images/linux/scripts/installers/1804/android.sh @@ -22,8 +22,18 @@ wget -O android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux unzip android-sdk.zip -d ${ANDROID_SDK_ROOT} rm -f android-sdk.zip +# Check sdk manager installation +${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list 1>/dev/null +if [ $? -eq 0 ] +then + echo "Android SDK manager was installed" +else + echo "Android SDK manager was not installed" + exit 1 +fi + # Install the following SDKs and build tools, passing in "y" to accept licenses. -echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ +echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \ "ndk-bundle" \ "platform-tools" \ "platforms;android-29" \ From 50c81bd62cb9c9e2a007bd6ffef399abe0e24c75 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Fri, 13 Mar 2020 13:26:19 +0300 Subject: [PATCH 23/44] Remove varaible from path --- images/linux/scripts/installers/1604/android.sh | 2 +- images/linux/scripts/installers/1804/android.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/images/linux/scripts/installers/1604/android.sh b/images/linux/scripts/installers/1604/android.sh index 8f132114..0ce3657b 100644 --- a/images/linux/scripts/installers/1604/android.sh +++ b/images/linux/scripts/installers/1604/android.sh @@ -23,7 +23,7 @@ unzip android-sdk.zip -d ${ANDROID_SDK_ROOT} rm -f android-sdk.zip # Check sdk manager installation -${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list 1>/dev/null +/usr/local/lib/android/tools/bin/sdkmanager --list 1>/dev/null if [ $? -eq 0 ] then echo "Android SDK manager was installed" diff --git a/images/linux/scripts/installers/1804/android.sh b/images/linux/scripts/installers/1804/android.sh index 098e9c3c..042d93e2 100644 --- a/images/linux/scripts/installers/1804/android.sh +++ b/images/linux/scripts/installers/1804/android.sh @@ -23,7 +23,7 @@ unzip android-sdk.zip -d ${ANDROID_SDK_ROOT} rm -f android-sdk.zip # Check sdk manager installation -${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list 1>/dev/null +/usr/local/lib/android/tools/bin/sdkmanager --list 1>/dev/null if [ $? -eq 0 ] then echo "Android SDK manager was installed" From 4e4275f2f975f9b7480c1b59e71019a76ffbc01a Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Fri, 13 Mar 2020 13:29:28 +0300 Subject: [PATCH 24/44] Fix typo --- images/linux/scripts/installers/1604/android.sh | 2 +- images/linux/scripts/installers/1804/android.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/images/linux/scripts/installers/1604/android.sh b/images/linux/scripts/installers/1604/android.sh index 0ce3657b..490dca0b 100644 --- a/images/linux/scripts/installers/1604/android.sh +++ b/images/linux/scripts/installers/1604/android.sh @@ -23,7 +23,7 @@ unzip android-sdk.zip -d ${ANDROID_SDK_ROOT} rm -f android-sdk.zip # Check sdk manager installation -/usr/local/lib/android/tools/bin/sdkmanager --list 1>/dev/null +/usr/local/lib/android/sdk/tools/bin/sdkmanager --list 1>/dev/null if [ $? -eq 0 ] then echo "Android SDK manager was installed" diff --git a/images/linux/scripts/installers/1804/android.sh b/images/linux/scripts/installers/1804/android.sh index 042d93e2..f712d13a 100644 --- a/images/linux/scripts/installers/1804/android.sh +++ b/images/linux/scripts/installers/1804/android.sh @@ -23,7 +23,7 @@ unzip android-sdk.zip -d ${ANDROID_SDK_ROOT} rm -f android-sdk.zip # Check sdk manager installation -/usr/local/lib/android/tools/bin/sdkmanager --list 1>/dev/null +/usr/local/lib/android/sdk/tools/bin/sdkmanager --list 1>/dev/null if [ $? -eq 0 ] then echo "Android SDK manager was installed" From 8142380a817c5b701383b867b112b541a7e0312e Mon Sep 17 00:00:00 2001 From: Image generation service account Date: Fri, 13 Mar 2020 11:12:51 +0000 Subject: [PATCH 25/44] Updating readme file for AzP.20200308.ubuntu16.0 version 20200308 --- images/linux/Ubuntu1604-README.md | 43 ++++++++++++++++--------------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/images/linux/Ubuntu1604-README.md b/images/linux/Ubuntu1604-README.md index a00a4084..7b5be124 100644 --- a/images/linux/Ubuntu1604-README.md +++ b/images/linux/Ubuntu1604-README.md @@ -1,16 +1,11 @@ # Ubuntu 16.04.6 LTS -The following software is installed on machines with the 20200301.1 update. +The following software is installed on machines with the 20200308.0 update. *** - 7-Zip 9.20 -- Ansible (ansible 2.9.4) +- Ansible (ansible 2.9.6) - AzCopy (azcopy 7.3.0-netcore) - Azure CLI (azure-cli 2.1.0) - Azure CLI (azure-devops 0.17.0) -- Bazel (Build label: 2.1.1 -Build target: bazel-out/k8-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar -Build time: Fri Feb 21 14:56:47 2020 (1582297007) -Build timestamp: 1582297007 -Build timestamp as int: 1582297007) - Basic CLI: - curl - dnsutils @@ -37,7 +32,7 @@ Build timestamp as int: 1582297007) - wget - zip - zstd -- AWS CLI (aws-cli/1.18.11 Python/2.7.12 Linux/4.15.0-1071-azure botocore/1.15.11) +- AWS CLI (aws-cli/1.18.16 Python/2.7.12 Linux/4.15.0-1071-azure botocore/1.15.16) - build-essential - Clang 6.0 (6.0.1) - Clang 8 (8.0.1) @@ -107,7 +102,7 @@ Build timestamp as int: 1582297007) - 2.1.300 - Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4) - Firefox (Mozilla Firefox 73.0.1) -- Geckodriver (); Gecko Driver is available via GECKOWEBDRIVER environment variable +- Geckodriver (0.26.0); Gecko Driver is available via GECKOWEBDRIVER environment variable - GNU C++ 7.4.0 - GNU C++ 8.3.0 - GNU C++ 9.2.1 @@ -120,9 +115,9 @@ Build timestamp as int: 1582297007) - Go 1.11 (go version go1.11.12 linux/amd64) - Go 1.12 (go version go1.12.7 linux/amd64) - Go 1.13 (go version go1.13 linux/amd64) -- Google Chrome (Google Chrome 80.0.3987.122 ) -- Chromedriver (ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882})); Chrome Driver is available via CHROMEWEBDRIVER environment variable -- Google Cloud SDK (282.0.0) +- Google Chrome (Google Chrome 80.0.3987.132 ) +- ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882}); Chrome Driver is available via CHROMEWEBDRIVER environment variable +- Google Cloud SDK (283.0.0) - Haskell Cabal (cabal-install version 2.0.0.1 compiled using version 2.0.1.1 of the Cabal library ) - Haskell Cabal (cabal-install version 2.2.0.0 @@ -140,21 +135,22 @@ compiled using version 3.0.2.0 of the Cabal library ) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.5) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.1) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.2) +- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.3) - Haskell Stack (Version 2.1.3, Git revision 636e3a759d51127df2b62f90772def126cdf6d1f (7735 commits) x86_64 hpack-0.31.2) -- Heroku (heroku/7.38.2 linux-x64 node-v12.13.0) -- HHVM (HipHop VM 4.46.0 (rel)) +- Heroku (heroku/7.39.0 linux-x64 node-v12.13.0) +- HHVM (HipHop VM 4.47.0 (rel)) - ImageMagick - Azul Zulu OpenJDK (7) (openjdk version "1.7.0_252") - Azul Zulu OpenJDK (8) (openjdk version "1.8.0_242") - Azul Zulu OpenJDK (11) (openjdk version "11.0.6" 2020-01-14 LTS) - Azul Zulu OpenJDK (12) (openjdk version "12.0.2" 2019-07-16) - Ant (Apache Ant(TM) version 1.9.6 compiled on July 20 2018) -- Gradle 6.2.1 +- Gradle 6.2.2 - Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)) - Kind (kind v0.7.0 go1.13.6 linux/amd64) - kubectl (Client Version: v1.17.3) -- helm (Client: v2.16.3+g1ee0254) -- Leiningen (Leiningen 2.9.2 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) +- helm (v3.1.1+gafe7058) +- Leiningen (Leiningen 2.9.1 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) - Mercurial (Mercurial Distributed SCM (version 4.4.1)) - Miniconda (conda 4.7.12) - Mono (Mono JIT compiler version 6.8.0.105 (tarball Tue Feb 4 21:20:35 UTC 2020)) @@ -168,9 +164,11 @@ Local version: Unknown) - n (6.3.1) - Parcel (1.12.4) - TypeScript (Version 3.8.3) -- Webpack (4.41.6) +- Webpack (4.42.0) - Webpack CLI (3.3.11) -- Yarn (1.22.0) +- Yarn (1.22.1) +- Bazel (bazel 2.2.0) +- Bazelisk (1.3.0) - PhantomJS (2.1.1) - PHP 5.6 (PHP 5.6.40-24+ubuntu16.04.1+deb.sury.org+1 (cli) ) - PHP 7.0 (PHP 7.0.33-23+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:20:42) ( NTS )) @@ -182,7 +180,7 @@ Local version: Unknown) - PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.) - Pollinate - psql (PostgreSQL) 9.5.19 -- Powershell (PowerShell 6.2.4) +- Powershell (PowerShell 7.0.0) - ruby (2.3.1p112) - gem (3.1.2) - rustup (1.21.1) @@ -195,11 +193,13 @@ Local version: Unknown) the 0.53.1) - cbindgen (0.13.1) +- Julia (julia version 1.3.1) - sbt (1.3.8) - Selenium server standalone (available via SELENIUM_JAR_PATH environment variable) - Sphinx Open Source Search Server - Subversion (svn, version 1.9.3 (r1718519)) -- Terraform (Terraform v0.12.21) +- Terraform (Terraform v0.12.23) +- Packer (1.5.4) - Vcpkg 2020.02.04-unknownhash - Zeit Now CLI (17.0.4) - Google Repository 58 @@ -227,6 +227,7 @@ the - Android SDK Platform 15 - Android SDK Platform 10 - Android SDK Patch Applier v4 +- Android SDK Build-Tools 29.0.3 - Android SDK Build-Tools 29.0.2 - Android SDK Build-Tools 29.0.0 - Android SDK Build-Tools 28.0.3 From 6d40dbd2e4664a8090de428c305a8eabae6b958a Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev <48208649+miketimofeev@users.noreply.github.com> Date: Sat, 14 Mar 2020 09:34:27 +0000 Subject: [PATCH 26/44] fix readme name (#557) --- images.CI/azure-pipelines/windows2019.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images.CI/azure-pipelines/windows2019.yml b/images.CI/azure-pipelines/windows2019.yml index 8675f087..f35a4f7a 100644 --- a/images.CI/azure-pipelines/windows2019.yml +++ b/images.CI/azure-pipelines/windows2019.yml @@ -17,4 +17,4 @@ jobs: - template: image-generation.yml parameters: image_type: Windows2019-Azure - image_readme_name: Windows2016-Readme.md \ No newline at end of file + image_readme_name: Windows2019-Readme.md \ No newline at end of file From 936d5e12dcde64fe3c40a328b5144dee97590c0e Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Mon, 16 Mar 2020 09:11:32 +0300 Subject: [PATCH 27/44] Create android sdk directory --- images/linux/scripts/installers/1604/android.sh | 3 +++ images/linux/scripts/installers/1804/android.sh | 3 +++ 2 files changed, 6 insertions(+) diff --git a/images/linux/scripts/installers/1604/android.sh b/images/linux/scripts/installers/1604/android.sh index 490dca0b..7abeb2c1 100644 --- a/images/linux/scripts/installers/1604/android.sh +++ b/images/linux/scripts/installers/1604/android.sh @@ -16,6 +16,9 @@ source $HELPER_SCRIPTS/apt.sh # ANDROID_HOME is deprecated, but older versions of Gradle rely on it echo "ANDROID_HOME=${ANDROID_SDK_ROOT}" | tee -a /etc/environment +# Create android sdk directory +mkdir -p ${ANDROID_SDK_ROOT} + # Download the latest command line tools so that we can accept all of the licenses. # See https://developer.android.com/studio/#command-tools wget -O android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip diff --git a/images/linux/scripts/installers/1804/android.sh b/images/linux/scripts/installers/1804/android.sh index f712d13a..c8ff7baf 100644 --- a/images/linux/scripts/installers/1804/android.sh +++ b/images/linux/scripts/installers/1804/android.sh @@ -16,6 +16,9 @@ echo "ANDROID_SDK_ROOT=${ANDROID_SDK_ROOT}" | tee -a /etc/environment # ANDROID_HOME is deprecated, but older versions of Gradle rely on it echo "ANDROID_HOME=${ANDROID_SDK_ROOT}" | tee -a /etc/environment +# Create android sdk directory +mkdir -p ${ANDROID_SDK_ROOT} + # Download the latest command line tools so that we can accept all of the licenses. # See https://developer.android.com/studio/#command-tools wget -O android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip From 110661eece13dc27a925ca017fb262e104565ee3 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Mon, 16 Mar 2020 09:16:06 +0300 Subject: [PATCH 28/44] Minor fix --- images/linux/scripts/installers/1604/android.sh | 2 ++ images/linux/scripts/installers/1804/android.sh | 2 ++ 2 files changed, 4 insertions(+) diff --git a/images/linux/scripts/installers/1604/android.sh b/images/linux/scripts/installers/1604/android.sh index 7abeb2c1..43cab549 100644 --- a/images/linux/scripts/installers/1604/android.sh +++ b/images/linux/scripts/installers/1604/android.sh @@ -4,6 +4,8 @@ ## Desc: Installs Android SDK ################################################################################ +set -e + # Source the helpers for use with the script source $HELPER_SCRIPTS/document.sh source $HELPER_SCRIPTS/apt.sh diff --git a/images/linux/scripts/installers/1804/android.sh b/images/linux/scripts/installers/1804/android.sh index c8ff7baf..1a1486e3 100644 --- a/images/linux/scripts/installers/1804/android.sh +++ b/images/linux/scripts/installers/1804/android.sh @@ -4,6 +4,8 @@ ## Desc: Installs Android SDK ################################################################################ +set -e + # Source the helpers for use with the script source $HELPER_SCRIPTS/document.sh source $HELPER_SCRIPTS/apt.sh From 7584c7b8793620167c46cd587f35c46520b5f26e Mon Sep 17 00:00:00 2001 From: Andy Mishechkin <57713077+andy-mishechkin@users.noreply.github.com> Date: Mon, 16 Mar 2020 10:52:13 +0300 Subject: [PATCH 29/44] Add Hub installation (#529) * Hub installation has been added * Checking and documentation updating has been created * Canges in hub version detection code * GIT_LFS_PATH has been removed from hub version detection * Copy-Past has been returned * Refactoring for separate command checking --- images/linux/scripts/installers/git.sh | 10 +++ images/win/scripts/Installers/Install-Git.ps1 | 1 + .../win/scripts/Installers/Validate-Git.ps1 | 77 +++++++++++-------- 3 files changed, 56 insertions(+), 32 deletions(-) diff --git a/images/linux/scripts/installers/git.sh b/images/linux/scripts/installers/git.sh index 026e73cd..1d8e58a1 100644 --- a/images/linux/scripts/installers/git.sh +++ b/images/linux/scripts/installers/git.sh @@ -35,3 +35,13 @@ echo "Lastly, document the installed versions" DocumentInstalledItem "Git ($(git --version 2>&1 | cut -d ' ' -f 3))" # git-lfs/2.6.1 (GitHub; linux amd64; go 1.11.1) DocumentInstalledItem "Git Large File Storage (LFS) ($(git-lfs --version 2>&1 | cut -d ' ' -f 1 | cut -d '/' -f 2))" + +#Install hub +snap install hub --classic +if command -v hub; then + echo "hub CLI was installed successfully" + DocumentInstalledItem "Hub CLI ($(hub --version | grep "hub version" | cut -d ' ' -f 3))" +else + echo "[!] Hub CLI was not installed" + exit 1 +fi diff --git a/images/win/scripts/Installers/Install-Git.ps1 b/images/win/scripts/Installers/Install-Git.ps1 index a67d7c99..24efc5bd 100644 --- a/images/win/scripts/Installers/Install-Git.ps1 +++ b/images/win/scripts/Installers/Install-Git.ps1 @@ -8,6 +8,7 @@ Import-Module -Name ImageHelpers # Install the latest version of Git which is bundled with Git LFS. # See https://chocolatey.org/packages/git choco install git -y --package-parameters="/GitAndUnixToolsOnPath /WindowsTerminal /NoShellIntegration" +choco install hub # Disable GCM machine-wide [Environment]::SetEnvironmentVariable("GCM_INTERACTIVE", "Never", [System.EnvironmentVariableTarget]::Machine) diff --git a/images/win/scripts/Installers/Validate-Git.ps1 b/images/win/scripts/Installers/Validate-Git.ps1 index 6f2bb33f..1927a6ad 100644 --- a/images/win/scripts/Installers/Validate-Git.ps1 +++ b/images/win/scripts/Installers/Validate-Git.ps1 @@ -2,48 +2,61 @@ ## File: Validate-Git.ps1 ## Desc: Validate Git for Windows ################################################################################ - -if((Get-Command -Name 'git') -and (Get-Command -Name 'bash') -and (Get-Command -Name 'awk') -and (Get-Command -Name 'git-lfs')) -{ - Write-Host "$(git version) on path" - Write-Host "$(git-lfs version) on path" +function Test-CommandName { + param( + [parameter(Mandatory)][string] $CommandName + ) + Write-Host "Checking the [$CommandName]" + if(-not (Get-Command $CommandName -ErrorAction "Continue")) { + Write-Host "[!] $CommandName is not found" + exit 1 + } } -else -{ - Write-Host "git or git-lfs are not on path." - exit 1 +function Test-Command { + param( + [parameter(Mandatory)][string] $CommandName, + [parameter(Mandatory)][string] $CommandDescription, + [parameter(Mandatory)][string] $VersionCmd, + [parameter(Mandatory)][string] $regexVersion, + [parameter(Mandatory)][string] $DescriptionMarkdown + ) + Test-CommandName -CommandName $CommandName + + $strVersion = Invoke-Expression $VersionCmd + Write-Host "$strVersion on path" + if($strVersion -match $regexVersion) { + $Version = $Matches.version + } + else { + Write-Host "[!] $CommandName version detection failed" + exit 1 + } + # Adding description of the software to Markdown + $DescriptionMarkdown = $DescriptionMarkdown -f $Version + Add-SoftwareDetailsToMarkdown -SoftwareName $CommandDescription -DescriptionMarkdown $DescriptionMarkdown } +Test-CommandName -CommandName 'bash' +Test-CommandName -CommandName 'awk' -if( $(git version) -match 'git version (?.*).win.*' ) -{ - $gitVersion = $Matches.version -} - -if( $(git-lfs version) -match 'git-lfs\/(?.*) \(Git.*' ) -{ - $gitLfsVersion = $Matches.version -} - -# Adding description of the software to Markdown -$SoftwareName = "Git" - -$Description = @" -_Version:_ $gitVersion
+$GitDescription = @" +_Version:_ {0}
_Environment:_ * PATH: contains location of git.exe "@ +Test-Command -CommandName 'git' -CommandDescription 'Git' -VersionCmd "git version" -regexVersion 'git version (?.*).win.*' -DescriptionMarkdown $GitDescription -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description - -# Adding description of the software to Markdown -$SoftwareName = "Git Large File Storage (LFS)" - -$Description = @" -_Version:_ $gitLfsVersion
+$GitLfsDescription = @" +_Version:_ {0}
_Environment:_ * PATH: contains location of git-lfs.exe * GIT_LFS_PATH: location of git-lfs.exe "@ +Test-Command -CommandName 'git-lfs' -CommandDescription 'Git Large File Storage (LFS)' -VersionCmd "git-lfs version" -regexVersion 'git-lfs\/(?.*) \(Git.*' -DescriptionMarkdown $GitLfsDescription -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description +$HubCliDescription = @" +_Version:_ {0}
+_Environment:_ +* PATH: contains location of hub.exe +"@ +Test-Command -CommandName 'hub' -CommandDescription 'Hub CLI' -VersionCmd "hub version | Select-String 'hub version'" -regexVersion 'hub version (?.*)' -DescriptionMarkdown $HubCliDescription \ No newline at end of file From 6be8521bf6af383665f9d418f3e2d00a0fc68851 Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov Date: Mon, 16 Mar 2020 12:51:40 +0300 Subject: [PATCH 30/44] depreacted BOOST_ROOT env variable --- images/linux/scripts/installers/boost.sh | 14 ++++++-------- images/linux/ubuntu1604.json | 3 +-- images/linux/ubuntu1804.json | 3 +-- 3 files changed, 8 insertions(+), 12 deletions(-) diff --git a/images/linux/scripts/installers/boost.sh b/images/linux/scripts/installers/boost.sh index 673b1f61..9f8c9261 100644 --- a/images/linux/scripts/installers/boost.sh +++ b/images/linux/scripts/installers/boost.sh @@ -7,18 +7,16 @@ # Source the helpers for use with the script source $HELPER_SCRIPTS/document.sh +TOOLSET_PATH="$INSTALLER_SCRIPT_FOLDER/toolcache.json" BOOST_LIB=/usr/local/share/boost +BOOST_VERSIONS=$(cat toolset.json | jq -r 'to_entries[] | select(.key | match("boost")) | .value[] +".0"') # Install Boost -for BOOST_VERSION in ${BOOST_VERSIONS//,/ } +for BOOST_VERSION in ${BOOST_VERSIONS} do - BOOST_SYMLINK_VER=`echo "${BOOST_VERSION//[.]/_}"` - BOOST_ROOT="BOOST_ROOT_$BOOST_SYMLINK_VER" - - echo "$BOOST_ROOT=$BOOST_LIB/$BOOST_VERSION" | tee -a /etc/environment - if [[ $BOOST_VERSION == $BOOST_DEFAULT ]]; then - echo "BOOST_ROOT=$BOOST_LIB/$BOOST_VERSION" | tee -a /etc/environment - fi + BOOST_SYMLINK_VER=$(echo "${BOOST_VERSION//[.]/_}") + BOOST_ROOT_VERSION="BOOST_ROOT_$BOOST_SYMLINK_VER" + echo "$BOOST_ROOT_VERSION=$BOOST_LIB/$BOOST_VERSION" | tee -a /etc/environment DocumentInstalledItem "Boost C++ Libraries $BOOST_VERSION" done diff --git a/images/linux/ubuntu1604.json b/images/linux/ubuntu1604.json index 45b7386c..e604b058 100644 --- a/images/linux/ubuntu1604.json +++ b/images/linux/ubuntu1604.json @@ -240,8 +240,7 @@ "environment_vars": [ "METADATA_FILE={{user `metadata_file`}}", "HELPER_SCRIPTS={{user `helper_script_folder`}}", - "BOOST_VERSIONS=1.69.0", - "BOOST_DEFAULT=1.69.0" + "INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}" ], "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" }, diff --git a/images/linux/ubuntu1804.json b/images/linux/ubuntu1804.json index 4cf6f15b..6396229d 100644 --- a/images/linux/ubuntu1804.json +++ b/images/linux/ubuntu1804.json @@ -242,8 +242,7 @@ "environment_vars": [ "METADATA_FILE={{user `metadata_file`}}", "HELPER_SCRIPTS={{user `helper_script_folder`}}", - "BOOST_VERSIONS=1.69.0", - "BOOST_DEFAULT=1.69.0" + "INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}" ], "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" }, From 3e14d4751623b00ccc67f4e8a8e821ae407e5ed2 Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov Date: Mon, 16 Mar 2020 12:52:43 +0300 Subject: [PATCH 31/44] depreacted BOOST_ROOT env variable --- images/linux/scripts/installers/boost.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images/linux/scripts/installers/boost.sh b/images/linux/scripts/installers/boost.sh index 9f8c9261..5cdae6a0 100644 --- a/images/linux/scripts/installers/boost.sh +++ b/images/linux/scripts/installers/boost.sh @@ -9,7 +9,7 @@ source $HELPER_SCRIPTS/document.sh TOOLSET_PATH="$INSTALLER_SCRIPT_FOLDER/toolcache.json" BOOST_LIB=/usr/local/share/boost -BOOST_VERSIONS=$(cat toolset.json | jq -r 'to_entries[] | select(.key | match("boost")) | .value[] +".0"') +BOOST_VERSIONS=$(cat $TOOLSET_PATH | jq -r 'to_entries[] | select(.key | match("boost")) | .value[] +".0"') # Install Boost for BOOST_VERSION in ${BOOST_VERSIONS} From 285850163d276ce58ed8db52b0f5909877e0bdbc Mon Sep 17 00:00:00 2001 From: atsushieno Date: Tue, 31 Dec 2019 01:24:24 +0900 Subject: [PATCH 32/44] Add Android SDK cmake 3.10.2 component to ubuntu16.04, 18.04 and windows. Android SDK gradle plugin supports fixed versions of cmake, which are either 3.6.4111459 or 3.10.2. 4988404, and on Github Actions our apps fail to build if their build.gradle specify cmake 3.10.2 because Android Gradle Plugin tries to download and install it if it's missing (and causes file write access violation, at least on Ubuntu). --- images/linux/scripts/installers/1604/android.sh | 1 + images/linux/scripts/installers/1804/android.sh | 1 + images/win/scripts/Installers/Update-AndroidSDK.ps1 | 1 + 3 files changed, 3 insertions(+) diff --git a/images/linux/scripts/installers/1604/android.sh b/images/linux/scripts/installers/1604/android.sh index 95a44edc..aaf2ad39 100644 --- a/images/linux/scripts/installers/1604/android.sh +++ b/images/linux/scripts/installers/1604/android.sh @@ -82,6 +82,7 @@ echo "y" | ${ANDROID_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ "add-ons;addon-google_apis-google-22" \ "add-ons;addon-google_apis-google-21" \ "cmake;3.6.4111459" \ + "cmake;3.10.2.4988404" \ "patcher;v4" # Document what was added to the image diff --git a/images/linux/scripts/installers/1804/android.sh b/images/linux/scripts/installers/1804/android.sh index 716f8bb1..a0fbb2eb 100644 --- a/images/linux/scripts/installers/1804/android.sh +++ b/images/linux/scripts/installers/1804/android.sh @@ -76,6 +76,7 @@ echo "y" | ${ANDROID_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ "add-ons;addon-google_apis-google-22" \ "add-ons;addon-google_apis-google-21" \ "cmake;3.6.4111459" \ + "cmake;3.10.2.4988404" \ "patcher;v4" # Document what was added to the image diff --git a/images/win/scripts/Installers/Update-AndroidSDK.ps1 b/images/win/scripts/Installers/Update-AndroidSDK.ps1 index 0487bb4e..4a04b0b6 100644 --- a/images/win/scripts/Installers/Update-AndroidSDK.ps1 +++ b/images/win/scripts/Installers/Update-AndroidSDK.ps1 @@ -110,6 +110,7 @@ Push-Location -Path $sdk.FullName "add-ons;addon-google_apis-google-22" ` "add-ons;addon-google_apis-google-21" ` "cmake;3.6.4111459" ` + "cmake;3.10.2.4988404" ` "patcher;v4" Pop-Location From bbaf8b92245e1842f026e36583f392770b44f2cc Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev <48208649+miketimofeev@users.noreply.github.com> Date: Mon, 16 Mar 2020 17:28:46 +0000 Subject: [PATCH 33/44] Add SQL Server Data Tools extensions to VS2019 (#559) * add extensions * add exe installation * change Reporting Services name * add switch to function, add validation * change install wdk to function * Fix template * fix scripts name * add quotes * more quotes * one more quotes * get rid of duplicate code * move quotes to function * small improvment to wix installation * add comment to validate extensions script --- images/win/Windows2016-Azure.json | 8 +- images/win/Windows2019-Azure.json | 12 +-- .../scripts/ImageHelpers/ImageHelpers.psm1 | 5 +- .../scripts/ImageHelpers/InstallHelpers.ps1 | 92 +++++++++++++------ .../{Windows2019 => }/Install-WDK.ps1 | 50 ++++------ images/win/scripts/Installers/Install-Wix.ps1 | 23 +++++ .../{Windows2019 => }/Validate-WDK.ps1 | 2 +- .../{Windows2019 => }/Validate-Wix.ps1 | 14 ++- .../Installers/Windows2016/Install-WDK.ps1 | 51 ---------- .../Installers/Windows2016/Install-Wix.ps1 | 53 ----------- .../Installers/Windows2016/Validate-SSDT.ps1 | 30 +----- .../Installers/Windows2016/Validate-WDK.ps1 | 13 --- .../Installers/Windows2016/Validate-Wix.ps1 | 62 ------------- .../Install-AnalysisExtenstion.ps1 | 11 --- .../Windows2019/Install-SSDTExtensions.ps1 | 11 +++ .../Installers/Windows2019/Install-Wix.ps1 | 14 --- .../Validate-AnalysisExtenstion.ps1 | 18 ---- .../Windows2019/Validate-SSDTExtensions.ps1 | 22 +++++ 18 files changed, 167 insertions(+), 324 deletions(-) rename images/win/scripts/Installers/{Windows2019 => }/Install-WDK.ps1 (55%) create mode 100644 images/win/scripts/Installers/Install-Wix.ps1 rename images/win/scripts/Installers/{Windows2019 => }/Validate-WDK.ps1 (90%) rename images/win/scripts/Installers/{Windows2019 => }/Validate-Wix.ps1 (76%) delete mode 100644 images/win/scripts/Installers/Windows2016/Install-WDK.ps1 delete mode 100644 images/win/scripts/Installers/Windows2016/Install-Wix.ps1 delete mode 100644 images/win/scripts/Installers/Windows2016/Validate-WDK.ps1 delete mode 100644 images/win/scripts/Installers/Windows2016/Validate-Wix.ps1 delete mode 100644 images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 create mode 100644 images/win/scripts/Installers/Windows2019/Install-SSDTExtensions.ps1 delete mode 100644 images/win/scripts/Installers/Windows2019/Install-Wix.ps1 delete mode 100644 images/win/scripts/Installers/Windows2019/Validate-AnalysisExtenstion.ps1 create mode 100644 images/win/scripts/Installers/Windows2019/Validate-SSDTExtensions.ps1 diff --git a/images/win/Windows2016-Azure.json b/images/win/Windows2016-Azure.json index b6aafce8..326474b2 100644 --- a/images/win/Windows2016-Azure.json +++ b/images/win/Windows2016-Azure.json @@ -213,7 +213,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2016/Install-Wix.ps1" + "{{ template_dir }}/scripts/Installers/Install-Wix.ps1" ] }, { @@ -229,7 +229,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2016/Install-WDK.ps1" + "{{ template_dir }}/scripts/Installers/Install-WDK.ps1" ] }, { @@ -251,7 +251,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2016/Validate-Wix.ps1" + "{{ template_dir }}/scripts/Installers/Validate-Wix.ps1" ] }, { @@ -263,7 +263,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2016/Validate-WDK.ps1" + "{{ template_dir }}/scripts/Installers/Validate-WDK.ps1" ] }, { diff --git a/images/win/Windows2019-Azure.json b/images/win/Windows2019-Azure.json index c7c0da02..94da1a0e 100644 --- a/images/win/Windows2019-Azure.json +++ b/images/win/Windows2019-Azure.json @@ -188,13 +188,13 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2019/Install-Wix.ps1" + "{{ template_dir }}/scripts/Installers/Install-Wix.ps1" ] }, { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1" + "{{ template_dir }}/scripts/Installers/Windows2019/Install-SSDTExtensions.ps1" ] }, { @@ -210,7 +210,7 @@ { "type": "powershell", "scripts": [ - "{{ template_dir }}/scripts/Installers/Windows2019/Install-WDK.ps1" + "{{ template_dir }}/scripts/Installers/Install-WDK.ps1" ] }, { @@ -226,13 +226,13 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2019/Validate-Wix.ps1" + "{{ template_dir }}/scripts/Installers/Validate-Wix.ps1" ] }, { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2019/Validate-AnalysisExtenstion.ps1" + "{{ template_dir }}/scripts/Installers/Windows2019/Validate-SSDTExtensions.ps1" ] }, { @@ -244,7 +244,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2019/Validate-WDK.ps1" + "{{ template_dir }}/scripts/Installers/Validate-WDK.ps1" ] }, { diff --git a/images/win/scripts/ImageHelpers/ImageHelpers.psm1 b/images/win/scripts/ImageHelpers/ImageHelpers.psm1 index f38e3563..7f48125f 100644 --- a/images/win/scripts/ImageHelpers/ImageHelpers.psm1 +++ b/images/win/scripts/ImageHelpers/ImageHelpers.psm1 @@ -19,5 +19,8 @@ Export-ModuleMember -Function @( 'Stop-SvcWithErrHandling' 'Set-SvcWithErrHandling' 'Install-VsixExtension' - 'Get-VS19ExtensionVersion' + 'Get-VSExtensionVersion' + 'Get-WinVersion' + 'Test-IsWin19' + 'Test-IsWin16' ) diff --git a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 index eaabd236..a0bbe994 100644 --- a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 +++ b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 @@ -165,46 +165,62 @@ function Install-VsixExtension { Param ( - [String]$Url, - [String]$Name + [string] $Url, + [Parameter(Mandatory = $true)] + [string] $Name, + [string] $FilePath, + [Parameter(Mandatory = $true)] + [string] $VSversion, + [int] $retries = 20, + [switch] $InstallOnly ) - $FilePath = "${env:Temp}\$Name" - $retries = 20 - - while($retries -gt 0) + if (!$InstallOnly) { - try - { - Write-Host "Downloading $Name..." - (New-Object System.Net.WebClient).DownloadFile($Url, $FilePath) - break - } - catch - { - Write-Host "There is an error during $Name downloading" - $_ + $FilePath = "${env:Temp}\$Name" - $retries-- - - if ($retries -eq 0) + while($retries -gt 0) + { + try { - Write-Host "File can't be downloaded" - $_ - exit 1 + Write-Host "Downloading $Name..." + (New-Object System.Net.WebClient).DownloadFile($Url, $FilePath) + break } + catch + { + Write-Host "There is an error during $Name downloading" + $_ - Write-Host "Waiting 30 seconds before retrying. Retries left: $retries" - Start-Sleep -Seconds 30 + $retries-- + + if ($retries -eq 0) + { + Write-Host "File can't be downloaded" + $_ + exit 1 + } + + Write-Host "Waiting 30 seconds before retrying. Retries left: $retries" + Start-Sleep -Seconds 30 + } } } - $ArgumentList = ('/quiet', $FilePath) + $ArgumentList = ('/quiet', "`"$FilePath`"") Write-Host "Starting Install $Name..." try { - $process = Start-Process -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\VSIXInstaller.exe" -ArgumentList $ArgumentList -Wait -PassThru + #There are 2 types of packages at the moment - exe and vsix + if ($Name -match "vsix") + { + $process = Start-Process -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\$VSversion\Enterprise\Common7\IDE\VSIXInstaller.exe" -ArgumentList $ArgumentList -Wait -PassThru + } + else + { + $process = Start-Process -FilePath ${env:Temp}\$Name /Q -Wait -PassThru + } } catch { @@ -225,11 +241,14 @@ function Install-VsixExtension exit 1 } - #Cleanup installation files - Remove-Item -Force -Confirm:$false $FilePath + #Cleanup downloaded installation files + if (!$InstallOnly) + { + Remove-Item -Force -Confirm:$false $FilePath + } } -function Get-VS19ExtensionVersion +function Get-VSExtensionVersion { param ( [string] [Parameter(Mandatory=$true)] $packageName @@ -255,3 +274,18 @@ function Get-VS19ExtensionVersion return $packageVersion } + +function Get-WinVersion +{ + (Get-WmiObject -class Win32_OperatingSystem).Caption +} + +function Test-IsWin19 +{ + (Get-WinVersion) -match "2019" +} + +function Test-IsWin16 +{ + (Get-WinVersion) -match "2016" +} diff --git a/images/win/scripts/Installers/Windows2019/Install-WDK.ps1 b/images/win/scripts/Installers/Install-WDK.ps1 similarity index 55% rename from images/win/scripts/Installers/Windows2019/Install-WDK.ps1 rename to images/win/scripts/Installers/Install-WDK.ps1 index b7064437..9df64d91 100644 --- a/images/win/scripts/Installers/Windows2019/Install-WDK.ps1 +++ b/images/win/scripts/Installers/Install-WDK.ps1 @@ -4,8 +4,24 @@ ################################################################################ # Requires Windows SDK with the same version number as the WDK -$winSdkUrl = "https://go.microsoft.com/fwlink/p/?linkid=2083338" -$wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2085767" + +Import-Module -Name ImageHelpers -Force + +if(Test-IsWin19) +{ + $winSdkUrl = "https://go.microsoft.com/fwlink/p/?linkid=2083338" + $wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2085767" + $FilePath = "C:\Program Files (x86)\Windows Kits\10\Vsix\VS2019\WDK.vsix" + $VSver = "2019" +} +else +{ + $winSdkUrl = "https://go.microsoft.com/fwlink/p/?LinkID=2023014" + $wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2026156" + $FilePath = "C:\Program Files (x86)\Windows Kits\10\Vsix\WDK.vsix" + $VSver = "2017" +} + # `winsdksetup.exe /features + /quiet` installs all features without showing the GUI $sdkExitCode = Install-EXE -Url $winSdkUrl -Name "winsdksetup.exe" -ArgumentList ("/features", "+", "/quiet") @@ -26,32 +42,4 @@ if ($wdkExitCode -ne 0) } # Need to install the VSIX to get the build targets when running VSBuild -# Write-Host "Installing WDK.vsix" -try -{ - $process = Start-Process ` - -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\VSIXInstaller.exe" ` - -ArgumentList ("/quiet", '"C:\Program Files (x86)\Windows Kits\10\Vsix\VS2019\WDK.vsix"') ` - -Wait ` - -PassThru -} -catch -{ - Write-Host "There is an error during WDK.vsix installation" - $_ - exit 1 -} - - - $exitCode = $process.ExitCode - -if ($exitCode -eq 0 -or $exitCode -eq 1001) # 1001 means the extension is already installed -{ - Write-Host "WDK.vsix installed successfully" -} -else -{ - Write-Host "Unsuccessful exit code returned by the installation process: $exitCode." -} - -exit $exitCode +Install-VsixExtension -FilePath $FilePath -Name "WDK.vsix" -VSversion $VSver -InstallOnly diff --git a/images/win/scripts/Installers/Install-Wix.ps1 b/images/win/scripts/Installers/Install-Wix.ps1 new file mode 100644 index 00000000..076be86c --- /dev/null +++ b/images/win/scripts/Installers/Install-Wix.ps1 @@ -0,0 +1,23 @@ +################################################################################ +## File: Install-Wix.ps1 +## Desc: Install WIX. +################################################################################ + +Import-Module -Name ImageHelpers -Force; + +choco install wixtoolset -y --force + +if(Test-IsWin19) +{ + $extensionUrl = "https://wixtoolset.gallerycdn.vsassets.io/extensions/wixtoolset/wixtoolsetvisualstudio2019extension/1.0.0.4/1563296438961/Votive2019.vsix" + $VSver = "2019" +} +else +{ + $extensionUrl = "https://robmensching.gallerycdn.vsassets.io/extensions/robmensching/wixtoolsetvisualstudio2017extension/0.9.21.62588/1494013210879/250616/4/Votive2017.vsix" + $VSver = "2017" +} + +$extensionName = "Votive$VSver.vsix" +#Installing VS extension 'Wix Toolset Visual Studio Extension' +Install-VsixExtension -Url $extensionUrl -Name $extensionName -VSversion $VSver diff --git a/images/win/scripts/Installers/Windows2019/Validate-WDK.ps1 b/images/win/scripts/Installers/Validate-WDK.ps1 similarity index 90% rename from images/win/scripts/Installers/Windows2019/Validate-WDK.ps1 rename to images/win/scripts/Installers/Validate-WDK.ps1 index c3c6a8f0..ee64f20b 100644 --- a/images/win/scripts/Installers/Windows2019/Validate-WDK.ps1 +++ b/images/win/scripts/Installers/Validate-WDK.ps1 @@ -19,7 +19,7 @@ function Get-WDKVersion } $WDKVersion = Get-WDKVersion -$WDKPackageVersion = Get-VS19ExtensionVersion -packageName "Microsoft.Windows.DriverKit" +$WDKPackageVersion = Get-VSExtensionVersion -packageName "Microsoft.Windows.DriverKit" # Adding description of the software to Markdown $SoftwareName = "Windows Driver Kit" diff --git a/images/win/scripts/Installers/Windows2019/Validate-Wix.ps1 b/images/win/scripts/Installers/Validate-Wix.ps1 similarity index 76% rename from images/win/scripts/Installers/Windows2019/Validate-Wix.ps1 rename to images/win/scripts/Installers/Validate-Wix.ps1 index 4334beb1..d755939d 100644 --- a/images/win/scripts/Installers/Windows2019/Validate-Wix.ps1 +++ b/images/win/scripts/Installers/Validate-Wix.ps1 @@ -4,6 +4,7 @@ ################################################################################ Import-Module -Name ImageHelpers -Force + function Get-WixVersion { $regKey = "HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" $installedApplications = Get-ItemProperty -Path $regKey @@ -21,14 +22,23 @@ else { exit 1 } -$WixPackageVersion = Get-VS19ExtensionVersion -packageName "WixToolset.VisualStudioExtension.Dev16" +if(Test-IsWin19) +{ + $WixPackageVersion = Get-VSExtensionVersion -packageName "WixToolset.VisualStudioExtension.Dev16" + $VSver = "2019" +} +else +{ + $WixPackageVersion = Get-VSExtensionVersion -packageName "WixToolset.VisualStudioExtension.Dev15" + $VSver = "2017" +} # Adding description of the software to Markdown $SoftwareName = "WIX Tools" $Description = @" _Toolset Version:_ $WixToolSetVersion
-_WIX Toolset Visual Studio Extension Version:_ $WixPackageVersion
+_WIX Toolset Studio $VSver Extension Version:_ $WixPackageVersion
_Environment:_ * WIX: Installation root of WIX "@ diff --git a/images/win/scripts/Installers/Windows2016/Install-WDK.ps1 b/images/win/scripts/Installers/Windows2016/Install-WDK.ps1 deleted file mode 100644 index 58707f97..00000000 --- a/images/win/scripts/Installers/Windows2016/Install-WDK.ps1 +++ /dev/null @@ -1,51 +0,0 @@ -################################################################################ -## File: Install-WDK.ps1 -## Desc: Install the Windows Driver Kit -################################################################################ - -# Version: 10.0.17763.0 -# Update Validate-WDK.ps1 if the version changes! -# There doesn't seem to be any way to check the version programmatically - -# Requires Windows SDK with the same version number as the WDK -$winSdkUrl = "https://go.microsoft.com/fwlink/p/?LinkID=2023014" -$wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2026156" - -# `winsdksetup.exe /features + /quiet` installs all features without showing the GUI -$sdkExitCode = Install-EXE -Url $winSdkUrl -Name "winsdksetup.exe" -ArgumentList ("/features", "+", "/quiet") - -if ($sdkExitCode -ne 0) -{ - Write-Host "Failed to install the Windows SDK." - exit $sdkExitCode -} - -# `wdksetup.exe /features + /quiet` installs all features without showing the GUI -$wdkExitCode = Install-EXE -Url $wdkUrl -Name "wdksetup.exe" -ArgumentList ("/features", "+", "/quiet") - -if ($wdkExitCode -ne 0) -{ - Write-Host "Failed to install the Windows Driver Kit." - exit $wdkExitCode -} - -# Need to install the VSIX to get the build targets when running VSBuild -Write-Host "Installing WDK.vsix" -$process = Start-Process ` - -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VSIXInstaller.exe" ` - -ArgumentList ("/quiet", '"C:\Program Files (x86)\Windows Kits\10\Vsix\WDK.vsix"') ` - -Wait ` - -PassThru - -$exitCode = $process.ExitCode - -if ($exitCode -eq 0 -or $exitCode -eq 1001) # 1001 means the extension is already installed -{ - Write-Host "WDK.vsix installed successfully" -} -else -{ - Write-Host "Unsuccessful exit code returned by the installation process: $exitCode." -} - -exit $exitCode diff --git a/images/win/scripts/Installers/Windows2016/Install-Wix.ps1 b/images/win/scripts/Installers/Windows2016/Install-Wix.ps1 deleted file mode 100644 index 44ee25c2..00000000 --- a/images/win/scripts/Installers/Windows2016/Install-Wix.ps1 +++ /dev/null @@ -1,53 +0,0 @@ -################################################################################ -## File: Install-Wix.ps1 -## Desc: Install WIX. -################################################################################ -function Install-VsixExtension -{ - Param - ( - [String]$Url, - [String]$Name - ) - - $exitCode = -1 - - try - { - Write-Host "Downloading $Name..." - $FilePath = "${env:Temp}\$Name" - - Invoke-WebRequest -Uri $Url -OutFile $FilePath - - $ArgumentList = ('/quiet', $FilePath) - - Write-Host "Starting Install $Name..." - $process = Start-Process -FilePath 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VSIXInstaller.exe' -ArgumentList $ArgumentList -Wait -PassThru - $exitCode = $process.ExitCode - - if ($exitCode -eq 0 -or $exitCode -eq 3010) - { - Write-Host -Object 'Installation successful' - return $exitCode - } - else - { - Write-Host -Object "Non zero exit code returned by the installation process : $exitCode." - return $exitCode - } - } - catch - { - Write-Host -Object "Failed to install the Extension $Name" - Write-Host -Object $_.Exception.Message - return -1 - } -} - - -choco install wixtoolset -y --force - -#Installing VS extension 'Wix Toolset Visual Studio 2017 Extension' -$exitCode = Install-VsixExtension -Url 'https://robmensching.gallerycdn.vsassets.io/extensions/robmensching/wixtoolsetvisualstudio2017extension/0.9.21.62588/1494013210879/250616/4/Votive2017.vsix' -Name 'Votive2017.vsix' - -return $exitCode diff --git a/images/win/scripts/Installers/Windows2016/Validate-SSDT.ps1 b/images/win/scripts/Installers/Windows2016/Validate-SSDT.ps1 index 9d9a1c4a..40444ee1 100644 --- a/images/win/scripts/Installers/Windows2016/Validate-SSDT.ps1 +++ b/images/win/scripts/Installers/Windows2016/Validate-SSDT.ps1 @@ -5,39 +5,13 @@ Import-Module -Name ImageHelpers -Force -function Get-SSDTExtensionPackage { - $vsProgramData = Get-Item -Path "C:\ProgramData\Microsoft\VisualStudio\Packages\_Instances" - $instanceFolders = Get-ChildItem -Path $vsProgramData.FullName - - if($instanceFolders -is [array]) - { - Write-Host "More than one instance installed" - exit 1 - } - - $stateContent = Get-Content -Path ($instanceFolders.FullName + '\state.packages.json') - $state = $stateContent | ConvertFrom-Json - $SsdtPackage = $state.packages | where { $_.id -eq "SSDT" } - return $SsdtPackage -} - - -$SsdtPackage = Get-SSDTExtensionPackage - -if($SsdtPackage){ - Write-Host "SSDT version" $SsdtPackage.version "installed" -} -else { - Write-Host "SSDT is not installed" - exit 1 -} - +$SSDTPackageVersion = Get-VSExtensionVersion -packageName "SSDT" # Adding description of the software to Markdown $SoftwareName = "SQL Server Data Tools for VS 2017" $Description = @" -_Version:_ $($SsdtPackage.version)
+_Version:_ $SSDTPackageVersion
The following components are installed: diff --git a/images/win/scripts/Installers/Windows2016/Validate-WDK.ps1 b/images/win/scripts/Installers/Windows2016/Validate-WDK.ps1 deleted file mode 100644 index f9edf160..00000000 --- a/images/win/scripts/Installers/Windows2016/Validate-WDK.ps1 +++ /dev/null @@ -1,13 +0,0 @@ -################################################################################ -## File: Validate-WDK.ps1 -## Desc: Validate the installation of the Windows Driver Kit -################################################################################ - -# Adding description of the software to Markdown -$SoftwareName = "Windows Driver Kit" - -$Description = @" -_Version:_ 10.0.17763.0
-"@ - -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description diff --git a/images/win/scripts/Installers/Windows2016/Validate-Wix.ps1 b/images/win/scripts/Installers/Windows2016/Validate-Wix.ps1 deleted file mode 100644 index 090df37a..00000000 --- a/images/win/scripts/Installers/Windows2016/Validate-Wix.ps1 +++ /dev/null @@ -1,62 +0,0 @@ -################################################################################ -## File: Validate-Wix.ps1 -## Desc: Validate WIX. -################################################################################ - -Import-Module -Name ImageHelpers -Force -function Get-WixVersion { - $regKey = "HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" - $installedApplications = Get-ItemProperty -Path $regKey - $Version = ($installedApplications | Where-Object { $_.DisplayName -and $_.DisplayName.toLower().Contains("wix") } | Select-Object -First 1).DisplayVersion - return $Version -} - -#Gets the extension details from state.json -function Get-WixExtensionPackage { - $vsProgramData = Get-Item -Path "C:\ProgramData\Microsoft\VisualStudio\Packages\_Instances" - $instanceFolders = Get-ChildItem -Path $vsProgramData.FullName - - if($instanceFolders -is [array]) - { - Write-Host "More than one instance installed" - exit 1 - } - - $stateContent = Get-Content -Path ($instanceFolders.FullName + '\state.packages.json') - $state = $stateContent | ConvertFrom-Json - $WixPackage = $state.packages | where { $_.id -eq "WixToolset.VisualStudioExtension.Dev15" } - return $WixPackage -} - -$WixToolSetVersion = Get-WixVersion - -if($WixToolSetVersion) { - Write-Host "Wix Toolset version" $WixPackage.version "installed" -} -else { - Write-Host "Wix Toolset is not installed" - exit 1 -} - -$WixPackage = Get-WixExtensionPackage - -if($WixPackage) { - Write-Host "Wix Extension version" $WixPackage.version "installed" -} -else { - Write-Host "Wix Extension is not installed" - exit 1 -} - - -# Adding description of the software to Markdown -$SoftwareName = "WIX Tools" - -$Description = @" -_Toolset Version:_ $WixToolSetVersion
-_WIX Toolset Studio 2017 Extension Version:_ $($WixPackage.version)
-_Environment:_ -* WIX: Installation root of WIX -"@ - -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description diff --git a/images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 b/images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 deleted file mode 100644 index 2d477c18..00000000 --- a/images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 +++ /dev/null @@ -1,11 +0,0 @@ -################################################################################### -## File: Install-AnalysisExtenstion.ps1 -## Desc: Install the Microsoft Analysis Services Projects Visual Studio extension -################################################################################### - -Import-Module -Name ImageHelpers -Force; - -$extensionUrl = "https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ProBITools/vsextensions/MicrosoftAnalysisServicesModelingProjects/2.9.5/vspackage" -$extensionName = "Microsoft.DataTools.AnalysisServices.vsix" - -Install-VsixExtension -Url $extensionUrl -Name $extensionName diff --git a/images/win/scripts/Installers/Windows2019/Install-SSDTExtensions.ps1 b/images/win/scripts/Installers/Windows2019/Install-SSDTExtensions.ps1 new file mode 100644 index 00000000..8c2a6cd7 --- /dev/null +++ b/images/win/scripts/Installers/Windows2019/Install-SSDTExtensions.ps1 @@ -0,0 +1,11 @@ +################################################################################### +## File: Install-SSDTExtensions.ps1 +## Desc: Install the extensions previously known as SSDT package +################################################################################### + +Import-Module -Name ImageHelpers -Force + +Install-VsixExtension -Url 'https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ProBITools/vsextensions/MicrosoftAnalysisServicesModelingProjects/2.9.5/vspackage' -Name 'Microsoft.DataTools.AnalysisServices.vsix' -VSversion "2019" +Install-VsixExtension -Url 'https://marketplace.visualstudio.com/_apis/public/gallery/publishers/SSIS/vsextensions/SqlServerIntegrationServicesProjects/3.4/vspackage' -Name 'Microsoft.DataTools.IntegrationServices.exe' -VSversion "2019" +Install-VsixExtension -Url 'https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ProBITools/vsextensions/MicrosoftReportProjectsforVisualStudio/2.6.3/vspackage' -Name 'Microsoft.DataTools.ReportingServices.vsix' -VSversion "2019" + diff --git a/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 b/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 deleted file mode 100644 index 918217c5..00000000 --- a/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 +++ /dev/null @@ -1,14 +0,0 @@ -################################################################################ -## File: Install-Wix.ps1 -## Desc: Install WIX. -################################################################################ - -Import-Module -Name ImageHelpers -Force; - -choco install wixtoolset -y --force - -$extensionUrl = "https://wixtoolset.gallerycdn.vsassets.io/extensions/wixtoolset/wixtoolsetvisualstudio2019extension/1.0.0.4/1563296438961/Votive2019.vsix" -$extensionName = "Votive2019.vsix" - -#Installing VS extension 'Wix Toolset Visual Studio 2019 Extension' -Install-VsixExtension -Url $extensionUrl -Name $extensionName diff --git a/images/win/scripts/Installers/Windows2019/Validate-AnalysisExtenstion.ps1 b/images/win/scripts/Installers/Windows2019/Validate-AnalysisExtenstion.ps1 deleted file mode 100644 index fad85d51..00000000 --- a/images/win/scripts/Installers/Windows2019/Validate-AnalysisExtenstion.ps1 +++ /dev/null @@ -1,18 +0,0 @@ -################################################################################ -## File: Validate-AnalysisExtenstion.ps1 -## Desc: Validate Microsoft Analysis Services Projects Visual Studio extension -################################################################################ - -Import-Module -Name ImageHelpers -Force - -#AnalysisPackage doesn't have any proper name in the state.packages.json file, only id is available -$AnalysisPackageVersion = Get-VS19ExtensionVersion -packageName "04a86fc2-dbd5-4222-848e-911638e487fe" - -# Adding description of the software to Markdown -$SoftwareName = "Microsoft Analysis Services Projects Visual Studio Extension" - -$Description = @" -_Version:_ $AnalysisPackageVersion
-"@ - -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description \ No newline at end of file diff --git a/images/win/scripts/Installers/Windows2019/Validate-SSDTExtensions.ps1 b/images/win/scripts/Installers/Windows2019/Validate-SSDTExtensions.ps1 new file mode 100644 index 00000000..731c10ed --- /dev/null +++ b/images/win/scripts/Installers/Windows2019/Validate-SSDTExtensions.ps1 @@ -0,0 +1,22 @@ +################################################################################ +## File: Validate-SSDTExtensions.ps1 +## Desc: Validate SQL Server Data Tools Visual Studio extensions +################################################################################ + +Import-Module -Name ImageHelpers -Force + +#These extensions don't have any proper name in the state.packages.json file, only id is available, which can be found on extension marketplace download page +$AnalysisPackageVersion = Get-VSExtensionVersion -packageName "04a86fc2-dbd5-4222-848e-911638e487fe" +$IntegrationPackageVersion = Get-VSExtensionVersion -packageName "851E7A09-7B2B-4F06-A15D-BABFCB26B970" +$ReportingPackageVersion = Get-VSExtensionVersion -packageName "717ad572-c4b7-435c-c166-c2969777f718" + +# Adding description of the software to Markdown +$SoftwareName = "Microsoft SSDT Visual Studio 2019 Extensions" + +$Description = @" +_Microsoft Analysis Services Projects Version:_ $AnalysisPackageVersion
+_SQL Server Integration Services Projects Version:_ $IntegrationPackageVersion
+_Microsoft Reporting Services Projects Version:_ $ReportingPackageVersion
+"@ + +Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description From 99478a7e217f34c4b88736bbc02625d4a7b94cab Mon Sep 17 00:00:00 2001 From: Image generation service account Date: Mon, 16 Mar 2020 17:29:14 +0000 Subject: [PATCH 34/44] Updating readme file for AzP.20200308.ubuntu18.0 version 20200308 --- images/linux/Ubuntu1804-README.md | 43 ++++++++++++++++--------------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/images/linux/Ubuntu1804-README.md b/images/linux/Ubuntu1804-README.md index 4b35378c..94f3547f 100644 --- a/images/linux/Ubuntu1804-README.md +++ b/images/linux/Ubuntu1804-README.md @@ -1,16 +1,11 @@ # Ubuntu 18.04.4 LTS -The following software is installed on machines with the 20200301.1 update. +The following software is installed on machines with the 20200308.0 update. *** - 7-Zip 16.02 -- Ansible (ansible 2.9.4) +- Ansible (ansible 2.9.6) - AzCopy (azcopy 7.3.0-netcore) - Azure CLI (azure-cli 2.1.0) - Azure CLI (azure-devops 0.17.0) -- Bazel (Build label: 2.1.1 -Build target: bazel-out/k8-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar -Build time: Fri Feb 21 14:56:47 2020 (1582297007) -Build timestamp: 1582297007 -Build timestamp as int: 1582297007) - Basic CLI: - curl - dnsutils @@ -37,7 +32,7 @@ Build timestamp as int: 1582297007) - wget - zip - zstd -- AWS CLI (aws-cli/1.18.11 Python/2.7.17 Linux/5.0.0-1032-azure botocore/1.15.11) +- AWS CLI (aws-cli/1.18.16 Python/2.7.17 Linux/5.0.0-1032-azure botocore/1.15.16) - build-essential - Clang 6.0 (6.0.1) - Clang 8 (8.0.1) @@ -107,7 +102,7 @@ Build timestamp as int: 1582297007) - 2.1.300 - Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4) - Firefox (Mozilla Firefox 73.0.1) -- Geckodriver (); Gecko Driver is available via GECKOWEBDRIVER environment variable +- Geckodriver (0.26.0); Gecko Driver is available via GECKOWEBDRIVER environment variable - GNU C++ 7.4.0 - GNU C++ 8.3.0 - GNU C++ 9.2.1 @@ -118,9 +113,9 @@ Build timestamp as int: 1582297007) - Go 1.11 (go version go1.11.12 linux/amd64) - Go 1.12 (go version go1.12.7 linux/amd64) - Go 1.13 (go version go1.13 linux/amd64) -- Google Chrome (Google Chrome 80.0.3987.122 ) -- Chromedriver (ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882})); Chrome Driver is available via CHROMEWEBDRIVER environment variable -- Google Cloud SDK (282.0.0) +- Google Chrome (Google Chrome 80.0.3987.132 ) +- ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882}); Chrome Driver is available via CHROMEWEBDRIVER environment variable +- Google Cloud SDK (283.0.0) - Haskell Cabal (cabal-install version 2.0.0.1 compiled using version 2.0.1.1 of the Cabal library ) - Haskell Cabal (cabal-install version 2.2.0.0 @@ -138,21 +133,22 @@ compiled using version 3.0.2.0 of the Cabal library ) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.5) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.1) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.2) +- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.3) - Haskell Stack (Version 2.1.3, Git revision 636e3a759d51127df2b62f90772def126cdf6d1f (7735 commits) x86_64 hpack-0.31.2) -- Heroku (heroku/7.38.2 linux-x64 node-v12.13.0) -- HHVM (HipHop VM 4.46.0 (rel)) +- Heroku (heroku/7.39.0 linux-x64 node-v12.13.0) +- HHVM (HipHop VM 4.47.0 (rel)) - ImageMagick - Azul Zulu OpenJDK (7) (openjdk version "1.7.0_252") - Azul Zulu OpenJDK (8) (openjdk version "1.8.0_242") - Azul Zulu OpenJDK (11) (openjdk version "11.0.6" 2020-01-14 LTS) - Azul Zulu OpenJDK (12) (openjdk version "12.0.2" 2019-07-16) - Ant (Apache Ant(TM) version 1.10.5 compiled on March 28 2019) -- Gradle 6.2.1 +- Gradle 6.2.2 - Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)) - Kind (kind v0.7.0 go1.13.6 linux/amd64) - kubectl (Client Version: v1.17.3) -- helm (Client: v2.16.3+g1ee0254) -- Leiningen (Leiningen 2.9.2 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) +- helm (v3.1.1+gafe7058) +- Leiningen (Leiningen 2.9.1 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) - Mercurial (Mercurial Distributed SCM (version 4.5.3)) - Miniconda (conda 4.7.12) - Mono (Mono JIT compiler version 6.8.0.105 (tarball Tue Feb 4 21:20:20 UTC 2020)) @@ -166,9 +162,11 @@ Local version: Unknown) - n (6.3.1) - Parcel (1.12.4) - TypeScript (Version 3.8.3) -- Webpack (4.41.6) +- Webpack (4.42.0) - Webpack CLI (3.3.11) -- Yarn (1.22.0) +- Yarn (1.22.1) +- Bazel (bazel 2.2.0) +- Bazelisk (1.3.0) - PhantomJS (2.1.1) - PHP 7.1 (PHP 7.1.33-12+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:22:16) ( NTS )) - PHP 7.2 (PHP 7.2.28-3+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:25) ( NTS )) @@ -178,7 +176,7 @@ Local version: Unknown) - PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.) - Pollinate - psql (PostgreSQL) 10.12 -- Powershell (PowerShell 6.2.4) +- Powershell (PowerShell 7.0.0) - ruby (2.5.1p57) - gem (3.1.2) - rustup (1.21.1) @@ -191,11 +189,13 @@ Local version: Unknown) the 0.53.1) - cbindgen (0.13.1) +- Julia (julia version 1.3.1) - sbt (1.3.8) - Selenium server standalone (available via SELENIUM_JAR_PATH environment variable) - Sphinx Open Source Search Server - Subversion (svn, version 1.9.7 (r1800392)) -- Terraform (Terraform v0.12.21) +- Terraform (Terraform v0.12.23) +- Packer (1.5.4) - Vcpkg 2020.02.04-unknownhash - Zeit Now CLI (17.0.4) - Google Repository 58 @@ -219,6 +219,7 @@ the - Android SDK Platform 19 - Android SDK Platform 17 - Android SDK Patch Applier v4 +- Android SDK Build-Tools 29.0.3 - Android SDK Build-Tools 29.0.2 - Android SDK Build-Tools 29.0.0 - Android SDK Build-Tools 28.0.3 From 9b2f575307a8ce36a5f0c3345bc23c3016a2aa2f Mon Sep 17 00:00:00 2001 From: Marco Mansi Date: Fri, 13 Mar 2020 21:23:23 +0100 Subject: [PATCH 35/44] Fix error "NoProcessFoundForGivenName" when running Disable-InternetExplorerESC The error happens because we try to stop the Explorer process which may not running, so let's check first if the process is running. --- images.CI/build-image.ps1 | 3 +++ .../win/scripts/Installers/Windows2016/Initialize-VM.ps1 | 8 +++++++- .../win/scripts/Installers/Windows2019/Initialize-VM.ps1 | 8 +++++++- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/images.CI/build-image.ps1 b/images.CI/build-image.ps1 index 54748e41..24d4a4d5 100644 --- a/images.CI/build-image.ps1 +++ b/images.CI/build-image.ps1 @@ -36,6 +36,9 @@ $SensitiveData = @( ': ->' ) +Write-Host "Show Packer Version" +packer --version + Write-Host "Build $Image VM" packer build -var "capture_name_prefix=$ResourcesNamePrefix" ` -var "client_id=$ClientId" ` diff --git a/images/win/scripts/Installers/Windows2016/Initialize-VM.ps1 b/images/win/scripts/Installers/Windows2016/Initialize-VM.ps1 index 7998f1cb..d9210571 100644 --- a/images/win/scripts/Installers/Windows2016/Initialize-VM.ps1 +++ b/images/win/scripts/Installers/Windows2016/Initialize-VM.ps1 @@ -8,7 +8,13 @@ function Disable-InternetExplorerESC { $UserKey = "HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A8-37EF-4b3f-8CFC-4F3A74704073}" Set-ItemProperty -Path $AdminKey -Name "IsInstalled" -Value 0 -Force Set-ItemProperty -Path $UserKey -Name "IsInstalled" -Value 0 -Force - Stop-Process -Name Explorer -Force -ErrorAction Continue + + $ieProcess = Get-Process -Name Explorer -ErrorAction SilentlyContinue + + if ($ieProcess){ + Stop-Process -Name Explorer -Force -ErrorAction Continue + } + Write-Host "IE Enhanced Security Configuration (ESC) has been disabled." } diff --git a/images/win/scripts/Installers/Windows2019/Initialize-VM.ps1 b/images/win/scripts/Installers/Windows2019/Initialize-VM.ps1 index 9930e6a6..46574d7c 100644 --- a/images/win/scripts/Installers/Windows2019/Initialize-VM.ps1 +++ b/images/win/scripts/Installers/Windows2019/Initialize-VM.ps1 @@ -8,7 +8,13 @@ function Disable-InternetExplorerESC { $UserKey = "HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A8-37EF-4b3f-8CFC-4F3A74704073}" Set-ItemProperty -Path $AdminKey -Name "IsInstalled" -Value 0 -Force Set-ItemProperty -Path $UserKey -Name "IsInstalled" -Value 0 -Force - Stop-Process -Name Explorer -Force -ErrorAction Continue + + $ieProcess = Get-Process -Name Explorer -ErrorAction SilentlyContinue + + if ($ieProcess){ + Stop-Process -Name Explorer -Force -ErrorAction Continue + } + Write-Host "IE Enhanced Security Configuration (ESC) has been disabled." } From 80449e25a0589d8670ea97f03f43c4980a78a0ad Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov Date: Tue, 17 Mar 2020 09:47:22 +0300 Subject: [PATCH 36/44] update boost toolset and notes, remove BOOST_ROOT --- .../azure-pipelines/image-generation.yml | 8 ++ images.CI/azure-pipelines/ubuntu1604.yml | 3 +- images.CI/azure-pipelines/ubuntu1804.yml | 3 +- images.CI/azure-pipelines/windows2016.yml | 3 +- images.CI/azure-pipelines/windows2019.yml | 3 +- images.CI/build-image.ps1 | 3 + images/linux/Ubuntu1604-README.md | 43 +++--- images/linux/Ubuntu1804-README.md | 43 +++--- .../linux/scripts/installers/1604/android.sh | 1 + .../linux/scripts/installers/1804/android.sh | 1 + .../installers/configure-environment.sh | 7 + images/linux/scripts/installers/git.sh | 10 ++ images/linux/ubuntu1604.json | 9 +- images/linux/ubuntu1804.json | 9 +- images/macos/macos-10.15-Readme.md | 43 +++--- images/win/Windows2016-Azure.json | 69 ++++------ images/win/Windows2016-Readme.md | 76 ++++++----- images/win/Windows2019-Azure.json | 73 ++++------ images/win/Windows2019-Readme.md | 95 +++++++------ .../scripts/ImageHelpers/ImageHelpers.psm1 | 8 +- .../scripts/ImageHelpers/InstallHelpers.ps1 | 127 +++++++++++++++++- .../scripts/Installers/Download-ToolCache.ps1 | 39 +++++- .../win/scripts/Installers/Install-Boost.ps1 | 9 +- images/win/scripts/Installers/Install-Git.ps1 | 1 + images/win/scripts/Installers/Install-Go.ps1 | 28 ++-- .../win/scripts/Installers/Install-Ruby.ps1 | 24 ---- .../{Windows2019 => }/Install-WDK.ps1 | 50 +++---- images/win/scripts/Installers/Install-Wix.ps1 | 23 ++++ .../scripts/Installers/Update-AndroidSDK.ps1 | 1 + .../win/scripts/Installers/Validate-Bazel.ps1 | 2 +- .../win/scripts/Installers/Validate-Boost.ps1 | 43 +++--- .../win/scripts/Installers/Validate-Git.ps1 | 77 ++++++----- images/win/scripts/Installers/Validate-Go.ps1 | 33 +++-- .../scripts/Installers/Validate-Python.ps1 | 45 ------- .../win/scripts/Installers/Validate-Ruby.ps1 | 55 -------- .../scripts/Installers/Validate-ToolCache.ps1 | 80 +++++++++++ .../{Windows2019 => }/Validate-WDK.ps1 | 2 +- .../{Windows2019 => }/Validate-Wix.ps1 | 14 +- .../Installers/Windows2016/Initialize-VM.ps1 | 8 +- .../Installers/Windows2016/Install-Python.ps1 | 28 ---- .../Installers/Windows2016/Install-WDK.ps1 | 51 ------- .../Installers/Windows2016/Install-Wix.ps1 | 53 -------- .../Installers/Windows2016/Validate-SSDT.ps1 | 30 +---- .../Installers/Windows2016/Validate-WDK.ps1 | 13 -- .../Installers/Windows2016/Validate-Wix.ps1 | 62 --------- .../Installers/Windows2019/Initialize-VM.ps1 | 8 +- .../Install-AnalysisExtenstion.ps1 | 44 ------ .../Installers/Windows2019/Install-Python.ps1 | 28 ---- .../Windows2019/Install-SSDTExtensions.ps1 | 11 ++ .../Installers/Windows2019/Install-Wix.ps1 | 53 -------- .../Validate-AnalysisExtenstion.ps1 | 18 --- .../Windows2019/Validate-SSDTExtensions.ps1 | 22 +++ 52 files changed, 728 insertions(+), 864 deletions(-) create mode 100644 images/linux/scripts/installers/configure-environment.sh delete mode 100644 images/win/scripts/Installers/Install-Ruby.ps1 rename images/win/scripts/Installers/{Windows2019 => }/Install-WDK.ps1 (55%) create mode 100644 images/win/scripts/Installers/Install-Wix.ps1 delete mode 100644 images/win/scripts/Installers/Validate-Python.ps1 delete mode 100644 images/win/scripts/Installers/Validate-Ruby.ps1 rename images/win/scripts/Installers/{Windows2019 => }/Validate-WDK.ps1 (90%) rename images/win/scripts/Installers/{Windows2019 => }/Validate-Wix.ps1 (76%) delete mode 100644 images/win/scripts/Installers/Windows2016/Install-Python.ps1 delete mode 100644 images/win/scripts/Installers/Windows2016/Install-WDK.ps1 delete mode 100644 images/win/scripts/Installers/Windows2016/Install-Wix.ps1 delete mode 100644 images/win/scripts/Installers/Windows2016/Validate-WDK.ps1 delete mode 100644 images/win/scripts/Installers/Windows2016/Validate-Wix.ps1 delete mode 100644 images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 delete mode 100644 images/win/scripts/Installers/Windows2019/Install-Python.ps1 create mode 100644 images/win/scripts/Installers/Windows2019/Install-SSDTExtensions.ps1 delete mode 100644 images/win/scripts/Installers/Windows2019/Install-Wix.ps1 delete mode 100644 images/win/scripts/Installers/Windows2019/Validate-AnalysisExtenstion.ps1 create mode 100644 images/win/scripts/Installers/Windows2019/Validate-SSDTExtensions.ps1 diff --git a/images.CI/azure-pipelines/image-generation.yml b/images.CI/azure-pipelines/image-generation.yml index 332f34ad..03b084ca 100644 --- a/images.CI/azure-pipelines/image-generation.yml +++ b/images.CI/azure-pipelines/image-generation.yml @@ -55,6 +55,14 @@ jobs: -ImageName ${{ parameters.image_type }} ` -AccessToken $(RELEASE_TARGET_TOKEN) + - task: PowerShell@2 + displayName: 'Output Readme file content' + inputs: + targetType: 'inline' + script: | + $docsPath = Get-ChildItem -Path "images" -Include ${{ parameters.image_readme_name }} -Recurse -Depth 1 | Select-Object -First 1 + Get-Content -Path $docsPath + - task: PowerShell@2 displayName: 'Clean up resources' condition: always() diff --git a/images.CI/azure-pipelines/ubuntu1604.yml b/images.CI/azure-pipelines/ubuntu1604.yml index 8f6dcef2..b2c99337 100644 --- a/images.CI/azure-pipelines/ubuntu1604.yml +++ b/images.CI/azure-pipelines/ubuntu1604.yml @@ -16,4 +16,5 @@ pr: jobs: - template: image-generation.yml parameters: - image_type: ubuntu1604 \ No newline at end of file + image_type: ubuntu1604 + image_readme_name: Ubuntu1604-README.md \ No newline at end of file diff --git a/images.CI/azure-pipelines/ubuntu1804.yml b/images.CI/azure-pipelines/ubuntu1804.yml index 998ba42e..d07bbade 100644 --- a/images.CI/azure-pipelines/ubuntu1804.yml +++ b/images.CI/azure-pipelines/ubuntu1804.yml @@ -16,4 +16,5 @@ pr: jobs: - template: image-generation.yml parameters: - image_type: ubuntu1804 \ No newline at end of file + image_type: ubuntu1804 + image_readme_name: Ubuntu1804-README.md \ No newline at end of file diff --git a/images.CI/azure-pipelines/windows2016.yml b/images.CI/azure-pipelines/windows2016.yml index 667b30bd..f164a096 100644 --- a/images.CI/azure-pipelines/windows2016.yml +++ b/images.CI/azure-pipelines/windows2016.yml @@ -16,4 +16,5 @@ pr: jobs: - template: image-generation.yml parameters: - image_type: Windows2016-Azure \ No newline at end of file + image_type: Windows2016-Azure + image_readme_name: Windows2016-Readme.md \ No newline at end of file diff --git a/images.CI/azure-pipelines/windows2019.yml b/images.CI/azure-pipelines/windows2019.yml index 508fa12b..f35a4f7a 100644 --- a/images.CI/azure-pipelines/windows2019.yml +++ b/images.CI/azure-pipelines/windows2019.yml @@ -16,4 +16,5 @@ pr: jobs: - template: image-generation.yml parameters: - image_type: Windows2019-Azure \ No newline at end of file + image_type: Windows2019-Azure + image_readme_name: Windows2019-Readme.md \ No newline at end of file diff --git a/images.CI/build-image.ps1 b/images.CI/build-image.ps1 index 54748e41..24d4a4d5 100644 --- a/images.CI/build-image.ps1 +++ b/images.CI/build-image.ps1 @@ -36,6 +36,9 @@ $SensitiveData = @( ': ->' ) +Write-Host "Show Packer Version" +packer --version + Write-Host "Build $Image VM" packer build -var "capture_name_prefix=$ResourcesNamePrefix" ` -var "client_id=$ClientId" ` diff --git a/images/linux/Ubuntu1604-README.md b/images/linux/Ubuntu1604-README.md index a00a4084..7b5be124 100644 --- a/images/linux/Ubuntu1604-README.md +++ b/images/linux/Ubuntu1604-README.md @@ -1,16 +1,11 @@ # Ubuntu 16.04.6 LTS -The following software is installed on machines with the 20200301.1 update. +The following software is installed on machines with the 20200308.0 update. *** - 7-Zip 9.20 -- Ansible (ansible 2.9.4) +- Ansible (ansible 2.9.6) - AzCopy (azcopy 7.3.0-netcore) - Azure CLI (azure-cli 2.1.0) - Azure CLI (azure-devops 0.17.0) -- Bazel (Build label: 2.1.1 -Build target: bazel-out/k8-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar -Build time: Fri Feb 21 14:56:47 2020 (1582297007) -Build timestamp: 1582297007 -Build timestamp as int: 1582297007) - Basic CLI: - curl - dnsutils @@ -37,7 +32,7 @@ Build timestamp as int: 1582297007) - wget - zip - zstd -- AWS CLI (aws-cli/1.18.11 Python/2.7.12 Linux/4.15.0-1071-azure botocore/1.15.11) +- AWS CLI (aws-cli/1.18.16 Python/2.7.12 Linux/4.15.0-1071-azure botocore/1.15.16) - build-essential - Clang 6.0 (6.0.1) - Clang 8 (8.0.1) @@ -107,7 +102,7 @@ Build timestamp as int: 1582297007) - 2.1.300 - Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4) - Firefox (Mozilla Firefox 73.0.1) -- Geckodriver (); Gecko Driver is available via GECKOWEBDRIVER environment variable +- Geckodriver (0.26.0); Gecko Driver is available via GECKOWEBDRIVER environment variable - GNU C++ 7.4.0 - GNU C++ 8.3.0 - GNU C++ 9.2.1 @@ -120,9 +115,9 @@ Build timestamp as int: 1582297007) - Go 1.11 (go version go1.11.12 linux/amd64) - Go 1.12 (go version go1.12.7 linux/amd64) - Go 1.13 (go version go1.13 linux/amd64) -- Google Chrome (Google Chrome 80.0.3987.122 ) -- Chromedriver (ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882})); Chrome Driver is available via CHROMEWEBDRIVER environment variable -- Google Cloud SDK (282.0.0) +- Google Chrome (Google Chrome 80.0.3987.132 ) +- ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882}); Chrome Driver is available via CHROMEWEBDRIVER environment variable +- Google Cloud SDK (283.0.0) - Haskell Cabal (cabal-install version 2.0.0.1 compiled using version 2.0.1.1 of the Cabal library ) - Haskell Cabal (cabal-install version 2.2.0.0 @@ -140,21 +135,22 @@ compiled using version 3.0.2.0 of the Cabal library ) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.5) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.1) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.2) +- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.3) - Haskell Stack (Version 2.1.3, Git revision 636e3a759d51127df2b62f90772def126cdf6d1f (7735 commits) x86_64 hpack-0.31.2) -- Heroku (heroku/7.38.2 linux-x64 node-v12.13.0) -- HHVM (HipHop VM 4.46.0 (rel)) +- Heroku (heroku/7.39.0 linux-x64 node-v12.13.0) +- HHVM (HipHop VM 4.47.0 (rel)) - ImageMagick - Azul Zulu OpenJDK (7) (openjdk version "1.7.0_252") - Azul Zulu OpenJDK (8) (openjdk version "1.8.0_242") - Azul Zulu OpenJDK (11) (openjdk version "11.0.6" 2020-01-14 LTS) - Azul Zulu OpenJDK (12) (openjdk version "12.0.2" 2019-07-16) - Ant (Apache Ant(TM) version 1.9.6 compiled on July 20 2018) -- Gradle 6.2.1 +- Gradle 6.2.2 - Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)) - Kind (kind v0.7.0 go1.13.6 linux/amd64) - kubectl (Client Version: v1.17.3) -- helm (Client: v2.16.3+g1ee0254) -- Leiningen (Leiningen 2.9.2 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) +- helm (v3.1.1+gafe7058) +- Leiningen (Leiningen 2.9.1 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) - Mercurial (Mercurial Distributed SCM (version 4.4.1)) - Miniconda (conda 4.7.12) - Mono (Mono JIT compiler version 6.8.0.105 (tarball Tue Feb 4 21:20:35 UTC 2020)) @@ -168,9 +164,11 @@ Local version: Unknown) - n (6.3.1) - Parcel (1.12.4) - TypeScript (Version 3.8.3) -- Webpack (4.41.6) +- Webpack (4.42.0) - Webpack CLI (3.3.11) -- Yarn (1.22.0) +- Yarn (1.22.1) +- Bazel (bazel 2.2.0) +- Bazelisk (1.3.0) - PhantomJS (2.1.1) - PHP 5.6 (PHP 5.6.40-24+ubuntu16.04.1+deb.sury.org+1 (cli) ) - PHP 7.0 (PHP 7.0.33-23+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:20:42) ( NTS )) @@ -182,7 +180,7 @@ Local version: Unknown) - PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.) - Pollinate - psql (PostgreSQL) 9.5.19 -- Powershell (PowerShell 6.2.4) +- Powershell (PowerShell 7.0.0) - ruby (2.3.1p112) - gem (3.1.2) - rustup (1.21.1) @@ -195,11 +193,13 @@ Local version: Unknown) the 0.53.1) - cbindgen (0.13.1) +- Julia (julia version 1.3.1) - sbt (1.3.8) - Selenium server standalone (available via SELENIUM_JAR_PATH environment variable) - Sphinx Open Source Search Server - Subversion (svn, version 1.9.3 (r1718519)) -- Terraform (Terraform v0.12.21) +- Terraform (Terraform v0.12.23) +- Packer (1.5.4) - Vcpkg 2020.02.04-unknownhash - Zeit Now CLI (17.0.4) - Google Repository 58 @@ -227,6 +227,7 @@ the - Android SDK Platform 15 - Android SDK Platform 10 - Android SDK Patch Applier v4 +- Android SDK Build-Tools 29.0.3 - Android SDK Build-Tools 29.0.2 - Android SDK Build-Tools 29.0.0 - Android SDK Build-Tools 28.0.3 diff --git a/images/linux/Ubuntu1804-README.md b/images/linux/Ubuntu1804-README.md index 4b35378c..94f3547f 100644 --- a/images/linux/Ubuntu1804-README.md +++ b/images/linux/Ubuntu1804-README.md @@ -1,16 +1,11 @@ # Ubuntu 18.04.4 LTS -The following software is installed on machines with the 20200301.1 update. +The following software is installed on machines with the 20200308.0 update. *** - 7-Zip 16.02 -- Ansible (ansible 2.9.4) +- Ansible (ansible 2.9.6) - AzCopy (azcopy 7.3.0-netcore) - Azure CLI (azure-cli 2.1.0) - Azure CLI (azure-devops 0.17.0) -- Bazel (Build label: 2.1.1 -Build target: bazel-out/k8-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar -Build time: Fri Feb 21 14:56:47 2020 (1582297007) -Build timestamp: 1582297007 -Build timestamp as int: 1582297007) - Basic CLI: - curl - dnsutils @@ -37,7 +32,7 @@ Build timestamp as int: 1582297007) - wget - zip - zstd -- AWS CLI (aws-cli/1.18.11 Python/2.7.17 Linux/5.0.0-1032-azure botocore/1.15.11) +- AWS CLI (aws-cli/1.18.16 Python/2.7.17 Linux/5.0.0-1032-azure botocore/1.15.16) - build-essential - Clang 6.0 (6.0.1) - Clang 8 (8.0.1) @@ -107,7 +102,7 @@ Build timestamp as int: 1582297007) - 2.1.300 - Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4) - Firefox (Mozilla Firefox 73.0.1) -- Geckodriver (); Gecko Driver is available via GECKOWEBDRIVER environment variable +- Geckodriver (0.26.0); Gecko Driver is available via GECKOWEBDRIVER environment variable - GNU C++ 7.4.0 - GNU C++ 8.3.0 - GNU C++ 9.2.1 @@ -118,9 +113,9 @@ Build timestamp as int: 1582297007) - Go 1.11 (go version go1.11.12 linux/amd64) - Go 1.12 (go version go1.12.7 linux/amd64) - Go 1.13 (go version go1.13 linux/amd64) -- Google Chrome (Google Chrome 80.0.3987.122 ) -- Chromedriver (ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882})); Chrome Driver is available via CHROMEWEBDRIVER environment variable -- Google Cloud SDK (282.0.0) +- Google Chrome (Google Chrome 80.0.3987.132 ) +- ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882}); Chrome Driver is available via CHROMEWEBDRIVER environment variable +- Google Cloud SDK (283.0.0) - Haskell Cabal (cabal-install version 2.0.0.1 compiled using version 2.0.1.1 of the Cabal library ) - Haskell Cabal (cabal-install version 2.2.0.0 @@ -138,21 +133,22 @@ compiled using version 3.0.2.0 of the Cabal library ) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.5) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.1) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.2) +- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.3) - Haskell Stack (Version 2.1.3, Git revision 636e3a759d51127df2b62f90772def126cdf6d1f (7735 commits) x86_64 hpack-0.31.2) -- Heroku (heroku/7.38.2 linux-x64 node-v12.13.0) -- HHVM (HipHop VM 4.46.0 (rel)) +- Heroku (heroku/7.39.0 linux-x64 node-v12.13.0) +- HHVM (HipHop VM 4.47.0 (rel)) - ImageMagick - Azul Zulu OpenJDK (7) (openjdk version "1.7.0_252") - Azul Zulu OpenJDK (8) (openjdk version "1.8.0_242") - Azul Zulu OpenJDK (11) (openjdk version "11.0.6" 2020-01-14 LTS) - Azul Zulu OpenJDK (12) (openjdk version "12.0.2" 2019-07-16) - Ant (Apache Ant(TM) version 1.10.5 compiled on March 28 2019) -- Gradle 6.2.1 +- Gradle 6.2.2 - Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)) - Kind (kind v0.7.0 go1.13.6 linux/amd64) - kubectl (Client Version: v1.17.3) -- helm (Client: v2.16.3+g1ee0254) -- Leiningen (Leiningen 2.9.2 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) +- helm (v3.1.1+gafe7058) +- Leiningen (Leiningen 2.9.1 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) - Mercurial (Mercurial Distributed SCM (version 4.5.3)) - Miniconda (conda 4.7.12) - Mono (Mono JIT compiler version 6.8.0.105 (tarball Tue Feb 4 21:20:20 UTC 2020)) @@ -166,9 +162,11 @@ Local version: Unknown) - n (6.3.1) - Parcel (1.12.4) - TypeScript (Version 3.8.3) -- Webpack (4.41.6) +- Webpack (4.42.0) - Webpack CLI (3.3.11) -- Yarn (1.22.0) +- Yarn (1.22.1) +- Bazel (bazel 2.2.0) +- Bazelisk (1.3.0) - PhantomJS (2.1.1) - PHP 7.1 (PHP 7.1.33-12+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:22:16) ( NTS )) - PHP 7.2 (PHP 7.2.28-3+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:25) ( NTS )) @@ -178,7 +176,7 @@ Local version: Unknown) - PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.) - Pollinate - psql (PostgreSQL) 10.12 -- Powershell (PowerShell 6.2.4) +- Powershell (PowerShell 7.0.0) - ruby (2.5.1p57) - gem (3.1.2) - rustup (1.21.1) @@ -191,11 +189,13 @@ Local version: Unknown) the 0.53.1) - cbindgen (0.13.1) +- Julia (julia version 1.3.1) - sbt (1.3.8) - Selenium server standalone (available via SELENIUM_JAR_PATH environment variable) - Sphinx Open Source Search Server - Subversion (svn, version 1.9.7 (r1800392)) -- Terraform (Terraform v0.12.21) +- Terraform (Terraform v0.12.23) +- Packer (1.5.4) - Vcpkg 2020.02.04-unknownhash - Zeit Now CLI (17.0.4) - Google Repository 58 @@ -219,6 +219,7 @@ the - Android SDK Platform 19 - Android SDK Platform 17 - Android SDK Patch Applier v4 +- Android SDK Build-Tools 29.0.3 - Android SDK Build-Tools 29.0.2 - Android SDK Build-Tools 29.0.0 - Android SDK Build-Tools 28.0.3 diff --git a/images/linux/scripts/installers/1604/android.sh b/images/linux/scripts/installers/1604/android.sh index 95a44edc..aaf2ad39 100644 --- a/images/linux/scripts/installers/1604/android.sh +++ b/images/linux/scripts/installers/1604/android.sh @@ -82,6 +82,7 @@ echo "y" | ${ANDROID_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ "add-ons;addon-google_apis-google-22" \ "add-ons;addon-google_apis-google-21" \ "cmake;3.6.4111459" \ + "cmake;3.10.2.4988404" \ "patcher;v4" # Document what was added to the image diff --git a/images/linux/scripts/installers/1804/android.sh b/images/linux/scripts/installers/1804/android.sh index 716f8bb1..a0fbb2eb 100644 --- a/images/linux/scripts/installers/1804/android.sh +++ b/images/linux/scripts/installers/1804/android.sh @@ -76,6 +76,7 @@ echo "y" | ${ANDROID_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ "add-ons;addon-google_apis-google-22" \ "add-ons;addon-google_apis-google-21" \ "cmake;3.6.4111459" \ + "cmake;3.10.2.4988404" \ "patcher;v4" # Document what was added to the image diff --git a/images/linux/scripts/installers/configure-environment.sh b/images/linux/scripts/installers/configure-environment.sh new file mode 100644 index 00000000..35e3dba6 --- /dev/null +++ b/images/linux/scripts/installers/configure-environment.sh @@ -0,0 +1,7 @@ +#Set ImageVersion and ImageOS env variables +echo ImageVersion=$IMAGE_VERSION | tee -a /etc/environment +echo ImageOS=$IMAGE_OS | tee -a /etc/environment + +# This directory is supposed to be created in $HOME and owned by user(https://github.com/actions/virtual-environments/issues/491) +mkdir -p /etc/skel/.config/configstore +echo 'export XDG_CONFIG_HOME=$HOME/.config' | tee -a /etc/skel/.bashrc diff --git a/images/linux/scripts/installers/git.sh b/images/linux/scripts/installers/git.sh index 026e73cd..1d8e58a1 100644 --- a/images/linux/scripts/installers/git.sh +++ b/images/linux/scripts/installers/git.sh @@ -35,3 +35,13 @@ echo "Lastly, document the installed versions" DocumentInstalledItem "Git ($(git --version 2>&1 | cut -d ' ' -f 3))" # git-lfs/2.6.1 (GitHub; linux amd64; go 1.11.1) DocumentInstalledItem "Git Large File Storage (LFS) ($(git-lfs --version 2>&1 | cut -d ' ' -f 1 | cut -d '/' -f 2))" + +#Install hub +snap install hub --classic +if command -v hub; then + echo "hub CLI was installed successfully" + DocumentInstalledItem "Hub CLI ($(hub --version | grep "hub version" | cut -d ' ' -f 3))" +else + echo "[!] Hub CLI was not installed" + exit 1 +fi diff --git a/images/linux/ubuntu1604.json b/images/linux/ubuntu1604.json index 51e1bb51..45b7386c 100644 --- a/images/linux/ubuntu1604.json +++ b/images/linux/ubuntu1604.json @@ -123,9 +123,12 @@ }, { "type": "shell", - "inline": [ - "echo ImageVersion={{user `image_version`}} | tee -a /etc/environment", - "echo ImageOS={{user `image_os`}} | tee -a /etc/environment" + "scripts": [ + "{{template_dir}}/scripts/installers/configure-environment.sh" + ], + "environment_vars": [ + "IMAGE_VERSION={{user `image_version`}}", + "IMAGE_OS={{user `image_os`}}" ], "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" }, diff --git a/images/linux/ubuntu1804.json b/images/linux/ubuntu1804.json index 33800251..4cf6f15b 100644 --- a/images/linux/ubuntu1804.json +++ b/images/linux/ubuntu1804.json @@ -126,9 +126,12 @@ }, { "type": "shell", - "inline": [ - "echo ImageVersion={{user `image_version`}} | tee -a /etc/environment", - "echo ImageOS={{user `image_os`}} | tee -a /etc/environment" + "scripts": [ + "{{template_dir}}/scripts/installers/configure-environment.sh" + ], + "environment_vars": [ + "IMAGE_VERSION={{user `image_version`}}", + "IMAGE_OS={{user `image_os`}}" ], "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" }, diff --git a/images/macos/macos-10.15-Readme.md b/images/macos/macos-10.15-Readme.md index aae45169..10c9ac28 100644 --- a/images/macos/macos-10.15-Readme.md +++ b/images/macos/macos-10.15-Readme.md @@ -1,5 +1,5 @@ # macOS Catalina 10.15.3 (19D76) -The following software is installed on machines with the 20200224.1 update. +The following software is installed on machines with the 20200307.2 update. #### Xcode 11.3.1 set by default ## Operating System @@ -21,40 +21,42 @@ The following software is installed on machines with the 20200224.1 update. - GNU Fortran (Homebrew GCC 9.2.0_3) 9.2.0 - Node.js v12.16.1 - NVM 0.33.11 -- NVM - Cached node versions: v6.17.1 v8.17.0 v10.19.0 v12.16.1 v13.9.0 -- PowerShell 6.2.4 +- NVM - Cached node versions: v6.17.1 v8.17.0 v10.19.0 v12.16.1 v13.10.1 +- PowerShell 7.0.0 - Python 2.7.17 - Python 3.7.6 - Ruby 2.6.5p114 - .NET SDK 2.0.0 3.0.100 3.0.101 3.0.102 3.0.103 3.1.100 3.1.101 - Go 1.14 - PHP 7.4.3 +- julia 1.3.1 ### Package Management - Rustup 1.21.1 +- Vcpkg 2020.02.04 - Bundler version 2.1.4 - Carthage 0.34.0 - CocoaPods 1.9.0 -- Homebrew 2.2.6 +- Homebrew 2.2.9 - NPM 6.13.4 -- Yarn 1.22.0 +- Yarn 1.22.1 - NuGet 5.4.0.6315 - Pip 19.3.1 (python 2.7) - Pip 19.3.1 (python 3.7) - Miniconda 4.7.12 - RubyGems 3.1.2 -- Vcpkg 2020.02.04 ### Project Management - Apache Maven 3.6.3 -- Gradle 6.2.1 +- Gradle 6.2.2 ### Utilities -- Curl 7.68.0 -- Git: 2.25.0 +- Curl 7.69.0 +- Git: 2.25.1 - Git LFS: 2.10.0 - GNU Wget 1.20.3 - Subversion (SVN) 1.13.0 +- Packer 1.5.4 - GNU parallel 20200222 - OpenSSL 1.0.2t 10 Sep 2019 - jq 1.6 @@ -63,18 +65,20 @@ The following software is installed on machines with the 20200224.1 update. - aria2 1.35.0 - azcopy 10.3.4 - zstd 1.4.4 +- bazel 2.2.0 +- bazelisk v1.3.0 ### Tools -- Fastlane 2.142.0 -- Cmake 3.16.4 +- Fastlane 2.143.0 +- Cmake 3.16.5 - App Center CLI 2.3.3 - Azure CLI 2.1.0 ### Browsers -- Google Chrome 80.0.3987.122 +- Google Chrome 80.0.3987.132 - ChromeDriver 80.0.3987.106 -- Microsoft Edge 80.0.361.62 -- MSEdgeDriver 80.0.361.62 +- Microsoft Edge 80.0.361.66 +- MSEdgeDriver 80.0.361.66 - Mozilla Firefox 73.0.1 - geckodriver 0.26.0 @@ -98,7 +102,7 @@ The following software is installed on machines with the 20200224.1 update. ### Xamarin #### Visual Studio for Mac -- 8.4.7.17 +- 8.4.8.2 #### Mono - 6.6.0.166 @@ -126,7 +130,7 @@ The following software is installed on machines with the 20200224.1 update. ### Xcode | Version | Build | Path | | ---------------- | ------- | --------------------------------- | -| 11.4 (beta) | 11N123k | /Applications/Xcode_11.4_beta.app | +| 11.4 (beta) | 11N132i | /Applications/Xcode_11.4_beta.app | | 11.3.1 (default) | 11C505 | /Applications/Xcode_11.3.1.app | | 11.3 | 11C29 | /Applications/Xcode_11.3.app | | 11.2.1 | 11B500 | /Applications/Xcode_11.2.1.app | @@ -185,9 +189,9 @@ The following software is installed on machines with the 20200224.1 update. ### Android #### Android SDK Tools -| Package Name | Description | -| ---------------------------------- | ---------------------------------- | -| tools | Android SDK Tools, Revision 26.1.1 | +| Package Name | Description | +| ------------ | ---------------------------------- | +| tools | Android SDK Tools, Revision 26.1.1 | #### Android SDK Platform-Tools | Package Name | Description | @@ -257,4 +261,3 @@ The following software is installed on machines with the 20200224.1 update. | Google Repository | 58 | | Intel x86 Emulator Accelerator (HAXM installer) | 7.5.1 | - diff --git a/images/win/Windows2016-Azure.json b/images/win/Windows2016-Azure.json index e24bd75e..0ad1e3f4 100644 --- a/images/win/Windows2016-Azure.json +++ b/images/win/Windows2016-Azure.json @@ -28,7 +28,10 @@ "capture_name_prefix": "packer", "image_version": "dev", "image_os": "win16", - "github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}" + "github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}", + "go_versions": "1.9, 1.10, 1.11, 1.12, 1.13, 1.14", + "go_default": "1.14", + "boost_default": "1.69.0" }, "sensitive-variables": ["install_password", "ssh_password", "client_secret", "github_feed_token"], "builders": [ @@ -100,6 +103,12 @@ "{{ template_dir }}/scripts/Installers/Windows2016/Initialize-VM.ps1" ] }, + { + "type": "powershell", + "scripts":[ + "{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1" + ] + }, { "type": "windows-restart", "restart_timeout": "30m" @@ -205,7 +214,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2016/Install-Wix.ps1" + "{{ template_dir }}/scripts/Installers/Install-Wix.ps1" ] }, { @@ -221,7 +230,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2016/Install-WDK.ps1" + "{{ template_dir }}/scripts/Installers/Install-WDK.ps1" ] }, { @@ -243,7 +252,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2016/Validate-Wix.ps1" + "{{ template_dir }}/scripts/Installers/Validate-Wix.ps1" ] }, { @@ -255,7 +264,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2016/Validate-WDK.ps1" + "{{ template_dir }}/scripts/Installers/Validate-WDK.ps1" ] }, { @@ -264,12 +273,6 @@ "{{ template_dir }}/scripts/Installers/Validate-ServiceFabricSDK.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1" - ] - }, { "type": "powershell", "scripts":[ @@ -324,7 +327,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2016/Install-Python.ps1" + "{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1" ] }, { @@ -342,8 +345,8 @@ { "type": "powershell", "environment_vars": [ - "GO_VERSIONS=1.9.7,1.10.8,1.11.12,1.12.7,1.13", - "GO_DEFAULT=1.12.7" + "GO_VERSIONS={{user `go_versions`}}", + "GO_DEFAULT={{user `go_default`}}" ], "scripts":[ "{{ template_dir }}/scripts/Installers/Install-Go.ps1" @@ -355,12 +358,6 @@ "{{ template_dir }}/scripts/Installers/Install-PHP.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Install-Ruby.ps1" - ] - }, { "type": "powershell", "scripts":[ @@ -520,8 +517,8 @@ { "type": "powershell", "environment_vars": [ - "BOOST_VERSIONS=1.69.0,1.72.0", - "BOOST_DEFAULT=1.69.0" + "ROOT_FOLDER={{user `root_folder`}}", + "BOOST_DEFAULT={{user `boost_default`}}" ], "scripts":[ "{{ template_dir }}/scripts/Installers/Install-Boost.ps1" @@ -557,12 +554,6 @@ "{{ template_dir }}/scripts/Installers/Install-GitVersion.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1" - ] - }, { "type": "powershell", "scripts":[ @@ -633,7 +624,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Validate-Python.ps1" + "{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1" ] }, { @@ -651,8 +642,8 @@ { "type": "powershell", "environment_vars": [ - "GO_VERSIONS=1.9.7,1.10.8,1.11.12,1.12.7,1.13", - "GO_DEFAULT=1.12.7" + "GO_VERSIONS={{user `go_versions`}}", + "GO_DEFAULT={{ user `go_default`}}" ], "scripts":[ "{{ template_dir }}/scripts/Installers/Validate-Go.ps1" @@ -661,8 +652,8 @@ { "type": "powershell", "environment_vars": [ - "BOOST_VERSIONS=1.69.0,1.72.0", - "BOOST_DEFAULT=1.69.0" + "ROOT_FOLDER={{user `root_folder`}}", + "BOOST_DEFAULT={{user `boost_default`}}" ], "scripts":[ "{{ template_dir }}/scripts/Installers/Validate-Boost.ps1" @@ -674,12 +665,6 @@ "{{ template_dir }}/scripts/Installers/Validate-PHP.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Validate-Ruby.ps1" - ] - }, { "type": "powershell", "scripts":[ @@ -842,12 +827,6 @@ "{{ template_dir }}/scripts/Installers/Validate-GitVersion.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1" - ] - }, { "type": "powershell", "scripts":[ diff --git a/images/win/Windows2016-Readme.md b/images/win/Windows2016-Readme.md index a130be1b..c60d1ffa 100644 --- a/images/win/Windows2016-Readme.md +++ b/images/win/Windows2016-Readme.md @@ -1,6 +1,6 @@ # Windows Server 2016 -The following software is installed on machines with the 20200301.1 update. +The following software is installed on machines with the 20200308.0 update. Components marked with **\*** have been upgraded since the previous version of the image. @@ -25,7 +25,7 @@ _Environment:_ ## Powershell Core -_Version:_ 6.2.4
+_Version:_ 7.0.0
## Docker images @@ -159,8 +159,8 @@ _Version:_ 10.0.17763.0
## Azure Service Fabric -_SDK Version:_ 4.0.466.9590
-_Runtime Version:_ 7.0.466.9590 +_SDK Version:_ 4.0.470.9590
+_Runtime Version:_ 7.0.470.9590 ## WinAppDriver @@ -168,6 +168,10 @@ _Version:_ 1.1.1809.18001
## Android SDK Build Tools +#### 29.0.3 + +_Location:_ C:\Program Files (x86)\Android\android-sdk\build-tools\29.0.3 + #### 29.0.2 _Location:_ C:\Program Files (x86)\Android\android-sdk\build-tools\29.0.2 @@ -441,6 +445,10 @@ _Environment:_ _Location:_ C:/hostedtoolcache/windows/Python/2.7*/x64 +## Perl + +_Version:_ v5.30.1
+ ## Git _Version:_ 2.25.1
@@ -521,6 +529,10 @@ _Location:_ C:\Rust\.cargo\bin _Environment:_ * PATH: contains the location of rustc.exe +## Julia (x64) + +_Version:_ 1.3.1
+ ## sbt @@ -534,12 +546,12 @@ _Environment:_ ## Google Chrome _version:_ -80.0.3987.122 +80.0.3987.132 ## Microsoft Edge _version:_ -80.0.361.62 +80.0.361.66 ## Mozilla Firefox @@ -552,7 +564,7 @@ _version:_ #### Chrome Driver _version:_ -3.8.0.0 +80.0.3987.106 _Environment:_ * ChromeWebDriver: location of chromedriver.exe @@ -560,7 +572,7 @@ _Environment:_ #### Gecko Driver _version:_ - +0.26.0 _Environment:_ * GeckoWebDriver: location of geckodriver.exe @@ -568,7 +580,7 @@ _Environment:_ #### IE Driver _version:_ -80.0.3987.106 +3.8.0.0 _Environment:_ * IEWebDriver: location of IEDriverServer.exe @@ -576,7 +588,7 @@ _Environment:_ #### Microsoft Edge Driver _version:_ -79.0.309.71 +80.0.361.66 _Environment:_ * EdgeWebDriver: location of msedgedriver.exe @@ -590,7 +602,7 @@ _Environment:_ * PATH: contains location of node.exe
* Gulp CLI version: 2.2.0 Local version: Unknown
* Grunt grunt-cli v1.3.2
-* Yarn 1.22.0
+* Yarn 1.22.1
## npm @@ -599,6 +611,14 @@ _Version:_ 6.13.4
_Environment:_ * PATH: contains location of npm.cmd +## bazel + +_Version:_ bazel 2.1.0
+ +## bazelisk + +_Version:_ 1.3.0
+ ## Java Development Kit #### 1.8.0_222 @@ -632,13 +652,13 @@ _Environment:_ ## Gradle -_Version:_ 6.2.1
+_Version:_ 6.2.2
_Environment:_ * PATH: contains location of gradle ## Cmake -_Version:_ 3.16.4
+_Version:_ 3.16.5
_Environment:_ * PATH: contains location of cmake.exe @@ -657,10 +677,6 @@ _Environment:_ _SDK:_ * 3.1.101 C:\Program Files\dotnet\sdk\3.1.101 * 3.1.100 C:\Program Files\dotnet\sdk\3.1.100 -* 3.0.103 C:\Program Files\dotnet\sdk\3.0.103 -* 3.0.102 C:\Program Files\dotnet\sdk\3.0.102 -* 3.0.101 C:\Program Files\dotnet\sdk\3.0.101 -* 3.0.100 C:\Program Files\dotnet\sdk\3.0.100 * 2.2.402 C:\Program Files\dotnet\sdk\2.2.402 * 2.2.401 C:\Program Files\dotnet\sdk\2.2.401 * 2.2.301 C:\Program Files\dotnet\sdk\2.2.301 @@ -720,10 +736,6 @@ _SDK:_ _Runtime:_ * 3.1.1 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.1 * 3.1.0 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.0 -* 3.0.3 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.0.3 -* 3.0.2 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.0.2 -* 3.0.1 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.0.1 -* 3.0.0 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.0.0 * 2.2.8 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.2.8 * 2.2.7 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.2.7 * 2.2.6 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.2.6 @@ -793,9 +805,13 @@ _Location:_ C:\Program Files\Azure Cosmos DB Emulator\ _Version:_ 19.00
+## Packer + +_Version:_ 1.5.4
+ ## Mercurial -_Version:_
+_Version:_ 5.0
## jq @@ -803,27 +819,23 @@ _Version:_ jq-1.6
## zstd -_Version:_ v1.4.0
+_Version:_ 1.4.0
## Inno Setup _Version:_ 6.0.3
-## Perl - -_Version:_ v5.26.2
- ## GitVersion -_Version:_ 5.1.3.0
+_Version:_ 5.2.0.0
## OpenSSL -_Version:_ 1.1.1d at C:\Program Files\Git\mingw64\bin\openssl.exe
_Version:_ 1.1.1d at C:\Program Files\Git\usr\bin\openssl.exe
_Version:_ 1.0.2j at C:\Program Files (x86)\Subversion\bin\openssl.exe
_Version:_ 1.1.1c at C:\Strawberry\c\bin\openssl.exe
_Version:_ 1.1.1 at C:\Program Files\OpenSSL\bin\openssl.exe
+_Version:_ 1.1.1c at C:\Strawberry\c\bin\openssl.exe
_Version:_ 1.1.1d at C:\Program Files\Git\mingw64\bin\openssl.exe
_Version:_ 1.1.1d at C:\Program Files\Git\usr\bin\openssl.exe
_Version:_ 1.0.2j at C:\Program Files (x86)\Subversion\bin\openssl.exe
_Version:_ 1.1.1 at C:\Program Files\OpenSSL\bin\openssl.exe
## Cloud Foundry CLI -_Version:_ 6.49.0
+_Version:_ 6.50.0
## Vcpkg @@ -843,7 +855,3 @@ _Environment:_ _Version:_ kind v0.7.0 go1.13.6 windows/amd64
_Environment:_ * PATH: contains location of kind.exe - -## bazel - -_Version:_ bazel 2.1.0
diff --git a/images/win/Windows2019-Azure.json b/images/win/Windows2019-Azure.json index 668451eb..2023be50 100644 --- a/images/win/Windows2019-Azure.json +++ b/images/win/Windows2019-Azure.json @@ -28,7 +28,10 @@ "capture_name_prefix": "packer", "image_version": "dev", "image_os": "win19", - "github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}" + "github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}", + "go_versions": "1.9, 1.10, 1.11, 1.12, 1.13, 1.14", + "go_default": "1.14", + "boost_default": "1.72.0" }, "sensitive-variables": ["install_password", "ssh_password", "client_secret", "github_feed_token"], "builders": [ @@ -100,6 +103,12 @@ "{{ template_dir }}/scripts/Installers/Windows2019/Initialize-VM.ps1" ] }, + { + "type": "powershell", + "scripts":[ + "{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1" + ] + }, { "type": "windows-restart", "restart_timeout": "10m" @@ -180,13 +189,13 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2019/Install-Wix.ps1" + "{{ template_dir }}/scripts/Installers/Install-Wix.ps1" ] }, { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1" + "{{ template_dir }}/scripts/Installers/Windows2019/Install-SSDTExtensions.ps1" ] }, { @@ -202,7 +211,7 @@ { "type": "powershell", "scripts": [ - "{{ template_dir }}/scripts/Installers/Windows2019/Install-WDK.ps1" + "{{ template_dir }}/scripts/Installers/Install-WDK.ps1" ] }, { @@ -218,13 +227,13 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2019/Validate-Wix.ps1" + "{{ template_dir }}/scripts/Installers/Validate-Wix.ps1" ] }, { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2019/Validate-AnalysisExtenstion.ps1" + "{{ template_dir }}/scripts/Installers/Windows2019/Validate-SSDTExtensions.ps1" ] }, { @@ -236,7 +245,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2019/Validate-WDK.ps1" + "{{ template_dir }}/scripts/Installers/Validate-WDK.ps1" ] }, { @@ -245,12 +254,6 @@ "{{ template_dir }}/scripts/Installers/Validate-ServiceFabricSDK.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1" - ] - }, { "type": "powershell", "scripts":[ @@ -299,7 +302,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Windows2019/Install-Python.ps1" + "{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1" ] }, { @@ -317,8 +320,8 @@ { "type": "powershell", "environment_vars": [ - "GO_VERSIONS=1.10.8,1.11.12,1.12.7,1.13", - "GO_DEFAULT=1.12.7" + "GO_VERSIONS={{user `go_versions`}}", + "GO_DEFAULT={{user `go_default`}}" ], "scripts":[ "{{ template_dir }}/scripts/Installers/Install-Go.ps1" @@ -330,12 +333,6 @@ "{{ template_dir }}/scripts/Installers/Install-PHP.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Install-Ruby.ps1" - ] - }, { "type": "powershell", "scripts":[ @@ -501,8 +498,8 @@ { "type": "powershell", "environment_vars": [ - "BOOST_VERSIONS=1.69.0,1.72.0", - "BOOST_DEFAULT=1.72.0" + "ROOT_FOLDER={{user `root_folder`}}", + "BOOST_DEFAULT={{user `boost_default`}}" ], "scripts":[ "{{ template_dir }}/scripts/Installers/Install-Boost.ps1" @@ -538,12 +535,6 @@ "{{ template_dir }}/scripts/Installers/Install-GitVersion.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1" - ] - }, { "type": "powershell", "scripts":[ @@ -620,7 +611,7 @@ { "type": "powershell", "scripts":[ - "{{ template_dir }}/scripts/Installers/Validate-Python.ps1" + "{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1" ] }, { @@ -638,8 +629,8 @@ { "type": "powershell", "environment_vars": [ - "GO_VERSIONS=1.10.8,1.11.12,1.12.7,1.13", - "GO_DEFAULT=1.12.7" + "GO_VERSIONS={{user `go_versions`}}", + "GO_DEFAULT={{user `go_default`}}" ], "scripts":[ "{{ template_dir }}/scripts/Installers/Validate-Go.ps1" @@ -648,8 +639,8 @@ { "type": "powershell", "environment_vars": [ - "BOOST_VERSIONS=1.69.0,1.72.0", - "BOOST_DEFAULT=1.72.0" + "ROOT_FOLDER={{user `root_folder`}}", + "BOOST_DEFAULT={{user `boost_default`}}" ], "scripts":[ "{{ template_dir }}/scripts/Installers/Validate-Boost.ps1" @@ -661,12 +652,6 @@ "{{ template_dir }}/scripts/Installers/Validate-PHP.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Validate-Ruby.ps1" - ] - }, { "type": "powershell", "scripts":[ @@ -823,12 +808,6 @@ "{{ template_dir }}/scripts/Installers/Validate-GitVersion.ps1" ] }, - { - "type": "powershell", - "scripts":[ - "{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1" - ] - }, { "type": "powershell", "scripts":[ diff --git a/images/win/Windows2019-Readme.md b/images/win/Windows2019-Readme.md index 7eab9d90..9819f9a8 100644 --- a/images/win/Windows2019-Readme.md +++ b/images/win/Windows2019-Readme.md @@ -1,6 +1,6 @@ # Windows Server 2019 -The following software is installed on machines with the 20200301.1 update. +The following software is installed on machines with the 20200308.0 update. Components marked with **\*** have been upgraded since the previous version of the image. @@ -25,7 +25,7 @@ _Environment:_ ## Powershell Core -_Version:_ 6.2.4
+_Version:_ 7.0.0
## Docker images @@ -93,6 +93,15 @@ The following workloads and components are installed with Visual Studio 2019: * Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest * Microsoft.VisualStudio.Component.VC.v141 * Microsoft.VisualStudio.Component.VC.v141.x86.x64 +* Microsoft.VisualStudio.Component.VC.v141.x86.x64.Spectre +* Microsoft.VisualStudio.Component.VC.v141.ARM.Spectre +* Microsoft.VisualStudio.Component.VC.v141.ARM64.Spectre +* Microsoft.VisualStudio.Component.VC.v141.ATL.ARM.Spectre +* Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64.Spectre +* Microsoft.VisualStudio.Component.VC.v141.ATL.Spectre +* Microsoft.VisualStudio.Component.VC.v141.MFC.ARM.Spectre +* Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64.Spectre +* Microsoft.VisualStudio.Component.VC.v141.MFC.Spectre * Microsoft.VisualStudio.Component.Windows10SDK.16299 * Microsoft.VisualStudio.Component.Windows10SDK.17134 * Microsoft.VisualStudio.Component.Windows10SDK.17763 @@ -127,6 +136,10 @@ _WIX Toolset Visual Studio Extension Version:_ 1.0.0.4
_Environment:_ * WIX: Installation root of WIX +## Microsoft Analysis Services Projects Visual Studio Extension + +_Version:_ 2.9.5
+ ## .NET 4.8 _Version:_ 4.8.03761 @@ -139,8 +152,8 @@ _WDK Visual Studio Extension Version:_ 10.0.18346.0
## Azure Service Fabric -_SDK Version:_ 4.0.466.9590
-_Runtime Version:_ 7.0.466.9590 +_SDK Version:_ 4.0.470.9590
+_Runtime Version:_ 7.0.470.9590 ## WinAppDriver @@ -148,6 +161,10 @@ _Version:_ 1.1.1809.18001
## Android SDK Build Tools +#### 29.0.3 + +_Location:_ C:\Program Files (x86)\Android\android-sdk\build-tools\29.0.3 + #### 29.0.2 _Location:_ C:\Program Files (x86)\Android\android-sdk\build-tools\29.0.2 @@ -421,6 +438,10 @@ _Environment:_ _Location:_ C:/hostedtoolcache/windows/Python/2.7*/x64 +## Perl + +_Version:_ v5.30.1
+ ## Git _Version:_ 2.25.1
@@ -436,16 +457,6 @@ _Environment:_ ## Go (x64) -#### 1.10.8 - -_Environment:_ -* GOROOT_1_10_X64: root directory of the Go 1.10.8 installation - -#### 1.11.12 - -_Environment:_ -* GOROOT_1_11_X64: root directory of the Go 1.11.12 installation - #### 1.12.7 _Environment:_ @@ -496,6 +507,10 @@ _Location:_ C:\Rust\.cargo\bin _Environment:_ * PATH: contains the location of rustc.exe +## Julia (x64) + +_Version:_ 1.3.1
+ ## Subversion _Version:_ 1.8.17
@@ -509,12 +524,12 @@ _Environment:_ ## Google Chrome _version:_ -80.0.3987.122 +80.0.3987.132 ## Microsoft Edge _version:_ -80.0.361.62 +80.0.361.66 ## Mozilla Firefox @@ -527,7 +542,7 @@ _version:_ #### Chrome Driver _version:_ -3.8.0.0 +80.0.3987.106 _Environment:_ * ChromeWebDriver: location of chromedriver.exe @@ -535,7 +550,7 @@ _Environment:_ #### Gecko Driver _version:_ - +0.26.0 _Environment:_ * GeckoWebDriver: location of geckodriver.exe @@ -543,7 +558,7 @@ _Environment:_ #### IE Driver _version:_ -80.0.3987.106 +3.8.0.0 _Environment:_ * IEWebDriver: location of IEDriverServer.exe @@ -551,7 +566,7 @@ _Environment:_ #### Microsoft Edge Driver _version:_ -79.0.309.71 +80.0.361.66 _Environment:_ * EdgeWebDriver: location of msedgedriver.exe @@ -565,7 +580,7 @@ _Environment:_ * PATH: contains location of node.exe
* Gulp CLI version: 2.2.0 Local version: Unknown
* Grunt grunt-cli v1.3.2
-* Yarn 1.22.0
+* Yarn 1.22.1
## npm @@ -607,13 +622,13 @@ _Environment:_ ## Gradle -_Version:_ 6.2.1
+_Version:_ 6.2.2
_Environment:_ * PATH: contains location of gradle ## Cmake -_Version:_ 3.16.4
+_Version:_ 3.16.5
_Environment:_ * PATH: contains location of cmake.exe @@ -632,10 +647,6 @@ _Environment:_ _SDK:_ * 3.1.101 C:\Program Files\dotnet\sdk\3.1.101 * 3.1.100 C:\Program Files\dotnet\sdk\3.1.100 -* 3.0.103 C:\Program Files\dotnet\sdk\3.0.103 -* 3.0.102 C:\Program Files\dotnet\sdk\3.0.102 -* 3.0.101 C:\Program Files\dotnet\sdk\3.0.101 -* 3.0.100 C:\Program Files\dotnet\sdk\3.0.100 * 2.2.402 C:\Program Files\dotnet\sdk\2.2.402 * 2.2.401 C:\Program Files\dotnet\sdk\2.2.401 * 2.2.301 C:\Program Files\dotnet\sdk\2.2.301 @@ -693,10 +704,6 @@ _SDK:_ _Runtime:_ * 3.1.1 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.1 * 3.1.0 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.0 -* 3.0.3 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.0.3 -* 3.0.2 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.0.2 -* 3.0.1 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.0.1 -* 3.0.0 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.0.0 * 2.2.8 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.2.8 * 2.2.7 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.2.7 * 2.2.6 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.2.6 @@ -763,33 +770,37 @@ _Location:_ C:\Program Files\Azure Cosmos DB Emulator\ _Version:_ 19.00
+## Packer + +_Version:_ 1.5.4
+ ## Mercurial -_Version:_
+_Version:_ 5.0
## jq _Version:_ jq-1.6
+## zstd + +_Version:_ 1.4.0
+ ## Inno Setup _Version:_ 6.0.3
-## Perl - -_Version:_ v5.26.2
- ## GitVersion -_Version:_ 5.1.3.0
+_Version:_ 5.2.0.0
## OpenSSL -_Version:_ 1.1.1d at C:\Program Files\Git\mingw64\bin\openssl.exe
_Version:_ 1.1.1d at C:\Program Files\Git\usr\bin\openssl.exe
_Version:_ 1.0.2j at C:\Program Files (x86)\Subversion\bin\openssl.exe
_Version:_ 1.1.1c at C:\Strawberry\c\bin\openssl.exe
_Version:_ 1.1.1 at C:\Program Files\OpenSSL\bin\openssl.exe
+_Version:_ 1.1.1c at C:\Strawberry\c\bin\openssl.exe
_Version:_ 1.1.1d at C:\Program Files\Git\mingw64\bin\openssl.exe
_Version:_ 1.1.1d at C:\Program Files\Git\usr\bin\openssl.exe
_Version:_ 1.0.2j at C:\Program Files (x86)\Subversion\bin\openssl.exe
_Version:_ 1.1.1 at C:\Program Files\OpenSSL\bin\openssl.exe
## Cloud Foundry CLI -_Version:_ 6.49.0
+_Version:_ 6.50.0
## Vcpkg @@ -800,7 +811,7 @@ _Environment:_ ## VSWhere -_Version_: Visual Studio Locator version 2.8.4+ff0de50053 [query version 2.3.2200.14893] Copyright (C) Microsoft Corporation. All rights reserved. instanceId: 34bc4745 installDate: 3/1/2020 6:49:00 AM installationName: VisualStudio/16.4.5+29806.167 installationPath: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise installationVersion: 16.4.29806.167 productId: Microsoft.VisualStudio.Product.Enterprise productPath: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\devenv.exe state: 4294967295 isComplete: 1 isLaunchable: 1 isPrerelease: 0 isRebootRequired: 0 displayName: Visual Studio Enterprise 2019 description: Scalable, end-to-end solution for teams of any size channelId: VisualStudio.16.Release channelUri: https://aka.ms/vs/16/release/channel enginePath: C:\Program Files (x86)\Microsoft Visual Studio\Installer\resources\app\ServiceHub\Services\Microsoft.VisualStudio.Setup.Service releaseNotes: https://go.microsoft.com/fwlink/?LinkId=660893#16.4.5 thirdPartyNotices: https://go.microsoft.com/fwlink/?LinkId=660909 updateDate: 2020-03-01T06:49:00.926083Z catalog_buildBranch: d16.4 catalog_buildVersion: 16.4.29806.167 catalog_id: VisualStudio/16.4.5+29806.167 catalog_localBuild: build-lab catalog_manifestName: VisualStudio catalog_manifestType: installer catalog_productDisplayVersion: 16.4.5 catalog_productLine: Dev16 catalog_productLineVersion: 2019 catalog_productMilestone: RTW catalog_productMilestoneIsPreRelease: False catalog_productName: Visual Studio catalog_productPatchVersion: 5 catalog_productPreReleaseMilestoneSuffix: 1.0 catalog_productSemanticVersion: 16.4.5+29806.167 catalog_requiredEngineVersion: 2.4.1111.43337 properties_campaignId: properties_channelManifestId: VisualStudio.16.Release/16.4.5+29806.167 properties_nickname: properties_setupEngineFilePath: C:\Program Files (x86)\Microsoft Visual Studio\Installer\vs_installershell.exe
+_Version_: 2.8.4+ff0de50053 - shim 0.8.1
* PATH: contains location of vswhere.exe ## Kubectl @@ -818,3 +829,7 @@ _Environment:_ ## bazel _Version:_ bazel 2.1.0
+ +## bazelisk + +_Version:_ 1.3.0
diff --git a/images/win/scripts/ImageHelpers/ImageHelpers.psm1 b/images/win/scripts/ImageHelpers/ImageHelpers.psm1 index ae58a981..743dc7a1 100644 --- a/images/win/scripts/ImageHelpers/ImageHelpers.psm1 +++ b/images/win/scripts/ImageHelpers/ImageHelpers.psm1 @@ -14,9 +14,15 @@ Export-ModuleMember -Function @( 'Set-SystemVariable' 'Install-MSI' 'Install-EXE' + 'Get-ToolcachePackages' + 'Get-ToolsByName' 'Add-ContentToMarkdown' 'Add-SoftwareDetailsToMarkdown' 'Stop-SvcWithErrHandling' 'Set-SvcWithErrHandling' - 'Get-VS19ExtensionVersion' + 'Install-VsixExtension' + 'Get-VSExtensionVersion' + 'Get-WinVersion' + 'Test-IsWin19' + 'Test-IsWin16' ) diff --git a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 index f6c553b2..61dce562 100644 --- a/images/win/scripts/ImageHelpers/InstallHelpers.ps1 +++ b/images/win/scripts/ImageHelpers/InstallHelpers.ps1 @@ -161,7 +161,94 @@ Hashtable for service arguments } } -function Get-VS19ExtensionVersion +function Install-VsixExtension +{ + Param + ( + [string] $Url, + [Parameter(Mandatory = $true)] + [string] $Name, + [string] $FilePath, + [Parameter(Mandatory = $true)] + [string] $VSversion, + [int] $retries = 20, + [switch] $InstallOnly + ) + + if (!$InstallOnly) + { + $FilePath = "${env:Temp}\$Name" + + while($retries -gt 0) + { + try + { + Write-Host "Downloading $Name..." + (New-Object System.Net.WebClient).DownloadFile($Url, $FilePath) + break + } + catch + { + Write-Host "There is an error during $Name downloading" + $_ + + $retries-- + + if ($retries -eq 0) + { + Write-Host "File can't be downloaded" + $_ + exit 1 + } + + Write-Host "Waiting 30 seconds before retrying. Retries left: $retries" + Start-Sleep -Seconds 30 + } + } + } + + $ArgumentList = ('/quiet', "`"$FilePath`"") + + Write-Host "Starting Install $Name..." + try + { + #There are 2 types of packages at the moment - exe and vsix + if ($Name -match "vsix") + { + $process = Start-Process -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\$VSversion\Enterprise\Common7\IDE\VSIXInstaller.exe" -ArgumentList $ArgumentList -Wait -PassThru + } + else + { + $process = Start-Process -FilePath ${env:Temp}\$Name /Q -Wait -PassThru + } + } + catch + { + Write-Host "There is an error during $Name installation" + $_ + exit 1 + } + + $exitCode = $process.ExitCode + + if ($exitCode -eq 0 -or $exitCode -eq 1001) # 1001 means the extension is already installed + { + Write-Host "$Name installed successfully" + } + else + { + Write-Host "Unsuccessful exit code returned by the installation process: $exitCode." + exit 1 + } + + #Cleanup downloaded installation files + if (!$InstallOnly) + { + Remove-Item -Force -Confirm:$false $FilePath + } +} + +function Get-VSExtensionVersion { param ( [string] [Parameter(Mandatory=$true)] $packageName @@ -187,3 +274,41 @@ function Get-VS19ExtensionVersion return $packageVersion } + + +function Get-ToolcachePackages { + $toolcachePath = Join-Path $env:ROOT_FOLDER "toolcache.json" + Get-Content -Raw $toolcachePath | ConvertFrom-Json +} + +function Get-ToolsByName { + param ( + [Parameter(Mandatory = $True)] + [string]$SoftwareName + ) + + (Get-ToolcachePackages).PSObject.Properties | Where-Object { $_.Name -match $SoftwareName } | ForEach-Object { + $packageNameParts = $_.Name.Split("-") + [PSCustomObject] @{ + ToolName = $packageNameParts[1] + Versions = $_.Value + Architecture = $packageNameParts[3,4] -join "-" + } + } +} + +function Get-WinVersion +{ + (Get-WmiObject -class Win32_OperatingSystem).Caption +} + +function Test-IsWin19 +{ + (Get-WinVersion) -match "2019" +} + +function Test-IsWin16 +{ + (Get-WinVersion) -match "2016" +} + diff --git a/images/win/scripts/Installers/Download-ToolCache.ps1 b/images/win/scripts/Installers/Download-ToolCache.ps1 index 591f0f1c..cc42e97e 100644 --- a/images/win/scripts/Installers/Download-ToolCache.ps1 +++ b/images/win/scripts/Installers/Download-ToolCache.ps1 @@ -44,6 +44,39 @@ Function NPMFeed-AuthSetup { $npmrcContent | Out-File -FilePath "$($env:TEMP)/.npmrc" -Encoding utf8 } +Function Set-DefaultPythonVersion { + param( + [Parameter(Mandatory=$true)] + [System.Version] $Version, + [System.String] $Arch = "x64" + ) + + $pythonPath = $Env:AGENT_TOOLSDIRECTORY + "/Python/${Version}*/${Arch}" + $pythonDir = Get-Item -Path $pythonPath + + Write-Host "Use Python ${Version} as a system Python" + Add-MachinePathItem -PathItem $pythonDir.FullName + Add-MachinePathItem -PathItem "$($pythonDir.FullName)\Scripts" +} + +Function Set-DefaultRubyVersion { + param( + [Parameter(Mandatory=$true)] + [System.Version] $Version, + [System.String] $Arch = "x64" + ) + $rubyPath = $Env:AGENT_TOOLSDIRECTORY + "/Ruby/${Version}*/${Arch}/bin" + $rubyDir = Get-Item -Path $rubyPath + + Write-Host "Use Ruby ${Version} as a system Ruby" + Add-MachinePathItem -PathItem $rubyDir.FullName + + # Update ruby gem to latest version + gem update --system +} + +Import-Module -Name ImageHelpers -Force + $FeedPrefix = "https://npm.pkg.github.com" $AccessToken = $env:GITHUB_FEED_TOKEN @@ -71,7 +104,5 @@ $ToolVersions.PSObject.Properties | ForEach-Object { } } -#junction point from the previous Python2 directory to the toolcache Python2 -Write-Host "Create symlink to Python2" -$python2Dir = (Get-Item -Path ($ToolsDirectory + '/Python/2.7*/x64')).FullName -cmd.exe /c mklink /d "C:\Python27amd64" "$python2Dir" \ No newline at end of file +Set-DefaultPythonVersion -Version "3.7" +Set-DefaultRubyVersion -Version "2.5" \ No newline at end of file diff --git a/images/win/scripts/Installers/Install-Boost.ps1 b/images/win/scripts/Installers/Install-Boost.ps1 index 907f82d9..0931fb25 100644 --- a/images/win/scripts/Installers/Install-Boost.ps1 +++ b/images/win/scripts/Installers/Install-Boost.ps1 @@ -4,8 +4,11 @@ ## Desc: Install boost using tool cache ################################################################################ -$BoostDirectory = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath "Boost" -$BoostVersions = $env:BOOST_VERSIONS.split(',') +Import-Module -Name ImageHelpers + +$SoftwareName = "Boost" +$BoostDirectory = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath $SoftwareName +$BoostVersions = (Get-ToolsByName -SoftwareName $SoftwareName).Versions | Foreach-Object {"{0}.0" -f $_} $BoostDefault = $env:BOOST_DEFAULT foreach($BoostVersion in $BoostVersions) @@ -20,7 +23,5 @@ foreach($BoostVersion in $BoostVersions) Write-Host "Adding Boost $BoostVersion to the path..." # Add the Boost binaries to the path Add-MachinePathItem $BoostInstallationDir | Out-Null - # Set the BOOSTROOT environment variable - setx BOOST_ROOT $BoostInstallationDir /M | Out-Null } } diff --git a/images/win/scripts/Installers/Install-Git.ps1 b/images/win/scripts/Installers/Install-Git.ps1 index a67d7c99..24efc5bd 100644 --- a/images/win/scripts/Installers/Install-Git.ps1 +++ b/images/win/scripts/Installers/Install-Git.ps1 @@ -8,6 +8,7 @@ Import-Module -Name ImageHelpers # Install the latest version of Git which is bundled with Git LFS. # See https://chocolatey.org/packages/git choco install git -y --package-parameters="/GitAndUnixToolsOnPath /WindowsTerminal /NoShellIntegration" +choco install hub # Disable GCM machine-wide [Environment]::SetEnvironmentVariable("GCM_INTERACTIVE", "Never", [System.EnvironmentVariableTarget]::Machine) diff --git a/images/win/scripts/Installers/Install-Go.ps1 b/images/win/scripts/Installers/Install-Go.ps1 index c33baeca..db186186 100644 --- a/images/win/scripts/Installers/Install-Go.ps1 +++ b/images/win/scripts/Installers/Install-Go.ps1 @@ -5,6 +5,7 @@ Import-Module -Name ImageHelpers -Force +$refsJson = Invoke-RestMethod "https://api.github.com/repos/golang/go/git/refs/tags" function Install-GoVersion { Param @@ -13,17 +14,20 @@ function Install-GoVersion [Switch]$addToDefaultPath ) + $latestVersionObject = $refsJson | Where-Object { $_.ref -Match "refs/tags/go$goVersion[./d]*" } | Select-Object -Last 1 + $latestVersion = $latestVersionObject.ref.replace('refs/tags/go','') + # Download the Go zip archive. - Write-Host "Downloading Go $goVersion..." + Write-Host "Downloading Go $latestVersion..." $ProgressPreference = 'SilentlyContinue' - Invoke-WebRequest -UseBasicParsing -Uri "https://dl.google.com/go/go$goVersion.windows-amd64.zip" -OutFile go$goVersion.windows-amd64.zip + Invoke-WebRequest -UseBasicParsing -Uri "https://dl.google.com/go/go$latestVersion.windows-amd64.zip" -OutFile go$latestVersion.windows-amd64.zip # Extract the zip archive. It contains a single directory named "go". - Write-Host "Extracting Go $goVersion..." - Expand-Archive -Path go$goVersion.windows-amd64.zip -DestinationPath "C:\" -Force + Write-Host "Extracting Go $latestVersion..." + Expand-Archive -Path go$latestVersion.windows-amd64.zip -DestinationPath "C:\" -Force # Delete unnecessary files to conserve space - Write-Host "Cleaning directories of Go $goVersion..." + Write-Host "Cleaning directories of Go $latestVersion..." if (Test-Path "C:\go\doc") { Remove-Item -Recurse -Force "C:\go\doc" @@ -34,17 +38,17 @@ function Install-GoVersion } # Rename the extracted "go" directory to include the Go version number (to support side-by-side versions of Go). - $newDirName = "Go$goVersion" + $newDirName = "Go$latestVersion" Rename-Item -path "C:\go" -newName $newDirName # Delete the Go zip archive. - Write-Host "Deleting downloaded archive of Go $goVersion..." - Remove-Item go$goVersion.windows-a`md64.zip + Write-Host "Deleting downloaded archive of Go $latestVersion..." + Remove-Item go$latestVersion.windows-amd64.zip # Make this the default version of Go? if ($addToDefaultPath) { - Write-Host "Adding Go $goVersion to the path..." + Write-Host "Adding Go $latestVersion to the path..." # Add the Go binaries to the path. Add-MachinePathItem "C:\$newDirName\bin" | Out-Null # Set the GOROOT environment variable. @@ -52,12 +56,12 @@ function Install-GoVersion } # Done - Write-Host "Done installing Go $goVersion." + Write-Host "Done installing Go $latestVersion." return "C:\$newDirName" } # Install Go -$goVersionsToInstall = $env:GO_VERSIONS.split(",") +$goVersionsToInstall = $env:GO_VERSIONS.split(", ", [System.StringSplitOptions]::RemoveEmptyEntries) foreach($go in $goVersionsToInstall) { Write-Host "Installing Go ${go}" @@ -66,6 +70,6 @@ foreach($go in $goVersionsToInstall) { } else { $installDirectory = Install-GoVersion -goVersion $go } - $envName = "GOROOT_{0}_{1}_X64" -f $go.split(".") + $envName = "GOROOT_{0}_{1}_X64" -f $go.split(".") setx $envName "$installDirectory" /M } diff --git a/images/win/scripts/Installers/Install-Ruby.ps1 b/images/win/scripts/Installers/Install-Ruby.ps1 deleted file mode 100644 index 546a4591..00000000 --- a/images/win/scripts/Installers/Install-Ruby.ps1 +++ /dev/null @@ -1,24 +0,0 @@ -################################################################################ -## File: Install-Ruby.ps1 -## Desc: Install Ruby for Windows -################################################################################ - -Import-Module -Name ImageHelpers - -# Ruby versions are already available in the tool cache. - -# Tool cache Ruby Path -$toolcacheRubyPath = 'C:\hostedtoolcache\windows\Ruby\2.5.*' - -# Get Latest Ruby 2.5.x -$latestRubyBinPath2_5 = Get-ChildItem -Path $toolcacheRubyPath | Sort-Object {[System.Version]$_.Name} | Select-Object -Last 1 | ForEach-Object { - Join-Path $_.FullName 'x64\bin' -} - -Add-MachinePathItem $latestRubyBinPath2_5 -$env:Path = Get-MachinePath - -# Update ruby gem to latest version -gem update --system - -exit 0 diff --git a/images/win/scripts/Installers/Windows2019/Install-WDK.ps1 b/images/win/scripts/Installers/Install-WDK.ps1 similarity index 55% rename from images/win/scripts/Installers/Windows2019/Install-WDK.ps1 rename to images/win/scripts/Installers/Install-WDK.ps1 index b7064437..9df64d91 100644 --- a/images/win/scripts/Installers/Windows2019/Install-WDK.ps1 +++ b/images/win/scripts/Installers/Install-WDK.ps1 @@ -4,8 +4,24 @@ ################################################################################ # Requires Windows SDK with the same version number as the WDK -$winSdkUrl = "https://go.microsoft.com/fwlink/p/?linkid=2083338" -$wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2085767" + +Import-Module -Name ImageHelpers -Force + +if(Test-IsWin19) +{ + $winSdkUrl = "https://go.microsoft.com/fwlink/p/?linkid=2083338" + $wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2085767" + $FilePath = "C:\Program Files (x86)\Windows Kits\10\Vsix\VS2019\WDK.vsix" + $VSver = "2019" +} +else +{ + $winSdkUrl = "https://go.microsoft.com/fwlink/p/?LinkID=2023014" + $wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2026156" + $FilePath = "C:\Program Files (x86)\Windows Kits\10\Vsix\WDK.vsix" + $VSver = "2017" +} + # `winsdksetup.exe /features + /quiet` installs all features without showing the GUI $sdkExitCode = Install-EXE -Url $winSdkUrl -Name "winsdksetup.exe" -ArgumentList ("/features", "+", "/quiet") @@ -26,32 +42,4 @@ if ($wdkExitCode -ne 0) } # Need to install the VSIX to get the build targets when running VSBuild -# Write-Host "Installing WDK.vsix" -try -{ - $process = Start-Process ` - -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\VSIXInstaller.exe" ` - -ArgumentList ("/quiet", '"C:\Program Files (x86)\Windows Kits\10\Vsix\VS2019\WDK.vsix"') ` - -Wait ` - -PassThru -} -catch -{ - Write-Host "There is an error during WDK.vsix installation" - $_ - exit 1 -} - - - $exitCode = $process.ExitCode - -if ($exitCode -eq 0 -or $exitCode -eq 1001) # 1001 means the extension is already installed -{ - Write-Host "WDK.vsix installed successfully" -} -else -{ - Write-Host "Unsuccessful exit code returned by the installation process: $exitCode." -} - -exit $exitCode +Install-VsixExtension -FilePath $FilePath -Name "WDK.vsix" -VSversion $VSver -InstallOnly diff --git a/images/win/scripts/Installers/Install-Wix.ps1 b/images/win/scripts/Installers/Install-Wix.ps1 new file mode 100644 index 00000000..076be86c --- /dev/null +++ b/images/win/scripts/Installers/Install-Wix.ps1 @@ -0,0 +1,23 @@ +################################################################################ +## File: Install-Wix.ps1 +## Desc: Install WIX. +################################################################################ + +Import-Module -Name ImageHelpers -Force; + +choco install wixtoolset -y --force + +if(Test-IsWin19) +{ + $extensionUrl = "https://wixtoolset.gallerycdn.vsassets.io/extensions/wixtoolset/wixtoolsetvisualstudio2019extension/1.0.0.4/1563296438961/Votive2019.vsix" + $VSver = "2019" +} +else +{ + $extensionUrl = "https://robmensching.gallerycdn.vsassets.io/extensions/robmensching/wixtoolsetvisualstudio2017extension/0.9.21.62588/1494013210879/250616/4/Votive2017.vsix" + $VSver = "2017" +} + +$extensionName = "Votive$VSver.vsix" +#Installing VS extension 'Wix Toolset Visual Studio Extension' +Install-VsixExtension -Url $extensionUrl -Name $extensionName -VSversion $VSver diff --git a/images/win/scripts/Installers/Update-AndroidSDK.ps1 b/images/win/scripts/Installers/Update-AndroidSDK.ps1 index 0487bb4e..4a04b0b6 100644 --- a/images/win/scripts/Installers/Update-AndroidSDK.ps1 +++ b/images/win/scripts/Installers/Update-AndroidSDK.ps1 @@ -110,6 +110,7 @@ Push-Location -Path $sdk.FullName "add-ons;addon-google_apis-google-22" ` "add-ons;addon-google_apis-google-21" ` "cmake;3.6.4111459" ` + "cmake;3.10.2.4988404" ` "patcher;v4" Pop-Location diff --git a/images/win/scripts/Installers/Validate-Bazel.ps1 b/images/win/scripts/Installers/Validate-Bazel.ps1 index 9cdccda4..1728a9a6 100644 --- a/images/win/scripts/Installers/Validate-Bazel.ps1 +++ b/images/win/scripts/Installers/Validate-Bazel.ps1 @@ -41,4 +41,4 @@ $Description = @" _Version:_ $bazelisk_version
"@ -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description \ No newline at end of file +Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description diff --git a/images/win/scripts/Installers/Validate-Boost.ps1 b/images/win/scripts/Installers/Validate-Boost.ps1 index 9e1c6965..6289e165 100644 --- a/images/win/scripts/Installers/Validate-Boost.ps1 +++ b/images/win/scripts/Installers/Validate-Boost.ps1 @@ -3,6 +3,8 @@ ## Desc: Validate Boost ################################################################################ +Import-Module -Name ImageHelpers + function Validate-BoostVersion { Param @@ -49,36 +51,31 @@ $tmplMarkRoot = @" _Environment:_ * PATH: contains the location of Boost version {0} -* BOOST_ROOT: root directory of the Boost version {0} installation * {1}: root directory of the Boost version {0} installation "@ -$SoftwareName = 'Boost' $Description = New-Object System.Text.StringBuilder -$BoostRootDirectory = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath "Boost" -$BoostVersionsToInstall = $env:BOOST_VERSIONS.split(",") +$SoftwareName = 'Boost' +$BoostRootDirectory = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath $SoftwareName +$BoostTools = Get-ToolsByName -SoftwareName $SoftwareName -foreach($BoostVersion in $BoostVersionsToInstall) +foreach ($BoostTool in $BoostTools) { - Validate-BoostVersion -BoostRootPath $BoostRootDirectory -BoostRelease $BoostVersion - $BoostVersionTag = "BOOST_ROOT_{0}" -f $BoostVersion.Replace('.', '_') + $BoostToolsetName = $BoostTool.Architecture + $BoostVersionsToInstall = $BoostTool.Versions | Foreach-Object {"{0}.0" -f $_} + foreach($BoostVersion in $BoostVersionsToInstall) + { + Validate-BoostVersion -BoostRootPath $BoostRootDirectory -BoostRelease $BoostVersion + $BoostVersionTag = "BOOST_ROOT_{0}" -f $BoostVersion.Replace('.', '_') - if ([Version]$BoostVersion -ge "1.70.0") - { - $BoostToolsetName = "msvc-14.2" - } - else - { - $BoostToolsetName = "msvc-14.1" - } - - if($BoostVersion -eq $env:BOOST_DEFAULT) - { - $null = $Description.AppendLine(($tmplMarkRoot -f $BoostVersion, $BoostVersionTag, $BoostToolsetName)) - } - else - { - $null = $Description.AppendLine(($tmplMark -f $BoostVersion, $BoostVersionTag, $BoostToolsetName)) + if($BoostVersion -eq $env:BOOST_DEFAULT) + { + $null = $Description.AppendLine(($tmplMarkRoot -f $BoostVersion, $BoostVersionTag, $BoostToolsetName)) + } + else + { + $null = $Description.AppendLine(($tmplMark -f $BoostVersion, $BoostVersionTag, $BoostToolsetName)) + } } } diff --git a/images/win/scripts/Installers/Validate-Git.ps1 b/images/win/scripts/Installers/Validate-Git.ps1 index 6f2bb33f..1927a6ad 100644 --- a/images/win/scripts/Installers/Validate-Git.ps1 +++ b/images/win/scripts/Installers/Validate-Git.ps1 @@ -2,48 +2,61 @@ ## File: Validate-Git.ps1 ## Desc: Validate Git for Windows ################################################################################ - -if((Get-Command -Name 'git') -and (Get-Command -Name 'bash') -and (Get-Command -Name 'awk') -and (Get-Command -Name 'git-lfs')) -{ - Write-Host "$(git version) on path" - Write-Host "$(git-lfs version) on path" +function Test-CommandName { + param( + [parameter(Mandatory)][string] $CommandName + ) + Write-Host "Checking the [$CommandName]" + if(-not (Get-Command $CommandName -ErrorAction "Continue")) { + Write-Host "[!] $CommandName is not found" + exit 1 + } } -else -{ - Write-Host "git or git-lfs are not on path." - exit 1 +function Test-Command { + param( + [parameter(Mandatory)][string] $CommandName, + [parameter(Mandatory)][string] $CommandDescription, + [parameter(Mandatory)][string] $VersionCmd, + [parameter(Mandatory)][string] $regexVersion, + [parameter(Mandatory)][string] $DescriptionMarkdown + ) + Test-CommandName -CommandName $CommandName + + $strVersion = Invoke-Expression $VersionCmd + Write-Host "$strVersion on path" + if($strVersion -match $regexVersion) { + $Version = $Matches.version + } + else { + Write-Host "[!] $CommandName version detection failed" + exit 1 + } + # Adding description of the software to Markdown + $DescriptionMarkdown = $DescriptionMarkdown -f $Version + Add-SoftwareDetailsToMarkdown -SoftwareName $CommandDescription -DescriptionMarkdown $DescriptionMarkdown } +Test-CommandName -CommandName 'bash' +Test-CommandName -CommandName 'awk' -if( $(git version) -match 'git version (?.*).win.*' ) -{ - $gitVersion = $Matches.version -} - -if( $(git-lfs version) -match 'git-lfs\/(?.*) \(Git.*' ) -{ - $gitLfsVersion = $Matches.version -} - -# Adding description of the software to Markdown -$SoftwareName = "Git" - -$Description = @" -_Version:_ $gitVersion
+$GitDescription = @" +_Version:_ {0}
_Environment:_ * PATH: contains location of git.exe "@ +Test-Command -CommandName 'git' -CommandDescription 'Git' -VersionCmd "git version" -regexVersion 'git version (?.*).win.*' -DescriptionMarkdown $GitDescription -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description - -# Adding description of the software to Markdown -$SoftwareName = "Git Large File Storage (LFS)" - -$Description = @" -_Version:_ $gitLfsVersion
+$GitLfsDescription = @" +_Version:_ {0}
_Environment:_ * PATH: contains location of git-lfs.exe * GIT_LFS_PATH: location of git-lfs.exe "@ +Test-Command -CommandName 'git-lfs' -CommandDescription 'Git Large File Storage (LFS)' -VersionCmd "git-lfs version" -regexVersion 'git-lfs\/(?.*) \(Git.*' -DescriptionMarkdown $GitLfsDescription -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description +$HubCliDescription = @" +_Version:_ {0}
+_Environment:_ +* PATH: contains location of hub.exe +"@ +Test-Command -CommandName 'hub' -CommandDescription 'Hub CLI' -VersionCmd "hub version | Select-String 'hub version'" -regexVersion 'hub version (?.*)' -DescriptionMarkdown $HubCliDescription \ No newline at end of file diff --git a/images/win/scripts/Installers/Validate-Go.ps1 b/images/win/scripts/Installers/Validate-Go.ps1 index 5ff3ad16..059ea8fa 100644 --- a/images/win/scripts/Installers/Validate-Go.ps1 +++ b/images/win/scripts/Installers/Validate-Go.ps1 @@ -8,18 +8,31 @@ function Get-GoVersion { Param ( - [String]$goRootPath + [String]$goVersion ) + Write-Host "Check if $goVersion is presented in the system" + $DestinationPath = "$($env:SystemDrive)\" + $goDirectory = Get-ChildItem -Path $DestinationPath -Filter "Go$goVersion*" | Select-Object -First 1 + $goPath = Join-Path $env:SystemDrive $goDirectory - $env:Path = "$goRootPath\bin;" + $env:Path - if( $(go version) -match 'go version go(?.*) win.*' ) + $env:Path = "$goPath\bin;" + $env:Path + $version = $(go version) + + $matchVersion = $version -match $goVersion + $semanticEquality = $version -match 'go version go(?.*) win.*' + + if($semanticEquality -And $matchVersion) { - $goVersion = $Matches.version - return $goVersion - } + $goFullVersion = $Matches.version + Write-Host "$goFullVersion has been found" - Write-Host "Unable to determine Go version at " + $goRootPath - return "" + return $goFullVersion + } + else + { + Write-Host "Unable to determine Go version at " + $goPath + exit 1 + } } # Verify that go.exe is on the path @@ -53,10 +66,10 @@ _Environment:_ $SoftwareName = "Go (x64)" $Description = New-Object System.Text.StringBuilder -$goVersionsToInstall = $env:GO_VERSIONS.split(",") +$goVersionsToInstall = $env:GO_VERSIONS.split(", ", [System.StringSplitOptions]::RemoveEmptyEntries) foreach($go in $goVersionsToInstall) { - $goVersion = Get-GoVersion -goRootPath "C:\Go${go}" + $goVersion = Get-GoVersion -goVersion $go $goVersionTag = "GOROOT_{0}_{1}_X64" -f $go.split(".") if ($goVersion -eq $go) { if($go -eq $env:GO_DEFAULT) { diff --git a/images/win/scripts/Installers/Validate-Python.ps1 b/images/win/scripts/Installers/Validate-Python.ps1 deleted file mode 100644 index 7e2ee6e4..00000000 --- a/images/win/scripts/Installers/Validate-Python.ps1 +++ /dev/null @@ -1,45 +0,0 @@ -################################################################################ -## File: Validate-Python.ps1 -## Desc: Configure python on path based on what is installed in the tools cache -## Must run after tools cache is downloaded and validated -################################################################################ - -if(Get-Command -Name 'python') -{ - Write-Host "Python $(& python -V 2>&1) on path" -} -else -{ - Write-Host "Python is not on path" - exit 1 -} - -$Python3Version = $(& python -V 2>&1) - -if ($Python3Version -notlike "Python 3.*") -{ - Write-Error "Python 3 is not in the PATH" -} - - -$python2path = $Env:AGENT_TOOLSDIRECTORY + '/Python/2.7*/x64' -$python2Dir = Get-Item -Path $python2path - -$env:Path = $python2Dir.FullName + ";" + $env:Path - -$Python2Version = & $env:comspec "/s /c python --version 2>&1" - -# Adding description of the software to Markdown -$SoftwareName = "Python (64 bit)" - -$Description = @" -#### $Python3Version -_Environment:_ -* PATH: contains location of python.exe - -#### $Python2Version - -_Location:_ $Python2Path -"@ - -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description diff --git a/images/win/scripts/Installers/Validate-Ruby.ps1 b/images/win/scripts/Installers/Validate-Ruby.ps1 deleted file mode 100644 index 88347ee1..00000000 --- a/images/win/scripts/Installers/Validate-Ruby.ps1 +++ /dev/null @@ -1,55 +0,0 @@ -################################################################################ -## File: Validate-Ruby.ps1 -## Desc: Verify that Ruby is on the path and output version information. -################################################################################ - -# Function that gets the version of Ruby at the specified path -function Get-RubyVersion -{ - Param - ( - [String]$rubyRootPath - ) - - # Prepend to the path like: C:\hostedtoolcache\windows\Ruby\2.5.0\x64\bin - $env:Path = "$rubyRootPath;" + $env:Path - - # Extract the version from Ruby output like: ruby 2.5.1p57 (2018-03-29 revision 63029) [x64-mingw32] - if( $(ruby --version) -match 'ruby (?.*) \(.*' ) - { - $rubyVersion = $Matches.version - return $rubyVersion - } - - Write-Host "Unable to determine Ruby version at " + $rubyRootPath - exit 1 -} - -# Verify that ruby is on the path -if(Get-Command -Name 'ruby') -{ - Write-Host "$(ruby --version) is on the path." -} -else -{ - Write-Host "Ruby is not on the path." - exit 1 -} - -# Default Ruby Version on Path -$rubyExeOnPath = (Get-Command -Name 'ruby').Path -$rubyBinOnPath = Split-Path -Path $rubyExeOnPath -$rubyVersionOnPath = Get-RubyVersion -rubyRootPath $rubyBinOnPath -$gemVersion = & gem -v - -# Add details of available versions in Markdown -$SoftwareName = "Ruby (x64)" -$Description = @" -#### $rubyVersionOnPath -_Environment:_ -* Location: $rubyBinOnPath -* PATH: contains the location of ruby.exe version $rubyVersionOnPath -* Gem Version: $gemVersion -"@ - -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description diff --git a/images/win/scripts/Installers/Validate-ToolCache.ps1 b/images/win/scripts/Installers/Validate-ToolCache.ps1 index 3e3b095f..5ad500bf 100644 --- a/images/win/scripts/Installers/Validate-ToolCache.ps1 +++ b/images/win/scripts/Installers/Validate-ToolCache.ps1 @@ -63,6 +63,78 @@ function RunTestsByPath { } } +function Get-SystemDefaultPython { + Write-Host "Validate system Python..." + + if (Get-Command -Name 'python') + { + Write-Host "Python $(& python -V 2>&1) on path" + } + else + { + Write-Host "Python is not on path" + exit 1 + } + + $pythonBinVersion = $(& python -V 2>&1) + if ($pythonBinVersion -notlike "Python 3.*") + { + Write-Error "Python 3 is not in the PATH" + exit 1 + } + + $pythonBinOnPath = Split-Path -Path (Get-Command -Name 'python').Path + $description = GetDefaultToolDescription -SoftwareVersion $pythonBinVersion -SoftwareLocation $pythonBinOnPath + + return $description +} + +function Get-SystemDefaultRuby { + Write-Host "Validate system Ruby..." + + if (Get-Command -Name 'ruby') + { + Write-Host "$(ruby --version) is on the path." + } + else + { + Write-Host "Ruby is not on the path." + exit 1 + } + + $rubyBinOnPath = Split-Path -Path (Get-Command -Name 'ruby').Path + if ( $(ruby --version) -notmatch 'ruby (?.*) \(.*' ) + { + Write-Host "Unable to determine Ruby version at " + $rubyBinOnPath + exit 1 + + } + + $rubyVersionOnPath = "Ruby $($Matches.version)" + $description = GetDefaultToolDescription -SoftwareVersion $rubyVersionOnPath -SoftwareLocation $rubyBinOnPath + + $gemVersion = & gem -v + $description += "* Gem Version: $gemVersion
" + + return $description +} + +function GetDefaultToolDescription { + param ( + [Parameter(Mandatory = $True)] + [string]$SoftwareVersion, + [Parameter(Mandatory = $True)] + [string]$SoftwareLocation + ) + + $description = "
__System default version:__ $SoftwareVersion
" + $description += "_Environment:_
" + $description += "* Location: $SoftwareLocation
" + $description += "* PATH: contains the location of $SoftwareVersion
" + + return $description +} + function GetMarkdownDescription { param ( [Parameter(Mandatory = $True)] @@ -123,6 +195,14 @@ function ToolcacheTest { $markdownDescription += GetMarkdownDescription -SoftwareVersion $foundVersion -SoftwareArchitecture $requiredArchitecture } } + + if ($SoftwareName -contains "Python") { + $markdownDescription += Get-SystemDefaultPython + } + if ($SoftwareName -contains "Ruby") { + $markdownDescription += Get-SystemDefaultRuby + } + Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $markdownDescription } diff --git a/images/win/scripts/Installers/Windows2019/Validate-WDK.ps1 b/images/win/scripts/Installers/Validate-WDK.ps1 similarity index 90% rename from images/win/scripts/Installers/Windows2019/Validate-WDK.ps1 rename to images/win/scripts/Installers/Validate-WDK.ps1 index c3c6a8f0..ee64f20b 100644 --- a/images/win/scripts/Installers/Windows2019/Validate-WDK.ps1 +++ b/images/win/scripts/Installers/Validate-WDK.ps1 @@ -19,7 +19,7 @@ function Get-WDKVersion } $WDKVersion = Get-WDKVersion -$WDKPackageVersion = Get-VS19ExtensionVersion -packageName "Microsoft.Windows.DriverKit" +$WDKPackageVersion = Get-VSExtensionVersion -packageName "Microsoft.Windows.DriverKit" # Adding description of the software to Markdown $SoftwareName = "Windows Driver Kit" diff --git a/images/win/scripts/Installers/Windows2019/Validate-Wix.ps1 b/images/win/scripts/Installers/Validate-Wix.ps1 similarity index 76% rename from images/win/scripts/Installers/Windows2019/Validate-Wix.ps1 rename to images/win/scripts/Installers/Validate-Wix.ps1 index 4334beb1..d755939d 100644 --- a/images/win/scripts/Installers/Windows2019/Validate-Wix.ps1 +++ b/images/win/scripts/Installers/Validate-Wix.ps1 @@ -4,6 +4,7 @@ ################################################################################ Import-Module -Name ImageHelpers -Force + function Get-WixVersion { $regKey = "HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" $installedApplications = Get-ItemProperty -Path $regKey @@ -21,14 +22,23 @@ else { exit 1 } -$WixPackageVersion = Get-VS19ExtensionVersion -packageName "WixToolset.VisualStudioExtension.Dev16" +if(Test-IsWin19) +{ + $WixPackageVersion = Get-VSExtensionVersion -packageName "WixToolset.VisualStudioExtension.Dev16" + $VSver = "2019" +} +else +{ + $WixPackageVersion = Get-VSExtensionVersion -packageName "WixToolset.VisualStudioExtension.Dev15" + $VSver = "2017" +} # Adding description of the software to Markdown $SoftwareName = "WIX Tools" $Description = @" _Toolset Version:_ $WixToolSetVersion
-_WIX Toolset Visual Studio Extension Version:_ $WixPackageVersion
+_WIX Toolset Studio $VSver Extension Version:_ $WixPackageVersion
_Environment:_ * WIX: Installation root of WIX "@ diff --git a/images/win/scripts/Installers/Windows2016/Initialize-VM.ps1 b/images/win/scripts/Installers/Windows2016/Initialize-VM.ps1 index 7998f1cb..d9210571 100644 --- a/images/win/scripts/Installers/Windows2016/Initialize-VM.ps1 +++ b/images/win/scripts/Installers/Windows2016/Initialize-VM.ps1 @@ -8,7 +8,13 @@ function Disable-InternetExplorerESC { $UserKey = "HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A8-37EF-4b3f-8CFC-4F3A74704073}" Set-ItemProperty -Path $AdminKey -Name "IsInstalled" -Value 0 -Force Set-ItemProperty -Path $UserKey -Name "IsInstalled" -Value 0 -Force - Stop-Process -Name Explorer -Force -ErrorAction Continue + + $ieProcess = Get-Process -Name Explorer -ErrorAction SilentlyContinue + + if ($ieProcess){ + Stop-Process -Name Explorer -Force -ErrorAction Continue + } + Write-Host "IE Enhanced Security Configuration (ESC) has been disabled." } diff --git a/images/win/scripts/Installers/Windows2016/Install-Python.ps1 b/images/win/scripts/Installers/Windows2016/Install-Python.ps1 deleted file mode 100644 index f0a76ca9..00000000 --- a/images/win/scripts/Installers/Windows2016/Install-Python.ps1 +++ /dev/null @@ -1,28 +0,0 @@ -################################################################################ -## File: Install-Python.ps1 -## Desc: Configure python on path with 3.6.* version from the tools cache -## Must run after tools cache is setup -################################################################################ - -Import-Module -Name ImageHelpers -Force - -$python36path = $Env:AGENT_TOOLSDIRECTORY + '/Python/3.6*/x64' -$pythonDir = Get-Item -Path $python36path - -if($pythonDir -is [array]) -{ - Write-Host "More than one python 3.6.* installations found" - Write-Host $pythonDir - exit 1 -} - -$currentPath = Get-MachinePath - -if ($currentPath | Select-String -SimpleMatch $pythonDir.FullName) -{ - Write-Host $pythonDir.FullName ' is already in PATH' - exit 0 -} - -Add-MachinePathItem -PathItem $pythonDir.FullName -Add-MachinePathItem -PathItem "$($pythonDir.FullName)\Scripts" diff --git a/images/win/scripts/Installers/Windows2016/Install-WDK.ps1 b/images/win/scripts/Installers/Windows2016/Install-WDK.ps1 deleted file mode 100644 index 58707f97..00000000 --- a/images/win/scripts/Installers/Windows2016/Install-WDK.ps1 +++ /dev/null @@ -1,51 +0,0 @@ -################################################################################ -## File: Install-WDK.ps1 -## Desc: Install the Windows Driver Kit -################################################################################ - -# Version: 10.0.17763.0 -# Update Validate-WDK.ps1 if the version changes! -# There doesn't seem to be any way to check the version programmatically - -# Requires Windows SDK with the same version number as the WDK -$winSdkUrl = "https://go.microsoft.com/fwlink/p/?LinkID=2023014" -$wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2026156" - -# `winsdksetup.exe /features + /quiet` installs all features without showing the GUI -$sdkExitCode = Install-EXE -Url $winSdkUrl -Name "winsdksetup.exe" -ArgumentList ("/features", "+", "/quiet") - -if ($sdkExitCode -ne 0) -{ - Write-Host "Failed to install the Windows SDK." - exit $sdkExitCode -} - -# `wdksetup.exe /features + /quiet` installs all features without showing the GUI -$wdkExitCode = Install-EXE -Url $wdkUrl -Name "wdksetup.exe" -ArgumentList ("/features", "+", "/quiet") - -if ($wdkExitCode -ne 0) -{ - Write-Host "Failed to install the Windows Driver Kit." - exit $wdkExitCode -} - -# Need to install the VSIX to get the build targets when running VSBuild -Write-Host "Installing WDK.vsix" -$process = Start-Process ` - -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VSIXInstaller.exe" ` - -ArgumentList ("/quiet", '"C:\Program Files (x86)\Windows Kits\10\Vsix\WDK.vsix"') ` - -Wait ` - -PassThru - -$exitCode = $process.ExitCode - -if ($exitCode -eq 0 -or $exitCode -eq 1001) # 1001 means the extension is already installed -{ - Write-Host "WDK.vsix installed successfully" -} -else -{ - Write-Host "Unsuccessful exit code returned by the installation process: $exitCode." -} - -exit $exitCode diff --git a/images/win/scripts/Installers/Windows2016/Install-Wix.ps1 b/images/win/scripts/Installers/Windows2016/Install-Wix.ps1 deleted file mode 100644 index 44ee25c2..00000000 --- a/images/win/scripts/Installers/Windows2016/Install-Wix.ps1 +++ /dev/null @@ -1,53 +0,0 @@ -################################################################################ -## File: Install-Wix.ps1 -## Desc: Install WIX. -################################################################################ -function Install-VsixExtension -{ - Param - ( - [String]$Url, - [String]$Name - ) - - $exitCode = -1 - - try - { - Write-Host "Downloading $Name..." - $FilePath = "${env:Temp}\$Name" - - Invoke-WebRequest -Uri $Url -OutFile $FilePath - - $ArgumentList = ('/quiet', $FilePath) - - Write-Host "Starting Install $Name..." - $process = Start-Process -FilePath 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VSIXInstaller.exe' -ArgumentList $ArgumentList -Wait -PassThru - $exitCode = $process.ExitCode - - if ($exitCode -eq 0 -or $exitCode -eq 3010) - { - Write-Host -Object 'Installation successful' - return $exitCode - } - else - { - Write-Host -Object "Non zero exit code returned by the installation process : $exitCode." - return $exitCode - } - } - catch - { - Write-Host -Object "Failed to install the Extension $Name" - Write-Host -Object $_.Exception.Message - return -1 - } -} - - -choco install wixtoolset -y --force - -#Installing VS extension 'Wix Toolset Visual Studio 2017 Extension' -$exitCode = Install-VsixExtension -Url 'https://robmensching.gallerycdn.vsassets.io/extensions/robmensching/wixtoolsetvisualstudio2017extension/0.9.21.62588/1494013210879/250616/4/Votive2017.vsix' -Name 'Votive2017.vsix' - -return $exitCode diff --git a/images/win/scripts/Installers/Windows2016/Validate-SSDT.ps1 b/images/win/scripts/Installers/Windows2016/Validate-SSDT.ps1 index 9d9a1c4a..40444ee1 100644 --- a/images/win/scripts/Installers/Windows2016/Validate-SSDT.ps1 +++ b/images/win/scripts/Installers/Windows2016/Validate-SSDT.ps1 @@ -5,39 +5,13 @@ Import-Module -Name ImageHelpers -Force -function Get-SSDTExtensionPackage { - $vsProgramData = Get-Item -Path "C:\ProgramData\Microsoft\VisualStudio\Packages\_Instances" - $instanceFolders = Get-ChildItem -Path $vsProgramData.FullName - - if($instanceFolders -is [array]) - { - Write-Host "More than one instance installed" - exit 1 - } - - $stateContent = Get-Content -Path ($instanceFolders.FullName + '\state.packages.json') - $state = $stateContent | ConvertFrom-Json - $SsdtPackage = $state.packages | where { $_.id -eq "SSDT" } - return $SsdtPackage -} - - -$SsdtPackage = Get-SSDTExtensionPackage - -if($SsdtPackage){ - Write-Host "SSDT version" $SsdtPackage.version "installed" -} -else { - Write-Host "SSDT is not installed" - exit 1 -} - +$SSDTPackageVersion = Get-VSExtensionVersion -packageName "SSDT" # Adding description of the software to Markdown $SoftwareName = "SQL Server Data Tools for VS 2017" $Description = @" -_Version:_ $($SsdtPackage.version)
+_Version:_ $SSDTPackageVersion
The following components are installed: diff --git a/images/win/scripts/Installers/Windows2016/Validate-WDK.ps1 b/images/win/scripts/Installers/Windows2016/Validate-WDK.ps1 deleted file mode 100644 index f9edf160..00000000 --- a/images/win/scripts/Installers/Windows2016/Validate-WDK.ps1 +++ /dev/null @@ -1,13 +0,0 @@ -################################################################################ -## File: Validate-WDK.ps1 -## Desc: Validate the installation of the Windows Driver Kit -################################################################################ - -# Adding description of the software to Markdown -$SoftwareName = "Windows Driver Kit" - -$Description = @" -_Version:_ 10.0.17763.0
-"@ - -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description diff --git a/images/win/scripts/Installers/Windows2016/Validate-Wix.ps1 b/images/win/scripts/Installers/Windows2016/Validate-Wix.ps1 deleted file mode 100644 index 090df37a..00000000 --- a/images/win/scripts/Installers/Windows2016/Validate-Wix.ps1 +++ /dev/null @@ -1,62 +0,0 @@ -################################################################################ -## File: Validate-Wix.ps1 -## Desc: Validate WIX. -################################################################################ - -Import-Module -Name ImageHelpers -Force -function Get-WixVersion { - $regKey = "HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" - $installedApplications = Get-ItemProperty -Path $regKey - $Version = ($installedApplications | Where-Object { $_.DisplayName -and $_.DisplayName.toLower().Contains("wix") } | Select-Object -First 1).DisplayVersion - return $Version -} - -#Gets the extension details from state.json -function Get-WixExtensionPackage { - $vsProgramData = Get-Item -Path "C:\ProgramData\Microsoft\VisualStudio\Packages\_Instances" - $instanceFolders = Get-ChildItem -Path $vsProgramData.FullName - - if($instanceFolders -is [array]) - { - Write-Host "More than one instance installed" - exit 1 - } - - $stateContent = Get-Content -Path ($instanceFolders.FullName + '\state.packages.json') - $state = $stateContent | ConvertFrom-Json - $WixPackage = $state.packages | where { $_.id -eq "WixToolset.VisualStudioExtension.Dev15" } - return $WixPackage -} - -$WixToolSetVersion = Get-WixVersion - -if($WixToolSetVersion) { - Write-Host "Wix Toolset version" $WixPackage.version "installed" -} -else { - Write-Host "Wix Toolset is not installed" - exit 1 -} - -$WixPackage = Get-WixExtensionPackage - -if($WixPackage) { - Write-Host "Wix Extension version" $WixPackage.version "installed" -} -else { - Write-Host "Wix Extension is not installed" - exit 1 -} - - -# Adding description of the software to Markdown -$SoftwareName = "WIX Tools" - -$Description = @" -_Toolset Version:_ $WixToolSetVersion
-_WIX Toolset Studio 2017 Extension Version:_ $($WixPackage.version)
-_Environment:_ -* WIX: Installation root of WIX -"@ - -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description diff --git a/images/win/scripts/Installers/Windows2019/Initialize-VM.ps1 b/images/win/scripts/Installers/Windows2019/Initialize-VM.ps1 index 9930e6a6..46574d7c 100644 --- a/images/win/scripts/Installers/Windows2019/Initialize-VM.ps1 +++ b/images/win/scripts/Installers/Windows2019/Initialize-VM.ps1 @@ -8,7 +8,13 @@ function Disable-InternetExplorerESC { $UserKey = "HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A8-37EF-4b3f-8CFC-4F3A74704073}" Set-ItemProperty -Path $AdminKey -Name "IsInstalled" -Value 0 -Force Set-ItemProperty -Path $UserKey -Name "IsInstalled" -Value 0 -Force - Stop-Process -Name Explorer -Force -ErrorAction Continue + + $ieProcess = Get-Process -Name Explorer -ErrorAction SilentlyContinue + + if ($ieProcess){ + Stop-Process -Name Explorer -Force -ErrorAction Continue + } + Write-Host "IE Enhanced Security Configuration (ESC) has been disabled." } diff --git a/images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 b/images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 deleted file mode 100644 index 43bfb603..00000000 --- a/images/win/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1 +++ /dev/null @@ -1,44 +0,0 @@ -################################################################################### -## File: Install-AnalysisExtenstion.ps1 -## Desc: Install the Microsoft Analysis Services Projects Visual Studio extension -################################################################################### - - -$extensionUrl = "https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ProBITools/vsextensions/MicrosoftAnalysisServicesModelingProjects/2.9.5/vspackage" -$extensionDownloadPath = Join-Path $Env:TEMP "Microsoft.DataTools.AnalysisServices.vsix" -Write-Host "Downloading Microsoft.DataTools.AnalysisServices.vsix extension" -(New-Object System.Net.WebClient).DownloadFile($extensionUrl, $extensionDownloadPath) - -Write-Host "Installing Microsoft.DataTools.AnalysisServices.vsix extension" -try -{ - $process = Start-Process ` - -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\VSIXInstaller.exe" ` - -ArgumentList ("/quiet", "$extensionDownloadPath") ` - -Wait ` - -PassThru -} -catch -{ - Write-Host "There is an error during Microsoft.DataTools.AnalysisServices.vsix installation" - $_ - exit 1 -} - - -$exitCode = $process.ExitCode - -if ($exitCode -eq 0 -or $exitCode -eq 1001) # 1001 means the extension is already installed -{ - Write-Host "Microsoft.DataTools.AnalysisServices.vsix installed successfully" -} -else -{ - Write-Host "Unsuccessful exit code returned by the installation process: $exitCode." - exit 1 -} - -#Cleanup installation files -Remove-Item -Force -Confirm:$false $extensionDownloadPath - -exit $exitCode diff --git a/images/win/scripts/Installers/Windows2019/Install-Python.ps1 b/images/win/scripts/Installers/Windows2019/Install-Python.ps1 deleted file mode 100644 index 932ec197..00000000 --- a/images/win/scripts/Installers/Windows2019/Install-Python.ps1 +++ /dev/null @@ -1,28 +0,0 @@ -################################################################################ -## File: Install-Python.ps1 -## Desc: Configure python on path with 3.7.* version from the tools cache -## Must run after tools cache is setup -################################################################################ - -Import-Module -Name ImageHelpers -Force - -$python37path = $Env:AGENT_TOOLSDIRECTORY + '/Python/3.7*/x64' -$pythonDir = Get-Item -Path $python37path - -if($pythonDir -is [array]) -{ - Write-Host "More than one python 3.7.* installations found" - Write-Host $pythonDir - exit 1 -} - -$currentPath = Get-MachinePath - -if ($currentPath | Select-String -SimpleMatch $pythonDir.FullName) -{ - Write-Host $pythonDir.FullName ' is already in PATH' - exit 0 -} - -Add-MachinePathItem -PathItem $pythonDir.FullName -Add-MachinePathItem -PathItem "$($pythonDir.FullName)\Scripts" diff --git a/images/win/scripts/Installers/Windows2019/Install-SSDTExtensions.ps1 b/images/win/scripts/Installers/Windows2019/Install-SSDTExtensions.ps1 new file mode 100644 index 00000000..8c2a6cd7 --- /dev/null +++ b/images/win/scripts/Installers/Windows2019/Install-SSDTExtensions.ps1 @@ -0,0 +1,11 @@ +################################################################################### +## File: Install-SSDTExtensions.ps1 +## Desc: Install the extensions previously known as SSDT package +################################################################################### + +Import-Module -Name ImageHelpers -Force + +Install-VsixExtension -Url 'https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ProBITools/vsextensions/MicrosoftAnalysisServicesModelingProjects/2.9.5/vspackage' -Name 'Microsoft.DataTools.AnalysisServices.vsix' -VSversion "2019" +Install-VsixExtension -Url 'https://marketplace.visualstudio.com/_apis/public/gallery/publishers/SSIS/vsextensions/SqlServerIntegrationServicesProjects/3.4/vspackage' -Name 'Microsoft.DataTools.IntegrationServices.exe' -VSversion "2019" +Install-VsixExtension -Url 'https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ProBITools/vsextensions/MicrosoftReportProjectsforVisualStudio/2.6.3/vspackage' -Name 'Microsoft.DataTools.ReportingServices.vsix' -VSversion "2019" + diff --git a/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 b/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 deleted file mode 100644 index 8fc79bc4..00000000 --- a/images/win/scripts/Installers/Windows2019/Install-Wix.ps1 +++ /dev/null @@ -1,53 +0,0 @@ -################################################################################ -## File: Install-Wix.ps1 -## Desc: Install WIX. -################################################################################ -function Install-VsixExtension -{ - Param - ( - [String]$Url, - [String]$Name - ) - - $ReleaseInPath = 'Enterprise' - $exitCode = -1 - - try - { - Write-Host "Downloading $Name..." - $FilePath = "${env:Temp}\$Name" - - Invoke-WebRequest -Uri $Url -OutFile $FilePath - - $ArgumentList = ('/quiet', $FilePath) - - Write-Host "Starting Install $Name..." - $process = Start-Process -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2019\$ReleaseInPath\Common7\IDE\VSIXInstaller.exe" -ArgumentList $ArgumentList -Wait -PassThru - $exitCode = $process.ExitCode - - if ($exitCode -eq 0 -or $exitCode -eq 3010) - { - Write-Host -Object 'Installation successful' - return $exitCode - } - else - { - Write-Host -Object "Non zero exit code returned by the installation process : $exitCode." - return $exitCode - } - } - catch - { - Write-Host -Object "Failed to install the Extension $Name" - Write-Host -Object $_.Exception.Message - return -1 - } -} - - -choco install wixtoolset -y --force - -#Installing VS extension 'Wix Toolset Visual Studio 2019 Extension' -$exitCode = Install-VsixExtension -Url 'https://wixtoolset.gallerycdn.vsassets.io/extensions/wixtoolset/wixtoolsetvisualstudio2019extension/1.0.0.4/1563296438961/Votive2019.vsix' -Name 'Votive2019.vsix' -#return $exitCode diff --git a/images/win/scripts/Installers/Windows2019/Validate-AnalysisExtenstion.ps1 b/images/win/scripts/Installers/Windows2019/Validate-AnalysisExtenstion.ps1 deleted file mode 100644 index fad85d51..00000000 --- a/images/win/scripts/Installers/Windows2019/Validate-AnalysisExtenstion.ps1 +++ /dev/null @@ -1,18 +0,0 @@ -################################################################################ -## File: Validate-AnalysisExtenstion.ps1 -## Desc: Validate Microsoft Analysis Services Projects Visual Studio extension -################################################################################ - -Import-Module -Name ImageHelpers -Force - -#AnalysisPackage doesn't have any proper name in the state.packages.json file, only id is available -$AnalysisPackageVersion = Get-VS19ExtensionVersion -packageName "04a86fc2-dbd5-4222-848e-911638e487fe" - -# Adding description of the software to Markdown -$SoftwareName = "Microsoft Analysis Services Projects Visual Studio Extension" - -$Description = @" -_Version:_ $AnalysisPackageVersion
-"@ - -Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description \ No newline at end of file diff --git a/images/win/scripts/Installers/Windows2019/Validate-SSDTExtensions.ps1 b/images/win/scripts/Installers/Windows2019/Validate-SSDTExtensions.ps1 new file mode 100644 index 00000000..731c10ed --- /dev/null +++ b/images/win/scripts/Installers/Windows2019/Validate-SSDTExtensions.ps1 @@ -0,0 +1,22 @@ +################################################################################ +## File: Validate-SSDTExtensions.ps1 +## Desc: Validate SQL Server Data Tools Visual Studio extensions +################################################################################ + +Import-Module -Name ImageHelpers -Force + +#These extensions don't have any proper name in the state.packages.json file, only id is available, which can be found on extension marketplace download page +$AnalysisPackageVersion = Get-VSExtensionVersion -packageName "04a86fc2-dbd5-4222-848e-911638e487fe" +$IntegrationPackageVersion = Get-VSExtensionVersion -packageName "851E7A09-7B2B-4F06-A15D-BABFCB26B970" +$ReportingPackageVersion = Get-VSExtensionVersion -packageName "717ad572-c4b7-435c-c166-c2969777f718" + +# Adding description of the software to Markdown +$SoftwareName = "Microsoft SSDT Visual Studio 2019 Extensions" + +$Description = @" +_Microsoft Analysis Services Projects Version:_ $AnalysisPackageVersion
+_SQL Server Integration Services Projects Version:_ $IntegrationPackageVersion
+_Microsoft Reporting Services Projects Version:_ $ReportingPackageVersion
+"@ + +Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description From 9f49b9c6951b215799714a98a59d0ac29e8737b0 Mon Sep 17 00:00:00 2001 From: Nikita Bykov Date: Tue, 17 Mar 2020 12:03:53 +0300 Subject: [PATCH 37/44] updated docs --- images/linux/scripts/installers/java-tools.sh | 9 +++++---- images/win/scripts/Installers/Validate-JavaTools.ps1 | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/images/linux/scripts/installers/java-tools.sh b/images/linux/scripts/installers/java-tools.sh index c979613e..61d39af0 100644 --- a/images/linux/scripts/installers/java-tools.sh +++ b/images/linux/scripts/installers/java-tools.sh @@ -68,10 +68,11 @@ done # Document what was added to the image echo "Lastly, documenting what we added to the metadata file" -DocumentInstalledItem "Azul Zulu OpenJDK (7) ($(/usr/lib/jvm/zulu-7-azure-amd64/bin/java -showversion |& head -n 1))" -DocumentInstalledItem "Azul Zulu OpenJDK (8) ($(/usr/lib/jvm/zulu-8-azure-amd64/bin/java -showversion |& head -n 1))" -DocumentInstalledItem "Azul Zulu OpenJDK (11) ($(/usr/lib/jvm/zulu-11-azure-amd64/bin/java -showversion |& head -n 1))" -DocumentInstalledItem "Azul Zulu OpenJDK (12) ($(/usr/lib/jvm/zulu-12-azure-amd64/bin/java -showversion |& head -n 1))" +DocumentInstalledItem "Azul Zulu OpenJDK:" +DocumentInstalledItemIndent "7 ($(/usr/lib/jvm/zulu-7-azure-amd64/bin/java -showversion |& head -n 1))" +DocumentInstalledItemIndent "8 ($(/usr/lib/jvm/zulu-8-azure-amd64/bin/java -showversion |& head -n 1))" +DocumentInstalledItemIndent "11 ($(/usr/lib/jvm/zulu-11-azure-amd64/bin/java -showversion |& head -n 1))" +DocumentInstalledItemIndent "12 ($(/usr/lib/jvm/zulu-12-azure-amd64/bin/java -showversion |& head -n 1)) (default)" DocumentInstalledItem "Ant ($(ant -version))" DocumentInstalledItem "Gradle ${gradleVersion}" DocumentInstalledItem "Maven ($(mvn -version | head -n 1))" diff --git a/images/win/scripts/Installers/Validate-JavaTools.ps1 b/images/win/scripts/Installers/Validate-JavaTools.ps1 index 0fdd5c82..71477689 100644 --- a/images/win/scripts/Installers/Validate-JavaTools.ps1 +++ b/images/win/scripts/Installers/Validate-JavaTools.ps1 @@ -56,7 +56,7 @@ if( $( $(gradle -version) | Out-String) -match 'Gradle (?.*)' ) $SoftwareName = "Java Development Kit" $Description = @" -#### $javaVersion +#### $javaVersion (default) _Environment:_ * JAVA_HOME: location of JDK From 18e371964f547540b369180ff5958bad59bed81e Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Tue, 17 Mar 2020 16:46:13 +0300 Subject: [PATCH 38/44] add helm istallation --- .../win/scripts/Installers/Install-Docker.ps1 | 4 +++ .../scripts/Installers/Validate-Docker.ps1 | 26 +++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/images/win/scripts/Installers/Install-Docker.ps1 b/images/win/scripts/Installers/Install-Docker.ps1 index cd1f9696..ec4f0d89 100644 --- a/images/win/scripts/Installers/Install-Docker.ps1 +++ b/images/win/scripts/Installers/Install-Docker.ps1 @@ -14,3 +14,7 @@ Install-Package -Name docker -ProviderName DockerMsftProvider -Force Start-Service docker choco install docker-compose -y + +# Install helm +Write-Host "Install Helm" +choco install kubernetes-helm \ No newline at end of file diff --git a/images/win/scripts/Installers/Validate-Docker.ps1 b/images/win/scripts/Installers/Validate-Docker.ps1 index cc9d496e..afa59155 100644 --- a/images/win/scripts/Installers/Validate-Docker.ps1 +++ b/images/win/scripts/Installers/Validate-Docker.ps1 @@ -44,3 +44,29 @@ _Environment:_ "@ Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description + +# Validate helm +if (Get-Command -Name 'helm') +{ + Write-Host "helm on path" + Write-Host "Full version:" + helm version + Write-Host "Short version:" + helm version --short +} +else +{ + Write-Host 'helm is not on path' + exit 1 +} + +$version = $(helm version --short) +$SoftwareName = "Helm" + +$Description = @" +_Version:_ $version
+_Environment:_ +* PATH: contains location of helm +"@ + +Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description \ No newline at end of file From bd63116ffdef4ea1b60de0ddcdf0ae8667018069 Mon Sep 17 00:00:00 2001 From: Alejandro Pauly Date: Tue, 17 Mar 2020 15:00:23 -0400 Subject: [PATCH 39/44] Delete stale Action to avoid missing unanswered issues. --- .github/workflows/stale.yml | 19 ------------------- 1 file changed, 19 deletions(-) delete mode 100644 .github/workflows/stale.yml diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml deleted file mode 100644 index 40ed1206..00000000 --- a/.github/workflows/stale.yml +++ /dev/null @@ -1,19 +0,0 @@ -name: Mark stale issues and pull requests - -on: - schedule: - - cron: "0 3 * * *" - -jobs: - stale: - - runs-on: ubuntu-latest - - steps: - - uses: actions/stale@v1 - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} - stale-issue-message: 'This issue has not had any activity for 45 days and will be closed in 45 days if there continues to be no activity.' - stale-issue-label: 'no-issue-activity' - days-before-stale: 45 - days-before-close: 45 From 1941e8d57daa65925f3d2b25d856ae0b0149e5fe Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Wed, 18 Mar 2020 10:00:46 +0300 Subject: [PATCH 40/44] remove extra output --- images/win/scripts/Installers/Validate-Docker.ps1 | 2 -- 1 file changed, 2 deletions(-) diff --git a/images/win/scripts/Installers/Validate-Docker.ps1 b/images/win/scripts/Installers/Validate-Docker.ps1 index afa59155..08ec7641 100644 --- a/images/win/scripts/Installers/Validate-Docker.ps1 +++ b/images/win/scripts/Installers/Validate-Docker.ps1 @@ -51,8 +51,6 @@ if (Get-Command -Name 'helm') Write-Host "helm on path" Write-Host "Full version:" helm version - Write-Host "Short version:" - helm version --short } else { From a976829e967b2a4020b80d03ac8dd6d2f7eb3753 Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Wed, 18 Mar 2020 10:16:29 +0300 Subject: [PATCH 41/44] remove debug line --- images/win/scripts/Installers/Validate-Docker.ps1 | 2 -- 1 file changed, 2 deletions(-) diff --git a/images/win/scripts/Installers/Validate-Docker.ps1 b/images/win/scripts/Installers/Validate-Docker.ps1 index 08ec7641..9dab4f46 100644 --- a/images/win/scripts/Installers/Validate-Docker.ps1 +++ b/images/win/scripts/Installers/Validate-Docker.ps1 @@ -49,8 +49,6 @@ Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $ if (Get-Command -Name 'helm') { Write-Host "helm on path" - Write-Host "Full version:" - helm version } else { From f490381d0da023015d6389ccea9e464eff2d5f4d Mon Sep 17 00:00:00 2001 From: Image generation service account Date: Wed, 18 Mar 2020 12:07:50 +0000 Subject: [PATCH 42/44] Updating readme file for AzP.20200315.ubuntu16.1 version 20200315 --- images/linux/Ubuntu1604-README.md | 49 +++++++++++++++---------------- 1 file changed, 24 insertions(+), 25 deletions(-) diff --git a/images/linux/Ubuntu1604-README.md b/images/linux/Ubuntu1604-README.md index 7b5be124..8af4c531 100644 --- a/images/linux/Ubuntu1604-README.md +++ b/images/linux/Ubuntu1604-README.md @@ -1,10 +1,10 @@ # Ubuntu 16.04.6 LTS -The following software is installed on machines with the 20200308.0 update. +The following software is installed on machines with the 20200315.1 update. *** - 7-Zip 9.20 - Ansible (ansible 2.9.6) - AzCopy (azcopy 7.3.0-netcore) -- Azure CLI (azure-cli 2.1.0) +- Azure CLI (azure-cli 2.2.0) - Azure CLI (azure-devops 0.17.0) - Basic CLI: - curl @@ -14,6 +14,8 @@ The following software is installed on machines with the 20200308.0 update. - iproute2 - iputils-ping - jq + - libc++-dev + - libc++abi-dev - libcurl3 - libicu55 - libunwind8 @@ -32,14 +34,14 @@ The following software is installed on machines with the 20200308.0 update. - wget - zip - zstd -- AWS CLI (aws-cli/1.18.16 Python/2.7.12 Linux/4.15.0-1071-azure botocore/1.15.16) +- AWS CLI (aws-cli/1.18.21 Python/2.7.12 Linux/4.15.0-1071-azure botocore/1.15.21) - build-essential - Clang 6.0 (6.0.1) - Clang 8 (8.0.1) - Clang 9 (9.0.1) - CMake (cmake version 3.16.2) -- Docker Compose (docker-compose version 1.22.0, build f46880fe) -- Docker-Moby (Docker version 3.0.10+azure, build 99c5edceb48d64c1aa5d09b8c9c499d431d98bb9) +- Docker Compose (docker-compose version 1.25.4, build 8d51620a) +- Docker-Moby (Docker version 3.0.11+azure, build eb310fca49568dccd87c6136f774ef6fff2a1b51) - .NET Core SDK: - 3.1.101 - 3.1.100 @@ -101,7 +103,7 @@ The following software is installed on machines with the 20200308.0 update. - 2.1.301 - 2.1.300 - Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4) -- Firefox (Mozilla Firefox 73.0.1) +- Firefox (Mozilla Firefox 74.0) - Geckodriver (0.26.0); Gecko Driver is available via GECKOWEBDRIVER environment variable - GNU C++ 7.4.0 - GNU C++ 8.3.0 @@ -110,14 +112,9 @@ The following software is installed on machines with the 20200308.0 update. - GNU Fortran 9.2.1 - Git (2.25.1) - Git Large File Storage (LFS) (2.10.0) -- Go 1.9 (go version go1.9.7 linux/amd64) -- Go 1.10 (go version go1.10.8 linux/amd64) -- Go 1.11 (go version go1.11.12 linux/amd64) -- Go 1.12 (go version go1.12.7 linux/amd64) -- Go 1.13 (go version go1.13 linux/amd64) - Google Chrome (Google Chrome 80.0.3987.132 ) - ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882}); Chrome Driver is available via CHROMEWEBDRIVER environment variable -- Google Cloud SDK (283.0.0) +- Google Cloud SDK (284.0.0) - Haskell Cabal (cabal-install version 2.0.0.1 compiled using version 2.0.1.1 of the Cabal library ) - Haskell Cabal (cabal-install version 2.2.0.0 @@ -138,7 +135,7 @@ compiled using version 3.0.2.0 of the Cabal library ) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.3) - Haskell Stack (Version 2.1.3, Git revision 636e3a759d51127df2b62f90772def126cdf6d1f (7735 commits) x86_64 hpack-0.31.2) - Heroku (heroku/7.39.0 linux-x64 node-v12.13.0) -- HHVM (HipHop VM 4.47.0 (rel)) +- HHVM (HipHop VM 4.48.0 (rel)) - ImageMagick - Azul Zulu OpenJDK (7) (openjdk version "1.7.0_252") - Azul Zulu OpenJDK (8) (openjdk version "1.8.0_242") @@ -148,11 +145,11 @@ compiled using version 3.0.2.0 of the Cabal library ) - Gradle 6.2.2 - Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)) - Kind (kind v0.7.0 go1.13.6 linux/amd64) -- kubectl (Client Version: v1.17.3) -- helm (v3.1.1+gafe7058) +- kubectl (Client Version: v1.17.4) +- helm (v3.1.2+gd878d4d) - Leiningen (Leiningen 2.9.1 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) - Mercurial (Mercurial Distributed SCM (version 4.4.1)) -- Miniconda (conda 4.7.12) +- Miniconda (conda 4.8.2) - Mono (Mono JIT compiler version 6.8.0.105 (tarball Tue Feb 4 21:20:35 UTC 2020)) - MySQL (mysql Ver 14.14 Distrib 5.7.29, for Linux (x86_64) using EditLine wrapper) - MySQL Server (user:root password:root) @@ -161,12 +158,12 @@ compiled using version 3.0.2.0 of the Cabal library ) - Grunt (grunt-cli v1.2.0) - Gulp (CLI version: 2.2.0 Local version: Unknown) -- n (6.3.1) +- n (6.4.0) - Parcel (1.12.4) - TypeScript (Version 3.8.3) - Webpack (4.42.0) - Webpack CLI (3.3.11) -- Yarn (1.22.1) +- Yarn (1.22.4) - Bazel (bazel 2.2.0) - Bazelisk (1.3.0) - PhantomJS (2.1.1) @@ -176,7 +173,7 @@ Local version: Unknown) - PHP 7.2 (PHP 7.2.28-3+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:01) ( NTS )) - PHP 7.3 (PHP 7.3.15-3+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:10) ( NTS )) - PHP 7.4 (PHP 7.4.3 (cli) (built: Feb 23 2020 07:24:02) ( NTS )) -- Composer (Composer version 1.9.3 2020-02-04 12:58:49) +- Composer (Composer version 1.10.1 2020-03-13 20:34:27) - PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.) - Pollinate - psql (PostgreSQL) 9.5.19 @@ -184,14 +181,12 @@ Local version: Unknown) - ruby (2.3.1p112) - gem (3.1.2) - rustup (1.21.1) -- rust (1.41.1) -- cargo (1.41.0) +- rust (1.42.0) +- cargo (1.42.0) - rustfmt (1.4.11-stable) - clippy (0.0.212) -- rustdoc (1.41.1) -- bindgen (execute -the -0.53.1) +- rustdoc (1.42.0) +- bindgen (0.53.2) - cbindgen (0.13.1) - Julia (julia version 1.3.1) - sbt (1.3.8) @@ -202,6 +197,10 @@ the - Packer (1.5.4) - Vcpkg 2020.02.04-unknownhash - Zeit Now CLI (17.0.4) +- Go 1.11 (go version go1.11.13 linux/amd64) +- Go 1.12 (go version go1.12.17 linux/amd64) +- Go 1.13 (go version go1.13.8 linux/amd64) +- Go 1.14 (go version go1.14 linux/amd64) - Google Repository 58 - Google Play services 49 - Google APIs 24 From c53984f34c9b7f4cee75ae3c176e915a2715d2ab Mon Sep 17 00:00:00 2001 From: Image generation service account Date: Wed, 18 Mar 2020 17:40:02 +0000 Subject: [PATCH 43/44] Updating readme file for AzP.20200316.win16.1 version 20200316 --- images/win/Windows2016-Readme.md | 76 ++++++++------------------------ 1 file changed, 19 insertions(+), 57 deletions(-) diff --git a/images/win/Windows2016-Readme.md b/images/win/Windows2016-Readme.md index c60d1ffa..e8170262 100644 --- a/images/win/Windows2016-Readme.md +++ b/images/win/Windows2016-Readme.md @@ -1,6 +1,6 @@ # Windows Server 2016 -The following software is installed on machines with the 20200308.0 update. +The following software is installed on machines with the 20200316.1 update. Components marked with **\*** have been upgraded since the previous version of the image. @@ -30,15 +30,15 @@ _Version:_ 7.0.0
## Docker images The following container images have been cached: -* mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2016 (Digest: sha256:2053602020c89ff2d6c0d4005372ebc6cebcf866fb5785e562d91389aa467943) -* mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2016 (Digest: sha256:ca895ab76f1d3ab95f022cbca076e06b62daebafe61af34212bb3ed1fe982d78) -* mcr.microsoft.com/windows/servercore:ltsc2016 (Digest: sha256:10e43e24be6eb5f3e19e705a88adb9794b569028f0e0d715d40f25e53e04c3fc) +* mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2016 (Digest: sha256:e53049e13aa29b2df35642fa827c532ceaa78745e6ca72be2cbe74b1d75b5b99) +* mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2016 (Digest: sha256:9d34bebe71fdebfd288b3e87a9b8372e47a9291782c09fbaeb657f8f78817779) +* mcr.microsoft.com/windows/servercore:ltsc2016 (Digest: sha256:5bd97dbab1afe8d3200f5d5c974df3b0130e74e8a69fddcd427699c4c8cb5037) * microsoft/aspnetcore-build:1.0-2.0 (Digest: sha256:9ecc7c5a8a7a11dca5f08c860165646cb30d084606360a3a72b9cbe447241c0c) * mcr.microsoft.com/windows/nanoserver:10.0.14393.953 (Digest: sha256:fc60bd5ae0e61b334ce1cf1bcbf20c10c36b4c5482a01da319c9c989f9e6e268) ## Visual Studio 2017 Enterprise -_Version:_ VisualStudio/15.9.20+28307.1033
+_Version:_ VisualStudio/15.9.21+28307.1064
_Location:_ C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise The following workloads including required and recommended components are installed with Visual Studio 2017: @@ -415,7 +415,7 @@ _Description:_ .NET has been configured to use TLS 1.2 by default ## Azure CLI -_Version:_ 2.1.0 +_Version:_ 2.2.0 _Environment:_ * PATH: contains location of az.cmd @@ -425,7 +425,7 @@ _Version:_ azure-devops 0.17.0 ## Python -_Version:_ 2.7.17 (x64)
_Version:_ 3.5.4 (x64)
_Version:_ 3.6.8 (x64)
_Version:_ 3.7.6 (x64)
_Version:_ 3.8.2 (x64)
_Version:_ 2.7.17 (x86)
_Version:_ 3.5.4 (x86)
_Version:_ 3.6.8 (x86)
_Version:_ 3.7.6 (x86)
_Version:_ 3.8.2 (x86)
+_Version:_ 2.7.17 (x64)
_Version:_ 3.5.4 (x64)
_Version:_ 3.6.8 (x64)
_Version:_ 3.7.6 (x64)
_Version:_ 3.8.2 (x64)
_Version:_ 2.7.17 (x86)
_Version:_ 3.5.4 (x86)
_Version:_ 3.6.8 (x86)
_Version:_ 3.7.6 (x86)
_Version:_ 3.8.2 (x86)

__System default version:__ Python 3.7.6
_Environment:_
* Location: C:\hostedtoolcache\windows\Python\3.7.6\x64
* PATH: contains the location of Python 3.7.6
## PyPy @@ -433,17 +433,11 @@ _Version:_ 2.7.13 (x86)
_Version:_ 3.6.9 (x86)
## Ruby -_Version:_ 2.4.9 (x64)
_Version:_ 2.5.7 (x64)
_Version:_ 2.6.5 (x64)
_Version:_ 2.7.0 (x64)
+_Version:_ 2.4.9 (x64)
_Version:_ 2.5.7 (x64)
_Version:_ 2.6.5 (x64)
_Version:_ 2.7.0 (x64)

__System default version:__ Ruby 2.5.7p206
_Environment:_
* Location: C:\hostedtoolcache\windows\Ruby\2.5.7\x64\bin
* PATH: contains the location of Ruby 2.5.7p206
* Gem Version: 2.7.6.2
-## Python (64 bit) +## OpenSSL -#### Python 3.6.8 -_Environment:_ -* PATH: contains location of python.exe - -#### Python 2.7.17 - -_Location:_ C:/hostedtoolcache/windows/Python/2.7*/x64 +_Version:_ 1.1.1 at C:\Program Files\OpenSSL\bin\openssl.exe
_Version:_ 1.1.1c at C:\Strawberry\c\bin\openssl.exe
_Version:_ 1.1.1d at C:\Program Files\Git\mingw64\bin\openssl.exe
_Version:_ 1.1.1d at C:\Program Files\Git\usr\bin\openssl.exe
_Version:_ 1.0.2j at C:\Program Files (x86)\Subversion\bin\openssl.exe
## Perl @@ -464,32 +458,12 @@ _Environment:_ ## Go (x64) -#### 1.9.7 +#### 1.14 _Environment:_ -* GOROOT_1_9_X64: root directory of the Go 1.9.7 installation - -#### 1.10.8 - -_Environment:_ -* GOROOT_1_10_X64: root directory of the Go 1.10.8 installation - -#### 1.11.12 - -_Environment:_ -* GOROOT_1_11_X64: root directory of the Go 1.11.12 installation - -#### 1.12.7 - -_Environment:_ -* PATH: contains the location of go.exe version 1.12.7 -* GOROOT: root directory of the Go 1.12.7 installation -* GOROOT_1_12_X64: root directory of the Go 1.12.7 installation -#### 1.13 - -_Environment:_ -* GOROOT_1_13_X64: root directory of the Go 1.13 installation - +* PATH: contains the location of go.exe version 1.14 +* GOROOT: root directory of the Go 1.14 installation +* GOROOT_1_14_X64: root directory of the Go 1.14 installation ## Boost @@ -514,17 +488,9 @@ _Environment:_ * PATH: contains the location of php.exe version 7.4.3 * PHPROOT: root directory of the PHP 7.4.3 installation -## Ruby (x64) - -#### 2.5.7p206 -_Environment:_ -* Location: C:\hostedtoolcache\windows\Ruby\2.5.7\x64\bin -* PATH: contains the location of ruby.exe version 2.5.7p206 -* Gem Version: 3.1.2 - ## Rust (64-bit) -#### 1.41.1 +#### 1.42.0 _Location:_ C:\Rust\.cargo\bin _Environment:_ * PATH: contains the location of rustc.exe @@ -556,7 +522,7 @@ _version:_ ## Mozilla Firefox _version:_ -73.0.1 +74.0 ## Selenium Web Drivers @@ -602,7 +568,7 @@ _Environment:_ * PATH: contains location of node.exe
* Gulp CLI version: 2.2.0 Local version: Unknown
* Grunt grunt-cli v1.3.2
-* Yarn 1.22.1
+* Yarn 1.22.4
## npm @@ -823,15 +789,11 @@ _Version:_ 1.4.0
## Inno Setup -_Version:_ 6.0.3
+_Version:_ 6.0.4
## GitVersion -_Version:_ 5.2.0.0
- -## OpenSSL - -_Version:_ 1.1.1c at C:\Strawberry\c\bin\openssl.exe
_Version:_ 1.1.1d at C:\Program Files\Git\mingw64\bin\openssl.exe
_Version:_ 1.1.1d at C:\Program Files\Git\usr\bin\openssl.exe
_Version:_ 1.0.2j at C:\Program Files (x86)\Subversion\bin\openssl.exe
_Version:_ 1.1.1 at C:\Program Files\OpenSSL\bin\openssl.exe
+_Version:_ 5.2.3.0
## Cloud Foundry CLI From 0ddeb1ac4b2e81f45ba752d49ec5825b77141d40 Mon Sep 17 00:00:00 2001 From: Image generation service account Date: Wed, 18 Mar 2020 17:52:20 +0000 Subject: [PATCH 44/44] Updating readme file for AzP.20200316.ubuntu18.1 version 20200316 --- images/linux/Ubuntu1804-README.md | 47 +++++++++++++++---------------- 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/images/linux/Ubuntu1804-README.md b/images/linux/Ubuntu1804-README.md index 94f3547f..61577a94 100644 --- a/images/linux/Ubuntu1804-README.md +++ b/images/linux/Ubuntu1804-README.md @@ -1,10 +1,10 @@ # Ubuntu 18.04.4 LTS -The following software is installed on machines with the 20200308.0 update. +The following software is installed on machines with the 20200316.1 update. *** - 7-Zip 16.02 - Ansible (ansible 2.9.6) - AzCopy (azcopy 7.3.0-netcore) -- Azure CLI (azure-cli 2.1.0) +- Azure CLI (azure-cli 2.2.0) - Azure CLI (azure-devops 0.17.0) - Basic CLI: - curl @@ -32,14 +32,14 @@ The following software is installed on machines with the 20200308.0 update. - wget - zip - zstd -- AWS CLI (aws-cli/1.18.16 Python/2.7.17 Linux/5.0.0-1032-azure botocore/1.15.16) +- AWS CLI (aws-cli/1.18.21 Python/2.7.17 Linux/5.0.0-1032-azure botocore/1.15.21) - build-essential - Clang 6.0 (6.0.1) - Clang 8 (8.0.1) - Clang 9 (9.0.0) - CMake (cmake version 3.16.2) -- Docker Compose (docker-compose version 1.22.0, build f46880fe) -- Docker-Moby (Docker version 3.0.10+azure, build 99c5edceb48d64c1aa5d09b8c9c499d431d98bb9) +- Docker Compose (docker-compose version 1.25.4, build 8d51620a) +- Docker-Moby (Docker version 3.0.11+azure, build eb310fca49568dccd87c6136f774ef6fff2a1b51) - .NET Core SDK: - 3.1.101 - 3.1.100 @@ -101,21 +101,18 @@ The following software is installed on machines with the 20200308.0 update. - 2.1.301 - 2.1.300 - Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4) -- Firefox (Mozilla Firefox 73.0.1) +- Firefox (Mozilla Firefox 74.0) - Geckodriver (0.26.0); Gecko Driver is available via GECKOWEBDRIVER environment variable -- GNU C++ 7.4.0 +- GNU C++ 7.5.0 - GNU C++ 8.3.0 - GNU C++ 9.2.1 - GNU Fortran 8.3.0 - GNU Fortran 9.2.1 - Git (2.25.1) - Git Large File Storage (LFS) (2.10.0) -- Go 1.11 (go version go1.11.12 linux/amd64) -- Go 1.12 (go version go1.12.7 linux/amd64) -- Go 1.13 (go version go1.13 linux/amd64) - Google Chrome (Google Chrome 80.0.3987.132 ) - ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882}); Chrome Driver is available via CHROMEWEBDRIVER environment variable -- Google Cloud SDK (283.0.0) +- Google Cloud SDK (284.0.0) - Haskell Cabal (cabal-install version 2.0.0.1 compiled using version 2.0.1.1 of the Cabal library ) - Haskell Cabal (cabal-install version 2.2.0.0 @@ -136,7 +133,7 @@ compiled using version 3.0.2.0 of the Cabal library ) - GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.3) - Haskell Stack (Version 2.1.3, Git revision 636e3a759d51127df2b62f90772def126cdf6d1f (7735 commits) x86_64 hpack-0.31.2) - Heroku (heroku/7.39.0 linux-x64 node-v12.13.0) -- HHVM (HipHop VM 4.47.0 (rel)) +- HHVM (HipHop VM 4.48.0 (rel)) - ImageMagick - Azul Zulu OpenJDK (7) (openjdk version "1.7.0_252") - Azul Zulu OpenJDK (8) (openjdk version "1.8.0_242") @@ -146,11 +143,11 @@ compiled using version 3.0.2.0 of the Cabal library ) - Gradle 6.2.2 - Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)) - Kind (kind v0.7.0 go1.13.6 linux/amd64) -- kubectl (Client Version: v1.17.3) -- helm (v3.1.1+gafe7058) +- kubectl (Client Version: v1.17.4) +- helm (v3.1.2+gd878d4d) - Leiningen (Leiningen 2.9.1 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) - Mercurial (Mercurial Distributed SCM (version 4.5.3)) -- Miniconda (conda 4.7.12) +- Miniconda (conda 4.8.2) - Mono (Mono JIT compiler version 6.8.0.105 (tarball Tue Feb 4 21:20:20 UTC 2020)) - MySQL (mysql Ver 14.14 Distrib 5.7.29, for Linux (x86_64) using EditLine wrapper) - MySQL Server (user:root password:root) @@ -159,12 +156,12 @@ compiled using version 3.0.2.0 of the Cabal library ) - Grunt (grunt-cli v1.2.0) - Gulp (CLI version: 2.2.0 Local version: Unknown) -- n (6.3.1) +- n (6.4.0) - Parcel (1.12.4) - TypeScript (Version 3.8.3) - Webpack (4.42.0) - Webpack CLI (3.3.11) -- Yarn (1.22.1) +- Yarn (1.22.4) - Bazel (bazel 2.2.0) - Bazelisk (1.3.0) - PhantomJS (2.1.1) @@ -172,7 +169,7 @@ Local version: Unknown) - PHP 7.2 (PHP 7.2.28-3+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:25) ( NTS )) - PHP 7.3 (PHP 7.3.15-3+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:33) ( NTS )) - PHP 7.4 (PHP 7.4.3 (cli) (built: Feb 23 2020 07:24:28) ( NTS )) -- Composer (Composer version 1.9.3 2020-02-04 12:58:49) +- Composer (Composer version 1.10.1 2020-03-13 20:34:27) - PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.) - Pollinate - psql (PostgreSQL) 10.12 @@ -180,14 +177,12 @@ Local version: Unknown) - ruby (2.5.1p57) - gem (3.1.2) - rustup (1.21.1) -- rust (1.41.1) -- cargo (1.41.0) +- rust (1.42.0) +- cargo (1.42.0) - rustfmt (1.4.11-stable) - clippy (0.0.212) -- rustdoc (1.41.1) -- bindgen (execute -the -0.53.1) +- rustdoc (1.42.0) +- bindgen (0.53.2) - cbindgen (0.13.1) - Julia (julia version 1.3.1) - sbt (1.3.8) @@ -198,6 +193,10 @@ the - Packer (1.5.4) - Vcpkg 2020.02.04-unknownhash - Zeit Now CLI (17.0.4) +- Go 1.11 (go version go1.11.13 linux/amd64) +- Go 1.12 (go version go1.12.17 linux/amd64) +- Go 1.13 (go version go1.13.8 linux/amd64) +- Go 1.14 (go version go1.14 linux/amd64) - Google Repository 58 - Google Play services 49 - Google APIs 24