update boost toolset and notes, remove BOOST_ROOT

This commit is contained in:
Aleksandr Chebotov
2020-03-17 09:47:22 +03:00
parent 8254ea02af
commit 80449e25a0
52 changed files with 728 additions and 864 deletions

View File

@@ -55,6 +55,14 @@ jobs:
-ImageName ${{ parameters.image_type }} ` -ImageName ${{ parameters.image_type }} `
-AccessToken $(RELEASE_TARGET_TOKEN) -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 - task: PowerShell@2
displayName: 'Clean up resources' displayName: 'Clean up resources'
condition: always() condition: always()

View File

@@ -16,4 +16,5 @@ pr:
jobs: jobs:
- template: image-generation.yml - template: image-generation.yml
parameters: parameters:
image_type: ubuntu1604 image_type: ubuntu1604
image_readme_name: Ubuntu1604-README.md

View File

@@ -16,4 +16,5 @@ pr:
jobs: jobs:
- template: image-generation.yml - template: image-generation.yml
parameters: parameters:
image_type: ubuntu1804 image_type: ubuntu1804
image_readme_name: Ubuntu1804-README.md

View File

@@ -16,4 +16,5 @@ pr:
jobs: jobs:
- template: image-generation.yml - template: image-generation.yml
parameters: parameters:
image_type: Windows2016-Azure image_type: Windows2016-Azure
image_readme_name: Windows2016-Readme.md

View File

@@ -16,4 +16,5 @@ pr:
jobs: jobs:
- template: image-generation.yml - template: image-generation.yml
parameters: parameters:
image_type: Windows2019-Azure image_type: Windows2019-Azure
image_readme_name: Windows2019-Readme.md

View File

@@ -36,6 +36,9 @@ $SensitiveData = @(
': ->' ': ->'
) )
Write-Host "Show Packer Version"
packer --version
Write-Host "Build $Image VM" Write-Host "Build $Image VM"
packer build -var "capture_name_prefix=$ResourcesNamePrefix" ` packer build -var "capture_name_prefix=$ResourcesNamePrefix" `
-var "client_id=$ClientId" ` -var "client_id=$ClientId" `

View File

@@ -1,16 +1,11 @@
# Ubuntu 16.04.6 LTS # 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 - 7-Zip 9.20
- Ansible (ansible 2.9.4) - Ansible (ansible 2.9.6)
- AzCopy (azcopy 7.3.0-netcore) - AzCopy (azcopy 7.3.0-netcore)
- Azure CLI (azure-cli 2.1.0) - Azure CLI (azure-cli 2.1.0)
- Azure CLI (azure-devops 0.17.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: - Basic CLI:
- curl - curl
- dnsutils - dnsutils
@@ -37,7 +32,7 @@ Build timestamp as int: 1582297007)
- wget - wget
- zip - zip
- zstd - 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 - build-essential
- Clang 6.0 (6.0.1) - Clang 6.0 (6.0.1)
- Clang 8 (8.0.1) - Clang 8 (8.0.1)
@@ -107,7 +102,7 @@ Build timestamp as int: 1582297007)
- 2.1.300 - 2.1.300
- Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4) - Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4)
- Firefox (Mozilla Firefox 73.0.1) - 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++ 7.4.0
- GNU C++ 8.3.0 - GNU C++ 8.3.0
- GNU C++ 9.2.1 - 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.11 (go version go1.11.12 linux/amd64)
- Go 1.12 (go version go1.12.7 linux/amd64) - Go 1.12 (go version go1.12.7 linux/amd64)
- Go 1.13 (go version go1.13 linux/amd64) - Go 1.13 (go version go1.13 linux/amd64)
- Google Chrome (Google Chrome 80.0.3987.122 ) - Google Chrome (Google Chrome 80.0.3987.132 )
- Chromedriver (ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882})); Chrome Driver is available via CHROMEWEBDRIVER environment variable - 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 Cloud SDK (283.0.0)
- Haskell Cabal (cabal-install version 2.0.0.1 - Haskell Cabal (cabal-install version 2.0.0.1
compiled using version 2.0.1.1 of the Cabal library ) compiled using version 2.0.1.1 of the Cabal library )
- Haskell Cabal (cabal-install version 2.2.0.0 - 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.6.5)
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.1) - 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.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) - 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) - Heroku (heroku/7.39.0 linux-x64 node-v12.13.0)
- HHVM (HipHop VM 4.46.0 (rel)) - HHVM (HipHop VM 4.47.0 (rel))
- ImageMagick - ImageMagick
- Azul Zulu OpenJDK (7) (openjdk version "1.7.0_252") - Azul Zulu OpenJDK (7) (openjdk version "1.7.0_252")
- Azul Zulu OpenJDK (8) (openjdk version "1.8.0_242") - 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 (11) (openjdk version "11.0.6" 2020-01-14 LTS)
- Azul Zulu OpenJDK (12) (openjdk version "12.0.2" 2019-07-16) - 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) - 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)) - Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f))
- Kind (kind v0.7.0 go1.13.6 linux/amd64) - Kind (kind v0.7.0 go1.13.6 linux/amd64)
- kubectl (Client Version: v1.17.3) - kubectl (Client Version: v1.17.3)
- helm (Client: v2.16.3+g1ee0254) - helm (v3.1.1+gafe7058)
- Leiningen (Leiningen 2.9.2 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) - Leiningen (Leiningen 2.9.1 on Java 1.8.0_242 OpenJDK 64-Bit Server VM)
- Mercurial (Mercurial Distributed SCM (version 4.4.1)) - Mercurial (Mercurial Distributed SCM (version 4.4.1))
- Miniconda (conda 4.7.12) - Miniconda (conda 4.7.12)
- Mono (Mono JIT compiler version 6.8.0.105 (tarball Tue Feb 4 21:20:35 UTC 2020)) - 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) - n (6.3.1)
- Parcel (1.12.4) - Parcel (1.12.4)
- TypeScript (Version 3.8.3) - TypeScript (Version 3.8.3)
- Webpack (4.41.6) - Webpack (4.42.0)
- Webpack CLI (3.3.11) - 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) - PhantomJS (2.1.1)
- PHP 5.6 (PHP 5.6.40-24+ubuntu16.04.1+deb.sury.org+1 (cli) ) - 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 )) - 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.) - PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.)
- Pollinate - Pollinate
- psql (PostgreSQL) 9.5.19 - psql (PostgreSQL) 9.5.19
- Powershell (PowerShell 6.2.4) - Powershell (PowerShell 7.0.0)
- ruby (2.3.1p112) - ruby (2.3.1p112)
- gem (3.1.2) - gem (3.1.2)
- rustup (1.21.1) - rustup (1.21.1)
@@ -195,11 +193,13 @@ Local version: Unknown)
the the
0.53.1) 0.53.1)
- cbindgen (0.13.1) - cbindgen (0.13.1)
- Julia (julia version 1.3.1)
- sbt (1.3.8) - sbt (1.3.8)
- Selenium server standalone (available via SELENIUM_JAR_PATH environment variable) - Selenium server standalone (available via SELENIUM_JAR_PATH environment variable)
- Sphinx Open Source Search Server - Sphinx Open Source Search Server
- Subversion (svn, version 1.9.3 (r1718519)) - 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 - Vcpkg 2020.02.04-unknownhash
- Zeit Now CLI (17.0.4) - Zeit Now CLI (17.0.4)
- Google Repository 58 - Google Repository 58
@@ -227,6 +227,7 @@ the
- Android SDK Platform 15 - Android SDK Platform 15
- Android SDK Platform 10 - Android SDK Platform 10
- Android SDK Patch Applier v4 - 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.2
- Android SDK Build-Tools 29.0.0 - Android SDK Build-Tools 29.0.0
- Android SDK Build-Tools 28.0.3 - Android SDK Build-Tools 28.0.3

View File

@@ -1,16 +1,11 @@
# Ubuntu 18.04.4 LTS # 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 - 7-Zip 16.02
- Ansible (ansible 2.9.4) - Ansible (ansible 2.9.6)
- AzCopy (azcopy 7.3.0-netcore) - AzCopy (azcopy 7.3.0-netcore)
- Azure CLI (azure-cli 2.1.0) - Azure CLI (azure-cli 2.1.0)
- Azure CLI (azure-devops 0.17.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: - Basic CLI:
- curl - curl
- dnsutils - dnsutils
@@ -37,7 +32,7 @@ Build timestamp as int: 1582297007)
- wget - wget
- zip - zip
- zstd - 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 - build-essential
- Clang 6.0 (6.0.1) - Clang 6.0 (6.0.1)
- Clang 8 (8.0.1) - Clang 8 (8.0.1)
@@ -107,7 +102,7 @@ Build timestamp as int: 1582297007)
- 2.1.300 - 2.1.300
- Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4) - Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 10.6.4)
- Firefox (Mozilla Firefox 73.0.1) - 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++ 7.4.0
- GNU C++ 8.3.0 - GNU C++ 8.3.0
- GNU C++ 9.2.1 - 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.11 (go version go1.11.12 linux/amd64)
- Go 1.12 (go version go1.12.7 linux/amd64) - Go 1.12 (go version go1.12.7 linux/amd64)
- Go 1.13 (go version go1.13 linux/amd64) - Go 1.13 (go version go1.13 linux/amd64)
- Google Chrome (Google Chrome 80.0.3987.122 ) - Google Chrome (Google Chrome 80.0.3987.132 )
- Chromedriver (ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882})); Chrome Driver is available via CHROMEWEBDRIVER environment variable - 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 Cloud SDK (283.0.0)
- Haskell Cabal (cabal-install version 2.0.0.1 - Haskell Cabal (cabal-install version 2.0.0.1
compiled using version 2.0.1.1 of the Cabal library ) compiled using version 2.0.1.1 of the Cabal library )
- Haskell Cabal (cabal-install version 2.2.0.0 - 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.6.5)
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.1) - 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.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) - 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) - Heroku (heroku/7.39.0 linux-x64 node-v12.13.0)
- HHVM (HipHop VM 4.46.0 (rel)) - HHVM (HipHop VM 4.47.0 (rel))
- ImageMagick - ImageMagick
- Azul Zulu OpenJDK (7) (openjdk version "1.7.0_252") - Azul Zulu OpenJDK (7) (openjdk version "1.7.0_252")
- Azul Zulu OpenJDK (8) (openjdk version "1.8.0_242") - 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 (11) (openjdk version "11.0.6" 2020-01-14 LTS)
- Azul Zulu OpenJDK (12) (openjdk version "12.0.2" 2019-07-16) - 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) - 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)) - Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f))
- Kind (kind v0.7.0 go1.13.6 linux/amd64) - Kind (kind v0.7.0 go1.13.6 linux/amd64)
- kubectl (Client Version: v1.17.3) - kubectl (Client Version: v1.17.3)
- helm (Client: v2.16.3+g1ee0254) - helm (v3.1.1+gafe7058)
- Leiningen (Leiningen 2.9.2 on Java 1.8.0_242 OpenJDK 64-Bit Server VM) - Leiningen (Leiningen 2.9.1 on Java 1.8.0_242 OpenJDK 64-Bit Server VM)
- Mercurial (Mercurial Distributed SCM (version 4.5.3)) - Mercurial (Mercurial Distributed SCM (version 4.5.3))
- Miniconda (conda 4.7.12) - Miniconda (conda 4.7.12)
- Mono (Mono JIT compiler version 6.8.0.105 (tarball Tue Feb 4 21:20:20 UTC 2020)) - 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) - n (6.3.1)
- Parcel (1.12.4) - Parcel (1.12.4)
- TypeScript (Version 3.8.3) - TypeScript (Version 3.8.3)
- Webpack (4.41.6) - Webpack (4.42.0)
- Webpack CLI (3.3.11) - 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) - 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.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 )) - 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.) - PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.)
- Pollinate - Pollinate
- psql (PostgreSQL) 10.12 - psql (PostgreSQL) 10.12
- Powershell (PowerShell 6.2.4) - Powershell (PowerShell 7.0.0)
- ruby (2.5.1p57) - ruby (2.5.1p57)
- gem (3.1.2) - gem (3.1.2)
- rustup (1.21.1) - rustup (1.21.1)
@@ -191,11 +189,13 @@ Local version: Unknown)
the the
0.53.1) 0.53.1)
- cbindgen (0.13.1) - cbindgen (0.13.1)
- Julia (julia version 1.3.1)
- sbt (1.3.8) - sbt (1.3.8)
- Selenium server standalone (available via SELENIUM_JAR_PATH environment variable) - Selenium server standalone (available via SELENIUM_JAR_PATH environment variable)
- Sphinx Open Source Search Server - Sphinx Open Source Search Server
- Subversion (svn, version 1.9.7 (r1800392)) - 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 - Vcpkg 2020.02.04-unknownhash
- Zeit Now CLI (17.0.4) - Zeit Now CLI (17.0.4)
- Google Repository 58 - Google Repository 58
@@ -219,6 +219,7 @@ the
- Android SDK Platform 19 - Android SDK Platform 19
- Android SDK Platform 17 - Android SDK Platform 17
- Android SDK Patch Applier v4 - 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.2
- Android SDK Build-Tools 29.0.0 - Android SDK Build-Tools 29.0.0
- Android SDK Build-Tools 28.0.3 - Android SDK Build-Tools 28.0.3

View File

@@ -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-22" \
"add-ons;addon-google_apis-google-21" \ "add-ons;addon-google_apis-google-21" \
"cmake;3.6.4111459" \ "cmake;3.6.4111459" \
"cmake;3.10.2.4988404" \
"patcher;v4" "patcher;v4"
# Document what was added to the image # Document what was added to the image

View File

@@ -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-22" \
"add-ons;addon-google_apis-google-21" \ "add-ons;addon-google_apis-google-21" \
"cmake;3.6.4111459" \ "cmake;3.6.4111459" \
"cmake;3.10.2.4988404" \
"patcher;v4" "patcher;v4"
# Document what was added to the image # Document what was added to the image

View File

@@ -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

View File

@@ -35,3 +35,13 @@ echo "Lastly, document the installed versions"
DocumentInstalledItem "Git ($(git --version 2>&1 | cut -d ' ' -f 3))" DocumentInstalledItem "Git ($(git --version 2>&1 | cut -d ' ' -f 3))"
# git-lfs/2.6.1 (GitHub; linux amd64; go 1.11.1) # 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))" 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

View File

@@ -123,9 +123,12 @@
}, },
{ {
"type": "shell", "type": "shell",
"inline": [ "scripts": [
"echo ImageVersion={{user `image_version`}} | tee -a /etc/environment", "{{template_dir}}/scripts/installers/configure-environment.sh"
"echo ImageOS={{user `image_os`}} | tee -a /etc/environment" ],
"environment_vars": [
"IMAGE_VERSION={{user `image_version`}}",
"IMAGE_OS={{user `image_os`}}"
], ],
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
}, },

View File

@@ -126,9 +126,12 @@
}, },
{ {
"type": "shell", "type": "shell",
"inline": [ "scripts": [
"echo ImageVersion={{user `image_version`}} | tee -a /etc/environment", "{{template_dir}}/scripts/installers/configure-environment.sh"
"echo ImageOS={{user `image_os`}} | tee -a /etc/environment" ],
"environment_vars": [
"IMAGE_VERSION={{user `image_version`}}",
"IMAGE_OS={{user `image_os`}}"
], ],
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
}, },

View File

@@ -1,5 +1,5 @@
# macOS Catalina 10.15.3 (19D76) # 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 #### Xcode 11.3.1 set by default
## Operating System ## 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 - GNU Fortran (Homebrew GCC 9.2.0_3) 9.2.0
- Node.js v12.16.1 - Node.js v12.16.1
- NVM 0.33.11 - NVM 0.33.11
- NVM - Cached node versions: v6.17.1 v8.17.0 v10.19.0 v12.16.1 v13.9.0 - NVM - Cached node versions: v6.17.1 v8.17.0 v10.19.0 v12.16.1 v13.10.1
- PowerShell 6.2.4 - PowerShell 7.0.0
- Python 2.7.17 - Python 2.7.17
- Python 3.7.6 - Python 3.7.6
- Ruby 2.6.5p114 - 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 - .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 - Go 1.14
- PHP 7.4.3 - PHP 7.4.3
- julia 1.3.1
### Package Management ### Package Management
- Rustup 1.21.1 - Rustup 1.21.1
- Vcpkg 2020.02.04
- Bundler version 2.1.4 - Bundler version 2.1.4
- Carthage 0.34.0 - Carthage 0.34.0
- CocoaPods 1.9.0 - CocoaPods 1.9.0
- Homebrew 2.2.6 - Homebrew 2.2.9
- NPM 6.13.4 - NPM 6.13.4
- Yarn 1.22.0 - Yarn 1.22.1
- NuGet 5.4.0.6315 - NuGet 5.4.0.6315
- Pip 19.3.1 (python 2.7) - Pip 19.3.1 (python 2.7)
- Pip 19.3.1 (python 3.7) - Pip 19.3.1 (python 3.7)
- Miniconda 4.7.12 - Miniconda 4.7.12
- RubyGems 3.1.2 - RubyGems 3.1.2
- Vcpkg 2020.02.04
### Project Management ### Project Management
- Apache Maven 3.6.3 - Apache Maven 3.6.3
- Gradle 6.2.1 - Gradle 6.2.2
### Utilities ### Utilities
- Curl 7.68.0 - Curl 7.69.0
- Git: 2.25.0 - Git: 2.25.1
- Git LFS: 2.10.0 - Git LFS: 2.10.0
- GNU Wget 1.20.3 - GNU Wget 1.20.3
- Subversion (SVN) 1.13.0 - Subversion (SVN) 1.13.0
- Packer 1.5.4
- GNU parallel 20200222 - GNU parallel 20200222
- OpenSSL 1.0.2t 10 Sep 2019 - OpenSSL 1.0.2t 10 Sep 2019
- jq 1.6 - jq 1.6
@@ -63,18 +65,20 @@ The following software is installed on machines with the 20200224.1 update.
- aria2 1.35.0 - aria2 1.35.0
- azcopy 10.3.4 - azcopy 10.3.4
- zstd 1.4.4 - zstd 1.4.4
- bazel 2.2.0
- bazelisk v1.3.0
### Tools ### Tools
- Fastlane 2.142.0 - Fastlane 2.143.0
- Cmake 3.16.4 - Cmake 3.16.5
- App Center CLI 2.3.3 - App Center CLI 2.3.3
- Azure CLI 2.1.0 - Azure CLI 2.1.0
### Browsers ### Browsers
- Google Chrome 80.0.3987.122 - Google Chrome 80.0.3987.132
- ChromeDriver 80.0.3987.106 - ChromeDriver 80.0.3987.106
- Microsoft Edge 80.0.361.62 - Microsoft Edge 80.0.361.66
- MSEdgeDriver 80.0.361.62 - MSEdgeDriver 80.0.361.66
- Mozilla Firefox 73.0.1 - Mozilla Firefox 73.0.1
- geckodriver 0.26.0 - geckodriver 0.26.0
@@ -98,7 +102,7 @@ The following software is installed on machines with the 20200224.1 update.
### Xamarin ### Xamarin
#### Visual Studio for Mac #### Visual Studio for Mac
- 8.4.7.17 - 8.4.8.2
#### Mono #### Mono
- 6.6.0.166 - 6.6.0.166
@@ -126,7 +130,7 @@ The following software is installed on machines with the 20200224.1 update.
### Xcode ### Xcode
| Version | Build | Path | | 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.1 (default) | 11C505 | /Applications/Xcode_11.3.1.app |
| 11.3 | 11C29 | /Applications/Xcode_11.3.app | | 11.3 | 11C29 | /Applications/Xcode_11.3.app |
| 11.2.1 | 11B500 | /Applications/Xcode_11.2.1.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
#### Android SDK Tools #### Android SDK Tools
| Package Name | Description | | Package Name | Description |
| ---------------------------------- | ---------------------------------- | | ------------ | ---------------------------------- |
| tools | Android SDK Tools, Revision 26.1.1 | | tools | Android SDK Tools, Revision 26.1.1 |
#### Android SDK Platform-Tools #### Android SDK Platform-Tools
| Package Name | Description | | Package Name | Description |
@@ -257,4 +261,3 @@ The following software is installed on machines with the 20200224.1 update.
| Google Repository | 58 | | Google Repository | 58 |
| Intel x86 Emulator Accelerator (HAXM installer) | 7.5.1 | | Intel x86 Emulator Accelerator (HAXM installer) | 7.5.1 |

View File

@@ -28,7 +28,10 @@
"capture_name_prefix": "packer", "capture_name_prefix": "packer",
"image_version": "dev", "image_version": "dev",
"image_os": "win16", "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"], "sensitive-variables": ["install_password", "ssh_password", "client_secret", "github_feed_token"],
"builders": [ "builders": [
@@ -100,6 +103,12 @@
"{{ template_dir }}/scripts/Installers/Windows2016/Initialize-VM.ps1" "{{ template_dir }}/scripts/Installers/Windows2016/Initialize-VM.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1"
]
},
{ {
"type": "windows-restart", "type": "windows-restart",
"restart_timeout": "30m" "restart_timeout": "30m"
@@ -205,7 +214,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Install-Wix.ps1" "{{ template_dir }}/scripts/Installers/Install-Wix.ps1"
] ]
}, },
{ {
@@ -221,7 +230,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Install-WDK.ps1" "{{ template_dir }}/scripts/Installers/Install-WDK.ps1"
] ]
}, },
{ {
@@ -243,7 +252,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Validate-Wix.ps1" "{{ template_dir }}/scripts/Installers/Validate-Wix.ps1"
] ]
}, },
{ {
@@ -255,7 +264,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "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" "{{ template_dir }}/scripts/Installers/Validate-ServiceFabricSDK.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1"
]
},
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
@@ -324,7 +327,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Install-Python.ps1" "{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1"
] ]
}, },
{ {
@@ -342,8 +345,8 @@
{ {
"type": "powershell", "type": "powershell",
"environment_vars": [ "environment_vars": [
"GO_VERSIONS=1.9.7,1.10.8,1.11.12,1.12.7,1.13", "GO_VERSIONS={{user `go_versions`}}",
"GO_DEFAULT=1.12.7" "GO_DEFAULT={{user `go_default`}}"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Install-Go.ps1" "{{ template_dir }}/scripts/Installers/Install-Go.ps1"
@@ -355,12 +358,6 @@
"{{ template_dir }}/scripts/Installers/Install-PHP.ps1" "{{ template_dir }}/scripts/Installers/Install-PHP.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Install-Ruby.ps1"
]
},
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
@@ -520,8 +517,8 @@
{ {
"type": "powershell", "type": "powershell",
"environment_vars": [ "environment_vars": [
"BOOST_VERSIONS=1.69.0,1.72.0", "ROOT_FOLDER={{user `root_folder`}}",
"BOOST_DEFAULT=1.69.0" "BOOST_DEFAULT={{user `boost_default`}}"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Install-Boost.ps1" "{{ template_dir }}/scripts/Installers/Install-Boost.ps1"
@@ -557,12 +554,6 @@
"{{ template_dir }}/scripts/Installers/Install-GitVersion.ps1" "{{ template_dir }}/scripts/Installers/Install-GitVersion.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1"
]
},
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
@@ -633,7 +624,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Python.ps1" "{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1"
] ]
}, },
{ {
@@ -651,8 +642,8 @@
{ {
"type": "powershell", "type": "powershell",
"environment_vars": [ "environment_vars": [
"GO_VERSIONS=1.9.7,1.10.8,1.11.12,1.12.7,1.13", "GO_VERSIONS={{user `go_versions`}}",
"GO_DEFAULT=1.12.7" "GO_DEFAULT={{ user `go_default`}}"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Go.ps1" "{{ template_dir }}/scripts/Installers/Validate-Go.ps1"
@@ -661,8 +652,8 @@
{ {
"type": "powershell", "type": "powershell",
"environment_vars": [ "environment_vars": [
"BOOST_VERSIONS=1.69.0,1.72.0", "ROOT_FOLDER={{user `root_folder`}}",
"BOOST_DEFAULT=1.69.0" "BOOST_DEFAULT={{user `boost_default`}}"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Boost.ps1" "{{ template_dir }}/scripts/Installers/Validate-Boost.ps1"
@@ -674,12 +665,6 @@
"{{ template_dir }}/scripts/Installers/Validate-PHP.ps1" "{{ template_dir }}/scripts/Installers/Validate-PHP.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Ruby.ps1"
]
},
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
@@ -842,12 +827,6 @@
"{{ template_dir }}/scripts/Installers/Validate-GitVersion.ps1" "{{ template_dir }}/scripts/Installers/Validate-GitVersion.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1"
]
},
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[

View File

@@ -1,6 +1,6 @@
# Windows Server 2016 # 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. Components marked with **\*** have been upgraded since the previous version of the image.
@@ -25,7 +25,7 @@ _Environment:_
## Powershell Core ## Powershell Core
_Version:_ 6.2.4 _Version:_ 7.0.0
<br/> <br/>
## Docker images ## Docker images
@@ -159,8 +159,8 @@ _Version:_ 10.0.17763.0<br/>
_Version:_ 10.0.17763.0<br/> _Version:_ 10.0.17763.0<br/>
## Azure Service Fabric ## Azure Service Fabric
_SDK Version:_ 4.0.466.9590<br/> _SDK Version:_ 4.0.470.9590<br/>
_Runtime Version:_ 7.0.470.9590 _Runtime Version:_ 7.0.470.9590
## WinAppDriver ## WinAppDriver
@@ -168,6 +168,10 @@ _Version:_ 1.1.1809.18001<br/>
_Version:_ 1.1.1809.18001<br/> _Version:_ 1.1.1809.18001<br/>
## Android SDK Build Tools ## Android SDK Build Tools
#### 29.0.3
_Location:_ C:\Program Files (x86)\Android\android-sdk\build-tools\29.0.3
#### 29.0.2 #### 29.0.2
@@ -441,6 +445,10 @@ _Environment:_
#### Python 2.7.17 #### Python 2.7.17
_Location:_ C:/hostedtoolcache/windows/Python/2.7*/x64 _Location:_ C:/hostedtoolcache/windows/Python/2.7*/x64
## Perl
_Version:_ v5.30.1<br/>
## Git ## Git
@@ -521,6 +529,10 @@ _Location:_ C:\Rust\.cargo\bin
_Location:_ C:\Rust\.cargo\bin _Location:_ C:\Rust\.cargo\bin
_Environment:_ _Environment:_
* PATH: contains the location of rustc.exe * PATH: contains the location of rustc.exe
## Julia (x64)
_Version:_ 1.3.1<br/>
## sbt ## sbt
@@ -534,12 +546,12 @@ _Environment:_
## Google Chrome ## Google Chrome
_version:_ _version:_
80.0.3987.132 80.0.3987.132
## Microsoft Edge ## Microsoft Edge
_version:_ _version:_
80.0.361.66 80.0.361.66
## Mozilla Firefox ## Mozilla Firefox
@@ -552,7 +564,7 @@ _version:_
#### Chrome Driver #### Chrome Driver
_version:_ _version:_
80.0.3987.106 80.0.3987.106
_Environment:_ _Environment:_
@@ -560,7 +572,7 @@ _Environment:_
#### Gecko Driver #### Gecko Driver
_version:_ _version:_
0.26.0 0.26.0
_Environment:_ _Environment:_
@@ -568,7 +580,7 @@ _Environment:_
#### IE Driver #### IE Driver
_version:_ _version:_
3.8.0.0 3.8.0.0
_Environment:_ _Environment:_
@@ -576,7 +588,7 @@ _Environment:_
#### Microsoft Edge Driver #### Microsoft Edge Driver
_version:_ _version:_
80.0.361.66 80.0.361.66
_Environment:_ _Environment:_
@@ -590,7 +602,7 @@ _Environment:_
_Environment:_ _Environment:_
* PATH: contains location of node.exe<br/> * PATH: contains location of node.exe<br/>
* Gulp CLI version: 2.2.0 Local version: Unknown<br/> * Gulp CLI version: 2.2.0 Local version: Unknown<br/>
* Grunt grunt-cli v1.3.2<br/> * Grunt grunt-cli v1.3.2<br/>
* Yarn 1.22.1<br/> * Yarn 1.22.1<br/>
@@ -599,6 +611,14 @@ _Version:_ 6.13.4<br/>
_Version:_ 6.13.4<br/> _Version:_ 6.13.4<br/>
_Environment:_ _Environment:_
* PATH: contains location of npm.cmd * PATH: contains location of npm.cmd
## bazel
_Version:_ bazel 2.1.0<br/>
## bazelisk
_Version:_ 1.3.0<br/>
## Java Development Kit ## Java Development Kit
@@ -632,13 +652,13 @@ _Environment:_
* M2_HOME: Maven installation root * M2_HOME: Maven installation root
## Gradle ## Gradle
_Version:_ 6.2.2<br/> _Version:_ 6.2.2<br/>
_Environment:_ _Environment:_
* PATH: contains location of gradle * PATH: contains location of gradle
## Cmake ## Cmake
_Version:_ 3.16.5<br/> _Version:_ 3.16.5<br/>
_Environment:_ _Environment:_
* PATH: contains location of cmake.exe * PATH: contains location of cmake.exe
@@ -657,10 +677,6 @@ _Environment:_
_SDK:_ _SDK:_
* 3.1.101 C:\Program Files\dotnet\sdk\3.1.101 * 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.1.100 C:\Program Files\dotnet\sdk\3.1.100 * 3.1.100 C:\Program Files\dotnet\sdk\3.1.100
* 2.2.402 C:\Program Files\dotnet\sdk\2.2.402 * 2.2.402 C:\Program Files\dotnet\sdk\2.2.402
* 2.2.401 C:\Program Files\dotnet\sdk\2.2.401 * 2.2.401 C:\Program Files\dotnet\sdk\2.2.401
@@ -720,10 +736,6 @@ _SDK:_
_Runtime:_ _Runtime:_
* 3.1.1 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.1 * 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.1.0 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.0 * 3.1.0 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.0
* 2.2.8 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.2.8 * 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.7 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.2.7
@@ -793,9 +805,13 @@ _Location:_ C:\Program Files\Azure Cosmos DB Emulator\
## 7zip ## 7zip
_Version:_ 19.00<br/> _Version:_ 19.00<br/>
## Packer
_Version:_ 1.5.4<br/>
## Mercurial ## Mercurial
_Version:_ 5.0<br/> _Version:_ 5.0<br/>
## jq ## jq
@@ -803,27 +819,23 @@ _Version:_ jq-1.6<br/>
_Version:_ jq-1.6<br/> _Version:_ jq-1.6<br/>
## zstd ## zstd
_Version:_ 1.4.0<br/> _Version:_ 1.4.0<br/>
## Inno Setup ## Inno Setup
_Version:_ 6.0.3<br/> _Version:_ 6.0.3<br/>
## Perl
_Version:_ v5.26.2<br/>
## GitVersion ## GitVersion
_Version:_ 5.2.0.0<br/> _Version:_ 5.2.0.0<br/>
## OpenSSL ## OpenSSL
_Version:_ 1.1.1c at C:\Strawberry\c\bin\openssl.exe<br/>_Version:_ 1.1.1d at C:\Program Files\Git\mingw64\bin\openssl.exe<br/>_Version:_ 1.1.1d at C:\Program Files\Git\usr\bin\openssl.exe<br/>_Version:_ 1.0.2j at C:\Program Files (x86)\Subversion\bin\openssl.exe<br/>_Version:_ 1.1.1 at C:\Program Files\OpenSSL\bin\openssl.exe<br/> _Version:_ 1.1.1c at C:\Strawberry\c\bin\openssl.exe<br/>_Version:_ 1.1.1d at C:\Program Files\Git\mingw64\bin\openssl.exe<br/>_Version:_ 1.1.1d at C:\Program Files\Git\usr\bin\openssl.exe<br/>_Version:_ 1.0.2j at C:\Program Files (x86)\Subversion\bin\openssl.exe<br/>_Version:_ 1.1.1 at C:\Program Files\OpenSSL\bin\openssl.exe<br/>
## Cloud Foundry CLI ## Cloud Foundry CLI
_Version:_ 6.50.0<br/> _Version:_ 6.50.0<br/>
## Vcpkg ## Vcpkg
@@ -843,7 +855,3 @@ _Environment:_
_Version:_ kind v0.7.0 go1.13.6 windows/amd64<br/> _Version:_ kind v0.7.0 go1.13.6 windows/amd64<br/>
_Environment:_ _Environment:_
* PATH: contains location of kind.exe
## bazel

View File

@@ -28,7 +28,10 @@
"capture_name_prefix": "packer", "capture_name_prefix": "packer",
"image_version": "dev", "image_version": "dev",
"image_os": "win19", "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"], "sensitive-variables": ["install_password", "ssh_password", "client_secret", "github_feed_token"],
"builders": [ "builders": [
@@ -100,6 +103,12 @@
"{{ template_dir }}/scripts/Installers/Windows2019/Initialize-VM.ps1" "{{ template_dir }}/scripts/Installers/Windows2019/Initialize-VM.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1"
]
},
{ {
"type": "windows-restart", "type": "windows-restart",
"restart_timeout": "10m" "restart_timeout": "10m"
@@ -180,13 +189,13 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2019/Install-Wix.ps1" "{{ template_dir }}/scripts/Installers/Install-Wix.ps1"
] ]
}, },
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2019/Install-AnalysisExtenstion.ps1" "{{ template_dir }}/scripts/Installers/Windows2019/Install-SSDTExtensions.ps1"
] ]
}, },
{ {
@@ -202,7 +211,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts": [ "scripts": [
"{{ template_dir }}/scripts/Installers/Windows2019/Install-WDK.ps1" "{{ template_dir }}/scripts/Installers/Install-WDK.ps1"
] ]
}, },
{ {
@@ -218,13 +227,13 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2019/Validate-Wix.ps1" "{{ template_dir }}/scripts/Installers/Validate-Wix.ps1"
] ]
}, },
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2019/Validate-AnalysisExtenstion.ps1" "{{ template_dir }}/scripts/Installers/Windows2019/Validate-SSDTExtensions.ps1"
] ]
}, },
{ {
@@ -236,7 +245,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "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" "{{ template_dir }}/scripts/Installers/Validate-ServiceFabricSDK.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1"
]
},
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
@@ -299,7 +302,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2019/Install-Python.ps1" "{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1"
] ]
}, },
{ {
@@ -317,8 +320,8 @@
{ {
"type": "powershell", "type": "powershell",
"environment_vars": [ "environment_vars": [
"GO_VERSIONS=1.10.8,1.11.12,1.12.7,1.13", "GO_VERSIONS={{user `go_versions`}}",
"GO_DEFAULT=1.12.7" "GO_DEFAULT={{user `go_default`}}"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Install-Go.ps1" "{{ template_dir }}/scripts/Installers/Install-Go.ps1"
@@ -330,12 +333,6 @@
"{{ template_dir }}/scripts/Installers/Install-PHP.ps1" "{{ template_dir }}/scripts/Installers/Install-PHP.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Install-Ruby.ps1"
]
},
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
@@ -501,8 +498,8 @@
{ {
"type": "powershell", "type": "powershell",
"environment_vars": [ "environment_vars": [
"BOOST_VERSIONS=1.69.0,1.72.0", "ROOT_FOLDER={{user `root_folder`}}",
"BOOST_DEFAULT=1.72.0" "BOOST_DEFAULT={{user `boost_default`}}"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Install-Boost.ps1" "{{ template_dir }}/scripts/Installers/Install-Boost.ps1"
@@ -538,12 +535,6 @@
"{{ template_dir }}/scripts/Installers/Install-GitVersion.ps1" "{{ template_dir }}/scripts/Installers/Install-GitVersion.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1"
]
},
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
@@ -620,7 +611,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Python.ps1" "{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1"
] ]
}, },
{ {
@@ -638,8 +629,8 @@
{ {
"type": "powershell", "type": "powershell",
"environment_vars": [ "environment_vars": [
"GO_VERSIONS=1.10.8,1.11.12,1.12.7,1.13", "GO_VERSIONS={{user `go_versions`}}",
"GO_DEFAULT=1.12.7" "GO_DEFAULT={{user `go_default`}}"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Go.ps1" "{{ template_dir }}/scripts/Installers/Validate-Go.ps1"
@@ -648,8 +639,8 @@
{ {
"type": "powershell", "type": "powershell",
"environment_vars": [ "environment_vars": [
"BOOST_VERSIONS=1.69.0,1.72.0", "ROOT_FOLDER={{user `root_folder`}}",
"BOOST_DEFAULT=1.72.0" "BOOST_DEFAULT={{user `boost_default`}}"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Boost.ps1" "{{ template_dir }}/scripts/Installers/Validate-Boost.ps1"
@@ -661,12 +652,6 @@
"{{ template_dir }}/scripts/Installers/Validate-PHP.ps1" "{{ template_dir }}/scripts/Installers/Validate-PHP.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Ruby.ps1"
]
},
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
@@ -823,12 +808,6 @@
"{{ template_dir }}/scripts/Installers/Validate-GitVersion.ps1" "{{ template_dir }}/scripts/Installers/Validate-GitVersion.ps1"
] ]
}, },
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-OpenSSL.ps1"
]
},
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[

View File

@@ -1,6 +1,6 @@
# Windows Server 2019 # 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. Components marked with **\*** have been upgraded since the previous version of the image.
@@ -25,7 +25,7 @@ _Environment:_
## Powershell Core ## Powershell Core
_Version:_ 6.2.4 _Version:_ 7.0.0
<br/> <br/>
## Docker images ## Docker images
@@ -93,6 +93,15 @@ The following workloads and components are installed with Visual Studio 2019:
* Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest * Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest
* Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest * Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest
* Microsoft.VisualStudio.Component.VC.v141 * 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.VC.v141.MFC.Spectre
* Microsoft.VisualStudio.Component.Windows10SDK.16299 * Microsoft.VisualStudio.Component.Windows10SDK.16299
* Microsoft.VisualStudio.Component.Windows10SDK.17134 * Microsoft.VisualStudio.Component.Windows10SDK.17134
@@ -127,6 +136,10 @@ _WIX Toolset Visual Studio Extension Version:_ 1.0.0.4<br/>
_WIX Toolset Visual Studio Extension Version:_ 1.0.0.4<br/> _WIX Toolset Visual Studio Extension Version:_ 1.0.0.4<br/>
_Environment:_ _Environment:_
* WIX: Installation root of WIX * WIX: Installation root of WIX
## Microsoft Analysis Services Projects Visual Studio Extension
_Version:_ 2.9.5<br/>
## .NET 4.8 ## .NET 4.8
@@ -139,8 +152,8 @@ _WDK Visual Studio Extension Version:_ 10.0.18346.0<br/>
_WDK Visual Studio Extension Version:_ 10.0.18346.0<br/> _WDK Visual Studio Extension Version:_ 10.0.18346.0<br/>
## Azure Service Fabric ## Azure Service Fabric
_SDK Version:_ 4.0.466.9590<br/> _SDK Version:_ 4.0.470.9590<br/>
_Runtime Version:_ 7.0.470.9590 _Runtime Version:_ 7.0.470.9590
## WinAppDriver ## WinAppDriver
@@ -148,6 +161,10 @@ _Version:_ 1.1.1809.18001<br/>
_Version:_ 1.1.1809.18001<br/> _Version:_ 1.1.1809.18001<br/>
## Android SDK Build Tools ## Android SDK Build Tools
#### 29.0.3
_Location:_ C:\Program Files (x86)\Android\android-sdk\build-tools\29.0.3
#### 29.0.2 #### 29.0.2
@@ -421,6 +438,10 @@ _Environment:_
#### Python 2.7.17 #### Python 2.7.17
_Location:_ C:/hostedtoolcache/windows/Python/2.7*/x64 _Location:_ C:/hostedtoolcache/windows/Python/2.7*/x64
## Perl
_Version:_ v5.30.1<br/>
## Git ## Git
@@ -436,16 +457,6 @@ _Environment:_
* GIT_LFS_PATH: location of git-lfs.exe * GIT_LFS_PATH: location of git-lfs.exe
## Go (x64) ## 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 #### 1.12.7
@@ -496,6 +507,10 @@ _Location:_ C:\Rust\.cargo\bin
_Location:_ C:\Rust\.cargo\bin _Location:_ C:\Rust\.cargo\bin
_Environment:_ _Environment:_
* PATH: contains the location of rustc.exe * PATH: contains the location of rustc.exe
## Julia (x64)
_Version:_ 1.3.1<br/>
## Subversion ## Subversion
@@ -509,12 +524,12 @@ _Environment:_
## Google Chrome ## Google Chrome
_version:_ _version:_
80.0.3987.132 80.0.3987.132
## Microsoft Edge ## Microsoft Edge
_version:_ _version:_
80.0.361.66 80.0.361.66
## Mozilla Firefox ## Mozilla Firefox
@@ -527,7 +542,7 @@ _version:_
#### Chrome Driver #### Chrome Driver
_version:_ _version:_
80.0.3987.106 80.0.3987.106
_Environment:_ _Environment:_
@@ -535,7 +550,7 @@ _Environment:_
#### Gecko Driver #### Gecko Driver
_version:_ _version:_
0.26.0 0.26.0
_Environment:_ _Environment:_
@@ -543,7 +558,7 @@ _Environment:_
#### IE Driver #### IE Driver
_version:_ _version:_
3.8.0.0 3.8.0.0
_Environment:_ _Environment:_
@@ -551,7 +566,7 @@ _Environment:_
#### Microsoft Edge Driver #### Microsoft Edge Driver
_version:_ _version:_
80.0.361.66 80.0.361.66
_Environment:_ _Environment:_
@@ -565,7 +580,7 @@ _Environment:_
_Environment:_ _Environment:_
* PATH: contains location of node.exe<br/> * PATH: contains location of node.exe<br/>
* Gulp CLI version: 2.2.0 Local version: Unknown<br/> * Gulp CLI version: 2.2.0 Local version: Unknown<br/>
* Grunt grunt-cli v1.3.2<br/> * Grunt grunt-cli v1.3.2<br/>
* Yarn 1.22.1<br/> * Yarn 1.22.1<br/>
@@ -607,13 +622,13 @@ _Environment:_
* M2_HOME: Maven installation root * M2_HOME: Maven installation root
## Gradle ## Gradle
_Version:_ 6.2.2<br/> _Version:_ 6.2.2<br/>
_Environment:_ _Environment:_
* PATH: contains location of gradle * PATH: contains location of gradle
## Cmake ## Cmake
_Version:_ 3.16.5<br/> _Version:_ 3.16.5<br/>
_Environment:_ _Environment:_
* PATH: contains location of cmake.exe * PATH: contains location of cmake.exe
@@ -632,10 +647,6 @@ _Environment:_
_SDK:_ _SDK:_
* 3.1.101 C:\Program Files\dotnet\sdk\3.1.101 * 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.1.100 C:\Program Files\dotnet\sdk\3.1.100 * 3.1.100 C:\Program Files\dotnet\sdk\3.1.100
* 2.2.402 C:\Program Files\dotnet\sdk\2.2.402 * 2.2.402 C:\Program Files\dotnet\sdk\2.2.402
* 2.2.401 C:\Program Files\dotnet\sdk\2.2.401 * 2.2.401 C:\Program Files\dotnet\sdk\2.2.401
@@ -693,10 +704,6 @@ _SDK:_
_Runtime:_ _Runtime:_
* 3.1.1 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.1 * 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.1.0 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.0 * 3.1.0 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.0
* 2.2.8 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.2.8 * 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.7 C:\Program Files\dotnet\shared\Microsoft.NETCore.App\2.2.7
@@ -763,33 +770,37 @@ _Location:_ C:\Program Files\Azure Cosmos DB Emulator\
## 7zip ## 7zip
_Version:_ 19.00<br/> _Version:_ 19.00<br/>
## Packer
_Version:_ 1.5.4<br/>
## Mercurial ## Mercurial
_Version:_ 5.0<br/> _Version:_ 5.0<br/>
## jq ## jq
_Version:_ jq-1.6<br/> _Version:_ jq-1.6<br/>
## zstd
_Version:_ 1.4.0<br/>
## Inno Setup ## Inno Setup
_Version:_ 6.0.3<br/> _Version:_ 6.0.3<br/>
## Perl
_Version:_ v5.26.2<br/>
## GitVersion ## GitVersion
_Version:_ 5.2.0.0<br/> _Version:_ 5.2.0.0<br/>
## OpenSSL ## OpenSSL
_Version:_ 1.1.1c at C:\Strawberry\c\bin\openssl.exe<br/>_Version:_ 1.1.1d at C:\Program Files\Git\mingw64\bin\openssl.exe<br/>_Version:_ 1.1.1d at C:\Program Files\Git\usr\bin\openssl.exe<br/>_Version:_ 1.0.2j at C:\Program Files (x86)\Subversion\bin\openssl.exe<br/>_Version:_ 1.1.1 at C:\Program Files\OpenSSL\bin\openssl.exe<br/> _Version:_ 1.1.1c at C:\Strawberry\c\bin\openssl.exe<br/>_Version:_ 1.1.1d at C:\Program Files\Git\mingw64\bin\openssl.exe<br/>_Version:_ 1.1.1d at C:\Program Files\Git\usr\bin\openssl.exe<br/>_Version:_ 1.0.2j at C:\Program Files (x86)\Subversion\bin\openssl.exe<br/>_Version:_ 1.1.1 at C:\Program Files\OpenSSL\bin\openssl.exe<br/>
## Cloud Foundry CLI ## Cloud Foundry CLI
_Version:_ 6.50.0<br/> _Version:_ 6.50.0<br/>
## Vcpkg ## Vcpkg
@@ -800,7 +811,7 @@ _Environment:_
* VCPKG_INSTALLATION_ROOT: root directory of the vcpkg installation * VCPKG_INSTALLATION_ROOT: root directory of the vcpkg installation
## VSWhere ## VSWhere
_Version_: 2.8.4+ff0de50053 - shim 0.8.1<br/> _Version_: 2.8.4+ff0de50053 - shim 0.8.1<br/>
* PATH: contains location of vswhere.exe * PATH: contains location of vswhere.exe
@@ -818,3 +829,7 @@ _Environment:_
## bazel ## bazel
_Version:_ bazel 2.1.0<br/>
## bazelisk

View File

@@ -14,9 +14,15 @@ Export-ModuleMember -Function @(
'Set-SystemVariable' 'Set-SystemVariable'
'Install-MSI' 'Install-MSI'
'Install-EXE' 'Install-EXE'
'Get-ToolcachePackages'
'Get-ToolsByName'
'Add-ContentToMarkdown' 'Add-ContentToMarkdown'
'Add-SoftwareDetailsToMarkdown' 'Add-SoftwareDetailsToMarkdown'
'Stop-SvcWithErrHandling' 'Stop-SvcWithErrHandling'
'Set-SvcWithErrHandling' 'Set-SvcWithErrHandling'
'Get-VS19ExtensionVersion' 'Install-VsixExtension'
'Get-VSExtensionVersion'
'Get-WinVersion'
'Test-IsWin19'
'Test-IsWin16'
) )

View File

@@ -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 ( param (
[string] [Parameter(Mandatory=$true)] $packageName [string] [Parameter(Mandatory=$true)] $packageName
@@ -187,3 +274,41 @@ function Get-VS19ExtensionVersion
return $packageVersion 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"
}

View File

@@ -44,6 +44,39 @@ Function NPMFeed-AuthSetup {
$npmrcContent | Out-File -FilePath "$($env:TEMP)/.npmrc" -Encoding utf8 $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" $FeedPrefix = "https://npm.pkg.github.com"
$AccessToken = $env:GITHUB_FEED_TOKEN $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 Set-DefaultPythonVersion -Version "3.7"
Write-Host "Create symlink to Python2" Set-DefaultRubyVersion -Version "2.5"
$python2Dir = (Get-Item -Path ($ToolsDirectory + '/Python/2.7*/x64')).FullName
cmd.exe /c mklink /d "C:\Python27amd64" "$python2Dir"

View File

@@ -4,8 +4,11 @@
## Desc: Install boost using tool cache ## Desc: Install boost using tool cache
################################################################################ ################################################################################
$BoostDirectory = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath "Boost" Import-Module -Name ImageHelpers
$BoostVersions = $env:BOOST_VERSIONS.split(',')
$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 $BoostDefault = $env:BOOST_DEFAULT
foreach($BoostVersion in $BoostVersions) foreach($BoostVersion in $BoostVersions)
@@ -20,7 +23,5 @@ foreach($BoostVersion in $BoostVersions)
Write-Host "Adding Boost $BoostVersion to the path..." Write-Host "Adding Boost $BoostVersion to the path..."
# Add the Boost binaries to the path # Add the Boost binaries to the path
Add-MachinePathItem $BoostInstallationDir | Out-Null Add-MachinePathItem $BoostInstallationDir | Out-Null
# Set the BOOSTROOT environment variable
setx BOOST_ROOT $BoostInstallationDir /M | Out-Null
} }
} }

View File

@@ -8,6 +8,7 @@ Import-Module -Name ImageHelpers
# Install the latest version of Git which is bundled with Git LFS. # Install the latest version of Git which is bundled with Git LFS.
# See https://chocolatey.org/packages/git # See https://chocolatey.org/packages/git
choco install git -y --package-parameters="/GitAndUnixToolsOnPath /WindowsTerminal /NoShellIntegration" choco install git -y --package-parameters="/GitAndUnixToolsOnPath /WindowsTerminal /NoShellIntegration"
choco install hub
# Disable GCM machine-wide # Disable GCM machine-wide
[Environment]::SetEnvironmentVariable("GCM_INTERACTIVE", "Never", [System.EnvironmentVariableTarget]::Machine) [Environment]::SetEnvironmentVariable("GCM_INTERACTIVE", "Never", [System.EnvironmentVariableTarget]::Machine)

View File

@@ -5,6 +5,7 @@
Import-Module -Name ImageHelpers -Force Import-Module -Name ImageHelpers -Force
$refsJson = Invoke-RestMethod "https://api.github.com/repos/golang/go/git/refs/tags"
function Install-GoVersion function Install-GoVersion
{ {
Param Param
@@ -13,17 +14,20 @@ function Install-GoVersion
[Switch]$addToDefaultPath [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. # Download the Go zip archive.
Write-Host "Downloading Go $goVersion..." Write-Host "Downloading Go $latestVersion..."
$ProgressPreference = 'SilentlyContinue' $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". # Extract the zip archive. It contains a single directory named "go".
Write-Host "Extracting Go $goVersion..." Write-Host "Extracting Go $latestVersion..."
Expand-Archive -Path go$goVersion.windows-amd64.zip -DestinationPath "C:\" -Force Expand-Archive -Path go$latestVersion.windows-amd64.zip -DestinationPath "C:\" -Force
# Delete unnecessary files to conserve space # 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") if (Test-Path "C:\go\doc")
{ {
Remove-Item -Recurse -Force "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). # 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 Rename-Item -path "C:\go" -newName $newDirName
# Delete the Go zip archive. # Delete the Go zip archive.
Write-Host "Deleting downloaded archive of Go $goVersion..." Write-Host "Deleting downloaded archive of Go $latestVersion..."
Remove-Item go$goVersion.windows-a`md64.zip Remove-Item go$latestVersion.windows-amd64.zip
# Make this the default version of Go? # Make this the default version of Go?
if ($addToDefaultPath) 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 the Go binaries to the path.
Add-MachinePathItem "C:\$newDirName\bin" | Out-Null Add-MachinePathItem "C:\$newDirName\bin" | Out-Null
# Set the GOROOT environment variable. # Set the GOROOT environment variable.
@@ -52,12 +56,12 @@ function Install-GoVersion
} }
# Done # Done
Write-Host "Done installing Go $goVersion." Write-Host "Done installing Go $latestVersion."
return "C:\$newDirName" return "C:\$newDirName"
} }
# Install Go # Install Go
$goVersionsToInstall = $env:GO_VERSIONS.split(",") $goVersionsToInstall = $env:GO_VERSIONS.split(", ", [System.StringSplitOptions]::RemoveEmptyEntries)
foreach($go in $goVersionsToInstall) { foreach($go in $goVersionsToInstall) {
Write-Host "Installing Go ${go}" Write-Host "Installing Go ${go}"
@@ -66,6 +70,6 @@ foreach($go in $goVersionsToInstall) {
} else { } else {
$installDirectory = Install-GoVersion -goVersion $go $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 setx $envName "$installDirectory" /M
} }

View File

@@ -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

View File

@@ -4,8 +4,24 @@
################################################################################ ################################################################################
# Requires Windows SDK with the same version number as the WDK # 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 # `winsdksetup.exe /features + /quiet` installs all features without showing the GUI
$sdkExitCode = Install-EXE -Url $winSdkUrl -Name "winsdksetup.exe" -ArgumentList ("/features", "+", "/quiet") $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 # Need to install the VSIX to get the build targets when running VSBuild
# Write-Host "Installing WDK.vsix" Install-VsixExtension -FilePath $FilePath -Name "WDK.vsix" -VSversion $VSver -InstallOnly
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

View File

@@ -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

View File

@@ -110,6 +110,7 @@ Push-Location -Path $sdk.FullName
"add-ons;addon-google_apis-google-22" ` "add-ons;addon-google_apis-google-22" `
"add-ons;addon-google_apis-google-21" ` "add-ons;addon-google_apis-google-21" `
"cmake;3.6.4111459" ` "cmake;3.6.4111459" `
"cmake;3.10.2.4988404" `
"patcher;v4" "patcher;v4"
Pop-Location Pop-Location

View File

@@ -41,4 +41,4 @@ $Description = @"
_Version:_ $bazelisk_version<br/> _Version:_ $bazelisk_version<br/>
"@ "@
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description

View File

@@ -3,6 +3,8 @@
## Desc: Validate Boost ## Desc: Validate Boost
################################################################################ ################################################################################
Import-Module -Name ImageHelpers
function Validate-BoostVersion function Validate-BoostVersion
{ {
Param Param
@@ -49,36 +51,31 @@ $tmplMarkRoot = @"
_Environment:_ _Environment:_
* PATH: contains the location of Boost version {0} * 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 * {1}: root directory of the Boost version {0} installation
"@ "@
$SoftwareName = 'Boost'
$Description = New-Object System.Text.StringBuilder $Description = New-Object System.Text.StringBuilder
$BoostRootDirectory = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath "Boost" $SoftwareName = 'Boost'
$BoostVersionsToInstall = $env:BOOST_VERSIONS.split(",") $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 $BoostToolsetName = $BoostTool.Architecture
$BoostVersionTag = "BOOST_ROOT_{0}" -f $BoostVersion.Replace('.', '_') $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") if($BoostVersion -eq $env:BOOST_DEFAULT)
{ {
$BoostToolsetName = "msvc-14.2" $null = $Description.AppendLine(($tmplMarkRoot -f $BoostVersion, $BoostVersionTag, $BoostToolsetName))
} }
else else
{ {
$BoostToolsetName = "msvc-14.1" $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))
} }
} }

View File

@@ -2,48 +2,61 @@
## File: Validate-Git.ps1 ## File: Validate-Git.ps1
## Desc: Validate Git for Windows ## Desc: Validate Git for Windows
################################################################################ ################################################################################
function Test-CommandName {
if((Get-Command -Name 'git') -and (Get-Command -Name 'bash') -and (Get-Command -Name 'awk') -and (Get-Command -Name 'git-lfs')) param(
{ [parameter(Mandatory)][string] $CommandName
Write-Host "$(git version) on path" )
Write-Host "$(git-lfs version) on path" Write-Host "Checking the [$CommandName]"
if(-not (Get-Command $CommandName -ErrorAction "Continue")) {
Write-Host "[!] $CommandName is not found"
exit 1
}
} }
else function Test-Command {
{ param(
Write-Host "git or git-lfs are not on path." [parameter(Mandatory)][string] $CommandName,
exit 1 [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 (?<version>.*).win.*' ) $GitDescription = @"
{ _Version:_ {0}<br/>
$gitVersion = $Matches.version
}
if( $(git-lfs version) -match 'git-lfs\/(?<version>.*) \(Git.*' )
{
$gitLfsVersion = $Matches.version
}
# Adding description of the software to Markdown
$SoftwareName = "Git"
$Description = @"
_Version:_ $gitVersion<br/>
_Environment:_ _Environment:_
* PATH: contains location of git.exe * PATH: contains location of git.exe
"@ "@
Test-Command -CommandName 'git' -CommandDescription 'Git' -VersionCmd "git version" -regexVersion 'git version (?<version>.*).win.*' -DescriptionMarkdown $GitDescription
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description $GitLfsDescription = @"
_Version:_ {0}<br/>
# Adding description of the software to Markdown
$SoftwareName = "Git Large File Storage (LFS)"
$Description = @"
_Version:_ $gitLfsVersion<br/>
_Environment:_ _Environment:_
* PATH: contains location of git-lfs.exe * PATH: contains location of git-lfs.exe
* GIT_LFS_PATH: 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\/(?<version>.*) \(Git.*' -DescriptionMarkdown $GitLfsDescription
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description $HubCliDescription = @"
_Version:_ {0}<br/>
_Environment:_
* PATH: contains location of hub.exe
"@
Test-Command -CommandName 'hub' -CommandDescription 'Hub CLI' -VersionCmd "hub version | Select-String 'hub version'" -regexVersion 'hub version (?<version>.*)' -DescriptionMarkdown $HubCliDescription

View File

@@ -8,18 +8,31 @@ function Get-GoVersion
{ {
Param 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 $env:Path = "$goPath\bin;" + $env:Path
if( $(go version) -match 'go version go(?<version>.*) win.*' ) $version = $(go version)
$matchVersion = $version -match $goVersion
$semanticEquality = $version -match 'go version go(?<version>.*) win.*'
if($semanticEquality -And $matchVersion)
{ {
$goVersion = $Matches.version $goFullVersion = $Matches.version
return $goVersion Write-Host "$goFullVersion has been found"
}
Write-Host "Unable to determine Go version at " + $goRootPath return $goFullVersion
return "" }
else
{
Write-Host "Unable to determine Go version at " + $goPath
exit 1
}
} }
# Verify that go.exe is on the path # Verify that go.exe is on the path
@@ -53,10 +66,10 @@ _Environment:_
$SoftwareName = "Go (x64)" $SoftwareName = "Go (x64)"
$Description = New-Object System.Text.StringBuilder $Description = New-Object System.Text.StringBuilder
$goVersionsToInstall = $env:GO_VERSIONS.split(",") $goVersionsToInstall = $env:GO_VERSIONS.split(", ", [System.StringSplitOptions]::RemoveEmptyEntries)
foreach($go in $goVersionsToInstall) { foreach($go in $goVersionsToInstall) {
$goVersion = Get-GoVersion -goRootPath "C:\Go${go}" $goVersion = Get-GoVersion -goVersion $go
$goVersionTag = "GOROOT_{0}_{1}_X64" -f $go.split(".") $goVersionTag = "GOROOT_{0}_{1}_X64" -f $go.split(".")
if ($goVersion -eq $go) { if ($goVersion -eq $go) {
if($go -eq $env:GO_DEFAULT) { if($go -eq $env:GO_DEFAULT) {

View File

@@ -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

View File

@@ -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 (?<version>.*) \(.*' )
{
$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

View File

@@ -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 (?<version>.*) \(.*' )
{
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<br/>"
return $description
}
function GetDefaultToolDescription {
param (
[Parameter(Mandatory = $True)]
[string]$SoftwareVersion,
[Parameter(Mandatory = $True)]
[string]$SoftwareLocation
)
$description = "<br/>__System default version:__ $SoftwareVersion<br/>"
$description += "_Environment:_<br/>"
$description += "* Location: $SoftwareLocation<br/>"
$description += "* PATH: contains the location of $SoftwareVersion<br/>"
return $description
}
function GetMarkdownDescription { function GetMarkdownDescription {
param ( param (
[Parameter(Mandatory = $True)] [Parameter(Mandatory = $True)]
@@ -123,6 +195,14 @@ function ToolcacheTest {
$markdownDescription += GetMarkdownDescription -SoftwareVersion $foundVersion -SoftwareArchitecture $requiredArchitecture $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 Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $markdownDescription
} }

View File

@@ -19,7 +19,7 @@ function Get-WDKVersion
} }
$WDKVersion = 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 # Adding description of the software to Markdown
$SoftwareName = "Windows Driver Kit" $SoftwareName = "Windows Driver Kit"

View File

@@ -4,6 +4,7 @@
################################################################################ ################################################################################
Import-Module -Name ImageHelpers -Force Import-Module -Name ImageHelpers -Force
function Get-WixVersion { function Get-WixVersion {
$regKey = "HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" $regKey = "HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*"
$installedApplications = Get-ItemProperty -Path $regKey $installedApplications = Get-ItemProperty -Path $regKey
@@ -21,14 +22,23 @@ else {
exit 1 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 # Adding description of the software to Markdown
$SoftwareName = "WIX Tools" $SoftwareName = "WIX Tools"
$Description = @" $Description = @"
_Toolset Version:_ $WixToolSetVersion<br/> _Toolset Version:_ $WixToolSetVersion<br/>
_WIX Toolset Visual Studio Extension Version:_ $WixPackageVersion<br/> _WIX Toolset Studio $VSver Extension Version:_ $WixPackageVersion<br/>
_Environment:_ _Environment:_
* WIX: Installation root of WIX * WIX: Installation root of WIX
"@ "@

View File

@@ -8,7 +8,13 @@ function Disable-InternetExplorerESC {
$UserKey = "HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A8-37EF-4b3f-8CFC-4F3A74704073}" $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 $AdminKey -Name "IsInstalled" -Value 0 -Force
Set-ItemProperty -Path $UserKey -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." Write-Host "IE Enhanced Security Configuration (ESC) has been disabled."
} }

View File

@@ -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"

View File

@@ -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

View File

@@ -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

View File

@@ -5,39 +5,13 @@
Import-Module -Name ImageHelpers -Force Import-Module -Name ImageHelpers -Force
function Get-SSDTExtensionPackage { $SSDTPackageVersion = Get-VSExtensionVersion -packageName "SSDT"
$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
}
# Adding description of the software to Markdown # Adding description of the software to Markdown
$SoftwareName = "SQL Server Data Tools for VS 2017" $SoftwareName = "SQL Server Data Tools for VS 2017"
$Description = @" $Description = @"
_Version:_ $($SsdtPackage.version)<br/> _Version:_ $SSDTPackageVersion<br/>
The following components are installed: The following components are installed:

View File

@@ -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<br/>
"@
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description

View File

@@ -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<br/>
_WIX Toolset Studio 2017 Extension Version:_ $($WixPackage.version)<br/>
_Environment:_
* WIX: Installation root of WIX
"@
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description

View File

@@ -8,7 +8,13 @@ function Disable-InternetExplorerESC {
$UserKey = "HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A8-37EF-4b3f-8CFC-4F3A74704073}" $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 $AdminKey -Name "IsInstalled" -Value 0 -Force
Set-ItemProperty -Path $UserKey -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." Write-Host "IE Enhanced Security Configuration (ESC) has been disabled."
} }

View File

@@ -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

View File

@@ -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"

View File

@@ -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"

View File

@@ -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

View File

@@ -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<br/>
"@
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description

View File

@@ -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<br/>
_SQL Server Integration Services Projects Version:_ $IntegrationPackageVersion<br/>
_Microsoft Reporting Services Projects Version:_ $ReportingPackageVersion<br/>
"@
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description