Merge pull request #1 from actions/master

Bring the upstream changes to private fork
This commit is contained in:
Sergey Dolin
2020-03-26 13:15:44 +05:00
committed by GitHub
54 changed files with 605 additions and 671 deletions

12
.github/pull_request_template.md vendored Normal file
View File

@@ -0,0 +1,12 @@
# Description
New tool, Bug fixing, or Improvement?
Please include a summary of the change and which issue is fixed. Also include relevant motivation and context.
**For new tools, please provide total size and installation time.**
#### Related issue:
## Check list
- [ ] Related issue / work item is attached
- [ ] Tests are written (if applicable)
- [ ] Documentation is updated (if applicable)
- [ ] Changes are tested and related VM images are successfully generated

View File

@@ -1,19 +0,0 @@
name: Mark stale issues and pull requests
on:
schedule:
- cron: "0 3 * * *"
jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
stale-issue-message: 'This issue has not had any activity for 45 days and will be closed in 45 days if there continues to be no activity.'
stale-issue-label: 'no-issue-activity'
days-before-stale: 45
days-before-close: 45

View File

@@ -17,4 +17,4 @@ jobs:
- template: image-generation.yml - template: image-generation.yml
parameters: parameters:
image_type: Windows2019-Azure image_type: Windows2019-Azure
image_readme_name: Windows2016-Readme.md 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,10 +1,10 @@
# Ubuntu 16.04.6 LTS # Ubuntu 16.04.6 LTS
The following software is installed on machines with the 20200308.0 update. The following software is installed on machines with the 20200315.1 update.
*** ***
- 7-Zip 9.20 - 7-Zip 9.20
- Ansible (ansible 2.9.6) - 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.2.0)
- Azure CLI (azure-devops 0.17.0) - Azure CLI (azure-devops 0.17.0)
- Basic CLI: - Basic CLI:
- curl - curl
@@ -14,6 +14,8 @@ The following software is installed on machines with the 20200308.0 update.
- iproute2 - iproute2
- iputils-ping - iputils-ping
- jq - jq
- libc++-dev
- libc++abi-dev
- libcurl3 - libcurl3
- libicu55 - libicu55
- libunwind8 - libunwind8
@@ -32,14 +34,14 @@ The following software is installed on machines with the 20200308.0 update.
- wget - wget
- zip - zip
- zstd - zstd
- AWS CLI (aws-cli/1.18.16 Python/2.7.12 Linux/4.15.0-1071-azure botocore/1.15.16) - AWS CLI (aws-cli/1.18.21 Python/2.7.12 Linux/4.15.0-1071-azure botocore/1.15.21)
- build-essential - build-essential
- Clang 6.0 (6.0.1) - Clang 6.0 (6.0.1)
- Clang 8 (8.0.1) - Clang 8 (8.0.1)
- Clang 9 (9.0.1) - Clang 9 (9.0.1)
- CMake (cmake version 3.16.2) - CMake (cmake version 3.16.2)
- Docker Compose (docker-compose version 1.22.0, build f46880fe) - Docker Compose (docker-compose version 1.25.4, build 8d51620a)
- Docker-Moby (Docker version 3.0.10+azure, build 99c5edceb48d64c1aa5d09b8c9c499d431d98bb9) - Docker-Moby (Docker version 3.0.11+azure, build eb310fca49568dccd87c6136f774ef6fff2a1b51)
- .NET Core SDK: - .NET Core SDK:
- 3.1.101 - 3.1.101
- 3.1.100 - 3.1.100
@@ -101,7 +103,7 @@ The following software is installed on machines with the 20200308.0 update.
- 2.1.301 - 2.1.301
- 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 74.0)
- Geckodriver (0.26.0); 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
@@ -110,14 +112,9 @@ The following software is installed on machines with the 20200308.0 update.
- GNU Fortran 9.2.1 - GNU Fortran 9.2.1
- Git (2.25.1) - Git (2.25.1)
- Git Large File Storage (LFS) (2.10.0) - Git Large File Storage (LFS) (2.10.0)
- Go 1.9 (go version go1.9.7 linux/amd64)
- Go 1.10 (go version go1.10.8 linux/amd64)
- Go 1.11 (go version go1.11.12 linux/amd64)
- Go 1.12 (go version go1.12.7 linux/amd64)
- Go 1.13 (go version go1.13 linux/amd64)
- Google Chrome (Google Chrome 80.0.3987.132 ) - Google Chrome (Google Chrome 80.0.3987.132 )
- ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882}); Chrome Driver is available via CHROMEWEBDRIVER environment variable - ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882}); Chrome Driver is available via CHROMEWEBDRIVER environment variable
- Google Cloud SDK (283.0.0) - Google Cloud SDK (284.0.0)
- Haskell Cabal (cabal-install version 2.0.0.1 - 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,7 +135,7 @@ compiled using version 3.0.2.0 of the Cabal library )
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.3) - 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.39.0 linux-x64 node-v12.13.0) - Heroku (heroku/7.39.0 linux-x64 node-v12.13.0)
- HHVM (HipHop VM 4.47.0 (rel)) - HHVM (HipHop VM 4.48.0 (rel))
- ImageMagick - 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")
@@ -148,11 +145,11 @@ compiled using version 3.0.2.0 of the Cabal library )
- Gradle 6.2.2 - 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.4)
- helm (v3.1.1+gafe7058) - helm (v3.1.2+gd878d4d)
- Leiningen (Leiningen 2.9.1 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.8.2)
- 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))
- MySQL (mysql Ver 14.14 Distrib 5.7.29, for Linux (x86_64) using EditLine wrapper) - MySQL (mysql Ver 14.14 Distrib 5.7.29, for Linux (x86_64) using EditLine wrapper)
- MySQL Server (user:root password:root) - MySQL Server (user:root password:root)
@@ -161,12 +158,12 @@ compiled using version 3.0.2.0 of the Cabal library )
- Grunt (grunt-cli v1.2.0) - Grunt (grunt-cli v1.2.0)
- Gulp (CLI version: 2.2.0 - Gulp (CLI version: 2.2.0
Local version: Unknown) Local version: Unknown)
- n (6.3.1) - n (6.4.0)
- Parcel (1.12.4) - Parcel (1.12.4)
- TypeScript (Version 3.8.3) - TypeScript (Version 3.8.3)
- Webpack (4.42.0) - Webpack (4.42.0)
- Webpack CLI (3.3.11) - Webpack CLI (3.3.11)
- Yarn (1.22.1) - Yarn (1.22.4)
- Bazel (bazel 2.2.0) - Bazel (bazel 2.2.0)
- Bazelisk (1.3.0) - Bazelisk (1.3.0)
- PhantomJS (2.1.1) - PhantomJS (2.1.1)
@@ -176,7 +173,7 @@ Local version: Unknown)
- PHP 7.2 (PHP 7.2.28-3+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:01) ( NTS )) - PHP 7.2 (PHP 7.2.28-3+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:01) ( NTS ))
- PHP 7.3 (PHP 7.3.15-3+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:10) ( NTS )) - PHP 7.3 (PHP 7.3.15-3+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:10) ( NTS ))
- PHP 7.4 (PHP 7.4.3 (cli) (built: Feb 23 2020 07:24:02) ( NTS )) - PHP 7.4 (PHP 7.4.3 (cli) (built: Feb 23 2020 07:24:02) ( NTS ))
- Composer (Composer version 1.9.3 2020-02-04 12:58:49) - Composer (Composer version 1.10.1 2020-03-13 20:34:27)
- PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.) - PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.)
- Pollinate - Pollinate
- psql (PostgreSQL) 9.5.19 - psql (PostgreSQL) 9.5.19
@@ -184,14 +181,12 @@ Local version: Unknown)
- ruby (2.3.1p112) - ruby (2.3.1p112)
- gem (3.1.2) - gem (3.1.2)
- rustup (1.21.1) - rustup (1.21.1)
- rust (1.41.1) - rust (1.42.0)
- cargo (1.41.0) - cargo (1.42.0)
- rustfmt (1.4.11-stable) - rustfmt (1.4.11-stable)
- clippy (0.0.212) - clippy (0.0.212)
- rustdoc (1.41.1) - rustdoc (1.42.0)
- bindgen (execute - bindgen (0.53.2)
the
0.53.1)
- cbindgen (0.13.1) - cbindgen (0.13.1)
- Julia (julia version 1.3.1) - Julia (julia version 1.3.1)
- sbt (1.3.8) - sbt (1.3.8)
@@ -202,6 +197,10 @@ the
- Packer (1.5.4) - 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)
- Go 1.11 (go version go1.11.13 linux/amd64)
- Go 1.12 (go version go1.12.17 linux/amd64)
- Go 1.13 (go version go1.13.8 linux/amd64)
- Go 1.14 (go version go1.14 linux/amd64)
- Google Repository 58 - Google Repository 58
- Google Play services 49 - Google Play services 49
- Google APIs 24 - Google APIs 24

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 20200316.1 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.2.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,14 +32,14 @@ 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.21 Python/2.7.17 Linux/5.0.0-1032-azure botocore/1.15.21)
- 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)
- Clang 9 (9.0.0) - Clang 9 (9.0.0)
- CMake (cmake version 3.16.2) - CMake (cmake version 3.16.2)
- Docker Compose (docker-compose version 1.22.0, build f46880fe) - Docker Compose (docker-compose version 1.25.4, build 8d51620a)
- Docker-Moby (Docker version 3.0.10+azure, build 99c5edceb48d64c1aa5d09b8c9c499d431d98bb9) - Docker-Moby (Docker version 3.0.11+azure, build eb310fca49568dccd87c6136f774ef6fff2a1b51)
- .NET Core SDK: - .NET Core SDK:
- 3.1.101 - 3.1.101
- 3.1.100 - 3.1.100
@@ -106,21 +101,18 @@ Build timestamp as int: 1582297007)
- 2.1.301 - 2.1.301
- 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 74.0)
- 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.5.0
- GNU C++ 8.3.0 - GNU C++ 8.3.0
- GNU C++ 9.2.1 - GNU C++ 9.2.1
- GNU Fortran 8.3.0 - GNU Fortran 8.3.0
- GNU Fortran 9.2.1 - GNU Fortran 9.2.1
- Git (2.25.1) - Git (2.25.1)
- Git Large File Storage (LFS) (2.10.0) - Git Large File Storage (LFS) (2.10.0)
- Go 1.11 (go version go1.11.12 linux/amd64) - Google Chrome (Google Chrome 80.0.3987.132 )
- Go 1.12 (go version go1.12.7 linux/amd64) - ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882}); Chrome Driver is available via CHROMEWEBDRIVER environment variable
- Go 1.13 (go version go1.13 linux/amd64) - Google Cloud SDK (284.0.0)
- Google Chrome (Google Chrome 80.0.3987.122 )
- Chromedriver (ChromeDriver 80.0.3987.106 (f68069574609230cf9b635cd784cfb1bf81bb53a-refs/branch-heads/3987@{#882})); Chrome Driver is available via CHROMEWEBDRIVER environment variable
- Google Cloud SDK (282.0.0)
- 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,23 +130,24 @@ 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.48.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.4)
- helm (Client: v2.16.3+g1ee0254) - helm (v3.1.2+gd878d4d)
- 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.8.2)
- 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))
- MySQL (mysql Ver 14.14 Distrib 5.7.29, for Linux (x86_64) using EditLine wrapper) - MySQL (mysql Ver 14.14 Distrib 5.7.29, for Linux (x86_64) using EditLine wrapper)
- MySQL Server (user:root password:root) - MySQL Server (user:root password:root)
@@ -163,41 +156,47 @@ compiled using version 3.0.2.0 of the Cabal library )
- Grunt (grunt-cli v1.2.0) - Grunt (grunt-cli v1.2.0)
- Gulp (CLI version: 2.2.0 - Gulp (CLI version: 2.2.0
Local version: Unknown) Local version: Unknown)
- n (6.3.1) - n (6.4.0)
- 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.4)
- 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 ))
- PHP 7.3 (PHP 7.3.15-3+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:33) ( NTS )) - PHP 7.3 (PHP 7.3.15-3+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Feb 23 2020 07:23:33) ( NTS ))
- PHP 7.4 (PHP 7.4.3 (cli) (built: Feb 23 2020 07:24:28) ( NTS )) - PHP 7.4 (PHP 7.4.3 (cli) (built: Feb 23 2020 07:24:28) ( NTS ))
- Composer (Composer version 1.9.3 2020-02-04 12:58:49) - Composer (Composer version 1.10.1 2020-03-13 20:34:27)
- PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.) - 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)
- rust (1.41.1) - rust (1.42.0)
- cargo (1.41.0) - cargo (1.42.0)
- rustfmt (1.4.11-stable) - rustfmt (1.4.11-stable)
- clippy (0.0.212) - clippy (0.0.212)
- rustdoc (1.41.1) - rustdoc (1.42.0)
- bindgen (execute - bindgen (0.53.2)
the
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)
- Go 1.11 (go version go1.11.13 linux/amd64)
- Go 1.12 (go version go1.12.17 linux/amd64)
- Go 1.13 (go version go1.13.8 linux/amd64)
- Go 1.14 (go version go1.14 linux/amd64)
- Google Repository 58 - Google Repository 58
- Google Play services 49 - Google Play services 49
- Google APIs 24 - Google APIs 24
@@ -219,6 +218,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

@@ -4,6 +4,8 @@
## Desc: Installs Android SDK ## Desc: Installs Android SDK
################################################################################ ################################################################################
set -e
# Source the helpers for use with the script # Source the helpers for use with the script
source $HELPER_SCRIPTS/document.sh source $HELPER_SCRIPTS/document.sh
source $HELPER_SCRIPTS/apt.sh source $HELPER_SCRIPTS/apt.sh
@@ -16,14 +18,28 @@ source $HELPER_SCRIPTS/apt.sh
# ANDROID_HOME is deprecated, but older versions of Gradle rely on it # ANDROID_HOME is deprecated, but older versions of Gradle rely on it
echo "ANDROID_HOME=${ANDROID_SDK_ROOT}" | tee -a /etc/environment echo "ANDROID_HOME=${ANDROID_SDK_ROOT}" | tee -a /etc/environment
# Create android sdk directory
mkdir -p ${ANDROID_SDK_ROOT}
# Download the latest command line tools so that we can accept all of the licenses. # Download the latest command line tools so that we can accept all of the licenses.
# See https://developer.android.com/studio/#command-tools # See https://developer.android.com/studio/#command-tools
wget -O android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip wget -O android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip
unzip android-sdk.zip -d ${ANDROID_ROOT} unzip android-sdk.zip -d ${ANDROID_SDK_ROOT}
rm -f android-sdk.zip rm -f android-sdk.zip
# Check sdk manager installation
/usr/local/lib/android/sdk/tools/bin/sdkmanager --list 1>/dev/null
if [ $? -eq 0 ]
then
echo "Android SDK manager was installed"
else
echo "Android SDK manager was not installed"
exit 1
fi
# Install the following SDKs and build tools, passing in "y" to accept licenses. # Install the following SDKs and build tools, passing in "y" to accept licenses.
echo "y" | ${ANDROID_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \
"ndk-bundle" \ "ndk-bundle" \
"platform-tools" \ "platform-tools" \
"platforms;android-29" \ "platforms;android-29" \
@@ -82,6 +98,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

@@ -4,6 +4,8 @@
## Desc: Installs Android SDK ## Desc: Installs Android SDK
################################################################################ ################################################################################
set -e
# Source the helpers for use with the script # Source the helpers for use with the script
source $HELPER_SCRIPTS/document.sh source $HELPER_SCRIPTS/document.sh
source $HELPER_SCRIPTS/apt.sh source $HELPER_SCRIPTS/apt.sh
@@ -16,14 +18,27 @@ echo "ANDROID_SDK_ROOT=${ANDROID_SDK_ROOT}" | tee -a /etc/environment
# ANDROID_HOME is deprecated, but older versions of Gradle rely on it # ANDROID_HOME is deprecated, but older versions of Gradle rely on it
echo "ANDROID_HOME=${ANDROID_SDK_ROOT}" | tee -a /etc/environment echo "ANDROID_HOME=${ANDROID_SDK_ROOT}" | tee -a /etc/environment
# Create android sdk directory
mkdir -p ${ANDROID_SDK_ROOT}
# Download the latest command line tools so that we can accept all of the licenses. # Download the latest command line tools so that we can accept all of the licenses.
# See https://developer.android.com/studio/#command-tools # See https://developer.android.com/studio/#command-tools
wget -O android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip wget -O android-sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip
unzip android-sdk.zip -d ${ANDROID_ROOT} unzip android-sdk.zip -d ${ANDROID_SDK_ROOT}
rm -f android-sdk.zip rm -f android-sdk.zip
# Check sdk manager installation
/usr/local/lib/android/sdk/tools/bin/sdkmanager --list 1>/dev/null
if [ $? -eq 0 ]
then
echo "Android SDK manager was installed"
else
echo "Android SDK manager was not installed"
exit 1
fi
# Install the following SDKs and build tools, passing in "y" to accept licenses. # Install the following SDKs and build tools, passing in "y" to accept licenses.
echo "y" | ${ANDROID_ROOT}/tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} \ echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \
"ndk-bundle" \ "ndk-bundle" \
"platform-tools" \ "platform-tools" \
"platforms;android-29" \ "platforms;android-29" \
@@ -76,6 +91,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

@@ -7,18 +7,16 @@
# Source the helpers for use with the script # Source the helpers for use with the script
source $HELPER_SCRIPTS/document.sh source $HELPER_SCRIPTS/document.sh
TOOLSET_PATH="$INSTALLER_SCRIPT_FOLDER/toolcache.json"
BOOST_LIB=/usr/local/share/boost BOOST_LIB=/usr/local/share/boost
BOOST_VERSIONS=$(cat $TOOLSET_PATH | jq -r 'to_entries[] | select(.key | match("boost")) | .value[] +".0"')
# Install Boost # Install Boost
for BOOST_VERSION in ${BOOST_VERSIONS//,/ } for BOOST_VERSION in ${BOOST_VERSIONS}
do do
BOOST_SYMLINK_VER=`echo "${BOOST_VERSION//[.]/_}"` BOOST_SYMLINK_VER=$(echo "${BOOST_VERSION//[.]/_}")
BOOST_ROOT="BOOST_ROOT_$BOOST_SYMLINK_VER" BOOST_ROOT_VERSION="BOOST_ROOT_$BOOST_SYMLINK_VER"
echo "$BOOST_ROOT=$BOOST_LIB/$BOOST_VERSION" | tee -a /etc/environment
if [[ $BOOST_VERSION == $BOOST_DEFAULT ]]; then
echo "BOOST_ROOT=$BOOST_LIB/$BOOST_VERSION" | tee -a /etc/environment
fi
echo "$BOOST_ROOT_VERSION=$BOOST_LIB/$BOOST_VERSION" | tee -a /etc/environment
DocumentInstalledItem "Boost C++ Libraries $BOOST_VERSION" DocumentInstalledItem "Boost C++ Libraries $BOOST_VERSION"
done done

View File

@@ -12,13 +12,11 @@ function InstallClang {
version=$1 version=$1
echo "Installing clang-$version..." echo "Installing clang-$version..."
# Clang 6.0 is not supported by automatic installation script (`llvm.sh`) if [[ $version =~ 9 ]]; then
# Thus we have to install it explicitly
if [[ $version == 6* ]]; then
apt-get install -y "clang-$version" "lldb-$version" "lld-$version"
else
./llvm.sh $version ./llvm.sh $version
apt-get install -y "clang-format-$version" apt-get install -y "clang-format-$version"
else
apt-get install -y "clang-$version" "lldb-$version" "lld-$version" "clang-format-$version"
fi fi
# Run tests to determine that the software installed as expected # Run tests to determine that the software installed as expected
@@ -35,11 +33,6 @@ function InstallClang {
DocumentInstalledItem "Clang $version ($(clang-$version --version | head -n 1 | cut -d ' ' -f 3 | cut -d '-' -f 1))" DocumentInstalledItem "Clang $version ($(clang-$version --version | head -n 1 | cut -d ' ' -f 3 | cut -d '-' -f 1))"
} }
# Install Clang compiler
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -
apt-add-repository "deb http://apt.llvm.org/$(lsb_release -cs)/ llvm-toolchain-$(lsb_release -cs)-6.0 main"
apt-get update -y
# Download script for automatic installation # Download script for automatic installation
wget https://apt.llvm.org/llvm.sh wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh chmod +x llvm.sh

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

@@ -68,10 +68,11 @@ done
# Document what was added to the image # Document what was added to the image
echo "Lastly, documenting what we added to the metadata file" echo "Lastly, documenting what we added to the metadata file"
DocumentInstalledItem "Azul Zulu OpenJDK (7) ($(/usr/lib/jvm/zulu-7-azure-amd64/bin/java -showversion |& head -n 1))" DocumentInstalledItem "Azul Zulu OpenJDK:"
DocumentInstalledItem "Azul Zulu OpenJDK (8) ($(/usr/lib/jvm/zulu-8-azure-amd64/bin/java -showversion |& head -n 1))" DocumentInstalledItemIndent "7 ($(/usr/lib/jvm/zulu-7-azure-amd64/bin/java -showversion |& head -n 1))"
DocumentInstalledItem "Azul Zulu OpenJDK (11) ($(/usr/lib/jvm/zulu-11-azure-amd64/bin/java -showversion |& head -n 1))" DocumentInstalledItemIndent "8 ($(/usr/lib/jvm/zulu-8-azure-amd64/bin/java -showversion |& head -n 1)) (default)"
DocumentInstalledItem "Azul Zulu OpenJDK (12) ($(/usr/lib/jvm/zulu-12-azure-amd64/bin/java -showversion |& head -n 1))" DocumentInstalledItemIndent "11 ($(/usr/lib/jvm/zulu-11-azure-amd64/bin/java -showversion |& head -n 1))"
DocumentInstalledItemIndent "12 ($(/usr/lib/jvm/zulu-12-azure-amd64/bin/java -showversion |& head -n 1))"
DocumentInstalledItem "Ant ($(ant -version))" DocumentInstalledItem "Ant ($(ant -version))"
DocumentInstalledItem "Gradle ${gradleVersion}" DocumentInstalledItem "Gradle ${gradleVersion}"
DocumentInstalledItem "Maven ($(mvn -version | head -n 1))" DocumentInstalledItem "Maven ($(mvn -version | head -n 1))"

View File

@@ -12,16 +12,14 @@ set -e
export RUSTUP_HOME=/usr/share/rust/.rustup export RUSTUP_HOME=/usr/share/rust/.rustup
export CARGO_HOME=/usr/share/rust/.cargo export CARGO_HOME=/usr/share/rust/.cargo
curl https://sh.rustup.rs -sSf | sh -s -- -y curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain=stable --profile=minimal
# Initialize environment variables # Initialize environment variables
source $CARGO_HOME/env source $CARGO_HOME/env
# Install common tools # Install common tools
rustup component add rustfmt rustup component add rustfmt clippy
rustup component add clippy cargo install bindgen cbindgen
cargo install bindgen
cargo install cbindgen
echo "Test installation of the Rust toochain" echo "Test installation of the Rust toochain"

View File

@@ -240,8 +240,7 @@
"environment_vars": [ "environment_vars": [
"METADATA_FILE={{user `metadata_file`}}", "METADATA_FILE={{user `metadata_file`}}",
"HELPER_SCRIPTS={{user `helper_script_folder`}}", "HELPER_SCRIPTS={{user `helper_script_folder`}}",
"BOOST_VERSIONS=1.69.0", "INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}"
"BOOST_DEFAULT=1.69.0"
], ],
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
}, },

View File

@@ -242,8 +242,7 @@
"environment_vars": [ "environment_vars": [
"METADATA_FILE={{user `metadata_file`}}", "METADATA_FILE={{user `metadata_file`}}",
"HELPER_SCRIPTS={{user `helper_script_folder`}}", "HELPER_SCRIPTS={{user `helper_script_folder`}}",
"BOOST_VERSIONS=1.69.0", "INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}"
"BOOST_DEFAULT=1.69.0"
], ],
"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 20200307.2 update. The following software is installed on machines with the 20200321.1 update.
#### Xcode 11.3.1 set by default #### Xcode 11.3.1 set by default
## Operating System ## Operating System
@@ -13,37 +13,38 @@ The following software is installed on machines with the 20200307.2 update.
- Java 11: Zulu11.37+17-CA (build 11.0.6+10-LTS) - Java 11: Zulu11.37+17-CA (build 11.0.6+10-LTS)
- Java 12: Zulu12.3+11-CA (build 12.0.2+3) - Java 12: Zulu12.3+11-CA (build 12.0.2+3)
- Java 13: Zulu13.29+9-CA (build 13.0.2+6-MTS) - Java 13: Zulu13.29+9-CA (build 13.0.2+6-MTS)
- Rust 1.41.1 - Java 14: Zulu14.27+1-CA (build 14+36)
- Rust 1.42.0
- Clang/LLVM 9.0.1 - Clang/LLVM 9.0.1
- gcc-8 (Homebrew GCC 8.3.0_2) 8.3.0 - gcc-8 (Homebrew GCC 8.4.0) 8.4.0
- gcc-9 (Homebrew GCC 9.2.0_3) 9.2.0 - gcc-9 (Homebrew GCC 9.3.0) 9.3.0
- GNU Fortran (Homebrew GCC 8.3.0_2) 8.3.0 - GNU Fortran (Homebrew GCC 8.4.0) 8.4.0
- GNU Fortran (Homebrew GCC 9.2.0_3) 9.2.0 - GNU Fortran (Homebrew GCC 9.3.0) 9.3.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.10.1 - NVM - Cached node versions: v6.17.1 v8.17.0 v10.19.0 v12.16.1 v13.11.0
- PowerShell 7.0.0 - PowerShell 7.0.0
- Python 2.7.17 - Python 2.7.17
- Python 3.7.6 - Python 3.7.7
- 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 3.1.200
- Go 1.14 - Go 1.14
- PHP 7.4.3 - PHP 7.4.4
- julia 1.3.1 - julia 1.4.0
### Package Management ### Package Management
- Rustup 1.21.1 - Rustup 1.21.1
- Vcpkg 2020.02.04 - 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.1
- Homebrew 2.2.9 - Homebrew 2.2.10
- NPM 6.13.4 - NPM 6.13.4
- Yarn 1.22.1 - Yarn 1.22.4
- 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 20.0.2 (python 3.7)
- Miniconda 4.7.12 - Miniconda 4.8.2
- RubyGems 3.1.2 - RubyGems 3.1.2
### Project Management ### Project Management
@@ -51,9 +52,10 @@ The following software is installed on machines with the 20200307.2 update.
- Gradle 6.2.2 - Gradle 6.2.2
### Utilities ### Utilities
- Curl 7.69.0 - Curl 7.69.1
- Git: 2.25.1 - Git: 2.25.2
- Git LFS: 2.10.0 - Git LFS: 2.10.0
- Hub CLI: 2.14.2
- GNU Wget 1.20.3 - GNU Wget 1.20.3
- Subversion (SVN) 1.13.0 - Subversion (SVN) 1.13.0
- Packer 1.5.4 - Packer 1.5.4
@@ -67,19 +69,23 @@ The following software is installed on machines with the 20200307.2 update.
- zstd 1.4.4 - zstd 1.4.4
- bazel 2.2.0 - bazel 2.2.0
- bazelisk v1.3.0 - bazelisk v1.3.0
- helm v3.1.2+gd878d4d
- Docker 19.03.8
- docker-machine 0.16.2
- docker-compose 1.25.4
### Tools ### Tools
- Fastlane 2.143.0 - Fastlane 2.143.0
- Cmake 3.16.5 - Cmake 3.16.5
- App Center CLI 2.3.3 - App Center CLI 2.3.4
- Azure CLI 2.1.0 - Azure CLI 2.2.0
### Browsers ### Browsers
- Google Chrome 80.0.3987.132 - Google Chrome 80.0.3987.149
- ChromeDriver 80.0.3987.106 - ChromeDriver 80.0.3987.106
- Microsoft Edge 80.0.361.66 - Microsoft Edge 80.0.361.69
- MSEdgeDriver 80.0.361.66 - MSEdgeDriver 80.0.361.66
- Mozilla Firefox 73.0.1 - Mozilla Firefox 74.0
- geckodriver 0.26.0 - geckodriver 0.26.0
### Toolcache ### Toolcache

View File

@@ -15,6 +15,7 @@
"virtual_network_subnet_name": "{{env `VNET_SUBNET`}}", "virtual_network_subnet_name": "{{env `VNET_SUBNET`}}",
"private_virtual_network_with_public_ip": "{{env `PRIVATE_VIRTUAL_NETWORK_WITH_PUBLIC_IP`}}", "private_virtual_network_with_public_ip": "{{env `PRIVATE_VIRTUAL_NETWORK_WITH_PUBLIC_IP`}}",
"vm_size": "Standard_DS4_v2", "vm_size": "Standard_DS4_v2",
"run_scan_antivirus": "false",
"root_folder": "C:", "root_folder": "C:",
"image_folder": "C:\\image", "image_folder": "C:\\image",
@@ -100,7 +101,8 @@
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Initialize-VM.ps1" "{{ template_dir }}/scripts/Installers/Windows2016/Initialize-VM.ps1"
] ],
"execution_policy": "unrestricted"
}, },
{ {
"type": "powershell", "type": "powershell",
@@ -213,7 +215,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Install-Wix.ps1" "{{ template_dir }}/scripts/Installers/Install-Wix.ps1"
] ]
}, },
{ {
@@ -229,7 +231,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Install-WDK.ps1" "{{ template_dir }}/scripts/Installers/Install-WDK.ps1"
] ]
}, },
{ {
@@ -251,7 +253,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Validate-Wix.ps1" "{{ template_dir }}/scripts/Installers/Validate-Wix.ps1"
] ]
}, },
{ {
@@ -263,7 +265,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Validate-WDK.ps1" "{{ template_dir }}/scripts/Installers/Validate-WDK.ps1"
] ]
}, },
{ {
@@ -516,8 +518,7 @@
{ {
"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"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Install-Boost.ps1" "{{ template_dir }}/scripts/Installers/Install-Boost.ps1"
@@ -651,8 +652,7 @@
{ {
"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"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Boost.ps1" "{{ template_dir }}/scripts/Installers/Validate-Boost.ps1"
@@ -874,8 +874,17 @@
}, },
{ {
"type": "powershell", "type": "powershell",
"environment_vars":[
"RUN_SCAN_ANTIVIRUS={{user `run_scan_antivirus`}}"
],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Run-Antivirus.ps1" "{{ template_dir }}/scripts/Installers/Run-Antivirus.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Configure-Antivirus.ps1"
] ]
}, },
{ {

View File

@@ -1,6 +1,6 @@
# Windows Server 2016 # Windows Server 2016
The following software is installed on machines with the 20200308.0 update. The following software is installed on machines with the 20200316.1 update.
Components marked with **\*** have been upgraded since the previous version of the image. Components marked with **\*** have been upgraded since the previous version of the image.
@@ -30,15 +30,15 @@ _Version:_ 7.0.0 <br/>
## Docker images ## Docker images
The following container images have been cached: The following container images have been cached:
* mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2016 (Digest: sha256:2053602020c89ff2d6c0d4005372ebc6cebcf866fb5785e562d91389aa467943) * mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2016 (Digest: sha256:e53049e13aa29b2df35642fa827c532ceaa78745e6ca72be2cbe74b1d75b5b99)
* mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2016 (Digest: sha256:ca895ab76f1d3ab95f022cbca076e06b62daebafe61af34212bb3ed1fe982d78) * mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2016 (Digest: sha256:9d34bebe71fdebfd288b3e87a9b8372e47a9291782c09fbaeb657f8f78817779)
* mcr.microsoft.com/windows/servercore:ltsc2016 (Digest: sha256:5bd97dbab1afe8d3200f5d5c974df3b0130e74e8a69fddcd427699c4c8cb5037) * mcr.microsoft.com/windows/servercore:ltsc2016 (Digest: sha256:5bd97dbab1afe8d3200f5d5c974df3b0130e74e8a69fddcd427699c4c8cb5037)
* microsoft/aspnetcore-build:1.0-2.0 (Digest: sha256:9ecc7c5a8a7a11dca5f08c860165646cb30d084606360a3a72b9cbe447241c0c) * microsoft/aspnetcore-build:1.0-2.0 (Digest: sha256:9ecc7c5a8a7a11dca5f08c860165646cb30d084606360a3a72b9cbe447241c0c)
* mcr.microsoft.com/windows/nanoserver:10.0.14393.953 (Digest: sha256:fc60bd5ae0e61b334ce1cf1bcbf20c10c36b4c5482a01da319c9c989f9e6e268) * mcr.microsoft.com/windows/nanoserver:10.0.14393.953 (Digest: sha256:fc60bd5ae0e61b334ce1cf1bcbf20c10c36b4c5482a01da319c9c989f9e6e268)
## Visual Studio 2017 Enterprise ## Visual Studio 2017 Enterprise
_Version:_ VisualStudio/15.9.21+28307.1064<br/> _Version:_ VisualStudio/15.9.21+28307.1064<br/>
_Location:_ C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise _Location:_ C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise
@@ -415,7 +415,7 @@ _Description:_ .NET has been configured to use TLS 1.2 by default
_Description:_ .NET has been configured to use TLS 1.2 by default _Description:_ .NET has been configured to use TLS 1.2 by default
## Azure CLI ## Azure CLI
_Version:_ 2.2.0 _Version:_ 2.2.0
_Environment:_ _Environment:_
* PATH: contains location of az.cmd * PATH: contains location of az.cmd
@@ -425,7 +425,7 @@ _Version:_ azure-devops 0.17.0
_Version:_ azure-devops 0.17.0 _Version:_ azure-devops 0.17.0
## Python ## Python
_Version:_ 2.7.17 (x64)<br/>_Version:_ 3.5.4 (x64)<br/>_Version:_ 3.6.8 (x64)<br/>_Version:_ 3.7.6 (x64)<br/>_Version:_ 3.8.2 (x64)<br/>_Version:_ 2.7.17 (x86)<br/>_Version:_ 3.5.4 (x86)<br/>_Version:_ 3.6.8 (x86)<br/>_Version:_ 3.7.6 (x86)<br/>_Version:_ 3.8.2 (x86)<br/><br/>__System default version:__ Python 3.7.6<br/>_Environment:_<br/>* Location: C:\hostedtoolcache\windows\Python\3.7.6\x64<br/>* PATH: contains the location of Python 3.7.6<br/> _Version:_ 2.7.17 (x64)<br/>_Version:_ 3.5.4 (x64)<br/>_Version:_ 3.6.8 (x64)<br/>_Version:_ 3.7.6 (x64)<br/>_Version:_ 3.8.2 (x64)<br/>_Version:_ 2.7.17 (x86)<br/>_Version:_ 3.5.4 (x86)<br/>_Version:_ 3.6.8 (x86)<br/>_Version:_ 3.7.6 (x86)<br/>_Version:_ 3.8.2 (x86)<br/><br/>__System default version:__ Python 3.7.6<br/>_Environment:_<br/>* Location: C:\hostedtoolcache\windows\Python\3.7.6\x64<br/>* PATH: contains the location of Python 3.7.6<br/>
## PyPy ## PyPy
@@ -433,17 +433,11 @@ _Version:_ 2.7.13 (x86)<br/>_Version:_ 3.6.9 (x86)<br/>
_Version:_ 2.7.13 (x86)<br/>_Version:_ 3.6.9 (x86)<br/> _Version:_ 2.7.13 (x86)<br/>_Version:_ 3.6.9 (x86)<br/>
## Ruby ## Ruby
_Version:_ 2.4.9 (x64)<br/>_Version:_ 2.5.7 (x64)<br/>_Version:_ 2.6.5 (x64)<br/>_Version:_ 2.7.0 (x64)<br/><br/>__System default version:__ Ruby 2.5.7p206<br/>_Environment:_<br/>* Location: C:\hostedtoolcache\windows\Ruby\2.5.7\x64\bin<br/>* PATH: contains the location of Ruby 2.5.7p206<br/>* Gem Version: 2.7.6.2<br/> _Version:_ 2.4.9 (x64)<br/>_Version:_ 2.5.7 (x64)<br/>_Version:_ 2.6.5 (x64)<br/>_Version:_ 2.7.0 (x64)<br/><br/>__System default version:__ Ruby 2.5.7p206<br/>_Environment:_<br/>* Location: C:\hostedtoolcache\windows\Ruby\2.5.7\x64\bin<br/>* PATH: contains the location of Ruby 2.5.7p206<br/>* Gem Version: 2.7.6.2<br/>
## OpenSSL ## OpenSSL
#### Python 3.6.8
_Environment:_
* PATH: contains location of python.exe
#### Python 2.7.17
_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/>_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/>
## Perl ## Perl
@@ -464,32 +458,12 @@ _Environment:_
* GIT_LFS_PATH: location of git-lfs.exe * GIT_LFS_PATH: location of git-lfs.exe
## Go (x64) ## Go (x64)
#### 1.14 #### 1.14
_Environment:_ _Environment:_
* GOROOT_1_9_X64: root directory of the Go 1.9.7 installation * PATH: contains the location of go.exe version 1.14
* GOROOT: root directory of the Go 1.14 installation
#### 1.10.8
_Environment:_
* GOROOT_1_10_X64: root directory of the Go 1.10.8 installation
#### 1.11.12
_Environment:_
* GOROOT_1_11_X64: root directory of the Go 1.11.12 installation
#### 1.12.7
_Environment:_
* PATH: contains the location of go.exe version 1.12.7
* GOROOT: root directory of the Go 1.12.7 installation
* GOROOT_1_12_X64: root directory of the Go 1.12.7 installation
#### 1.13
_Environment:_
* GOROOT_1_13_X64: root directory of the Go 1.13 installation
* GOROOT_1_14_X64: root directory of the Go 1.14 installation * GOROOT_1_14_X64: root directory of the Go 1.14 installation
@@ -514,17 +488,9 @@ _Environment:_
_Environment:_ _Environment:_
* PATH: contains the location of php.exe version 7.4.3 * PATH: contains the location of php.exe version 7.4.3
* PHPROOT: root directory of the PHP 7.4.3 installation * PHPROOT: root directory of the PHP 7.4.3 installation
## Ruby (x64)
#### 2.5.7p206
_Environment:_
* Location: C:\hostedtoolcache\windows\Ruby\2.5.7\x64\bin
* PATH: contains the location of ruby.exe version 2.5.7p206
* Gem Version: 3.1.2
## Rust (64-bit) ## Rust (64-bit)
#### 1.42.0 #### 1.42.0
_Location:_ C:\Rust\.cargo\bin _Location:_ C:\Rust\.cargo\bin
_Environment:_ _Environment:_
@@ -556,7 +522,7 @@ _version:_
## Mozilla Firefox ## Mozilla Firefox
_version:_ _version:_
74.0 74.0
## Selenium Web Drivers ## Selenium Web Drivers
@@ -602,7 +568,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.4<br/> * Yarn 1.22.4<br/>
@@ -823,15 +789,11 @@ _Version:_ 1.4.0<br/>
_Version:_ 1.4.0<br/> _Version:_ 1.4.0<br/>
## Inno Setup ## Inno Setup
_Version:_ 6.0.4<br/> _Version:_ 6.0.4<br/>
## GitVersion ## GitVersion
_Version:_ 5.2.0.0<br/>
## OpenSSL
_Version:_ 5.2.3.0<br/> _Version:_ 5.2.3.0<br/>
## Cloud Foundry CLI ## Cloud Foundry CLI

View File

@@ -15,6 +15,7 @@
"virtual_network_subnet_name": "{{env `VNET_SUBNET`}}", "virtual_network_subnet_name": "{{env `VNET_SUBNET`}}",
"private_virtual_network_with_public_ip": "{{env `PRIVATE_VIRTUAL_NETWORK_WITH_PUBLIC_IP`}}", "private_virtual_network_with_public_ip": "{{env `PRIVATE_VIRTUAL_NETWORK_WITH_PUBLIC_IP`}}",
"vm_size": "Standard_DS4_v2", "vm_size": "Standard_DS4_v2",
"run_scan_antivirus": "false",
"root_folder": "C:", "root_folder": "C:",
"image_folder": "C:\\image", "image_folder": "C:\\image",
@@ -100,7 +101,8 @@
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2019/Initialize-VM.ps1" "{{ template_dir }}/scripts/Installers/Windows2019/Initialize-VM.ps1"
] ],
"execution_policy": "unrestricted"
}, },
{ {
"type": "powershell", "type": "powershell",
@@ -188,13 +190,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"
] ]
}, },
{ {
@@ -210,7 +212,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts": [ "scripts": [
"{{ template_dir }}/scripts/Installers/Windows2019/Install-WDK.ps1" "{{ template_dir }}/scripts/Installers/Install-WDK.ps1"
] ]
}, },
{ {
@@ -226,13 +228,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"
] ]
}, },
{ {
@@ -244,7 +246,7 @@
{ {
"type": "powershell", "type": "powershell",
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2019/Validate-WDK.ps1" "{{ template_dir }}/scripts/Installers/Validate-WDK.ps1"
] ]
}, },
{ {
@@ -497,8 +499,7 @@
{ {
"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"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Install-Boost.ps1" "{{ template_dir }}/scripts/Installers/Install-Boost.ps1"
@@ -638,8 +639,7 @@
{ {
"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"
], ],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Boost.ps1" "{{ template_dir }}/scripts/Installers/Validate-Boost.ps1"
@@ -867,8 +867,17 @@
}, },
{ {
"type": "powershell", "type": "powershell",
"environment_vars":[
"RUN_SCAN_ANTIVIRUS={{user `run_scan_antivirus`}}"
],
"scripts":[ "scripts":[
"{{ template_dir }}/scripts/Installers/Windows2019/Run-Antivirus.ps1" "{{ template_dir }}/scripts/Installers/Run-Antivirus.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Configure-Antivirus.ps1"
] ]
}, },
{ {

View File

@@ -14,10 +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'
'Install-VsixExtension' 'Install-VsixExtension'
'Get-VS19ExtensionVersion' 'Get-VSExtensionVersion'
'Get-WinVersion'
'Test-IsWin19'
'Test-IsWin16'
) )

View File

@@ -165,12 +165,19 @@ function Install-VsixExtension
{ {
Param Param
( (
[String]$Url, [string] $Url,
[String]$Name [Parameter(Mandatory = $true)]
[string] $Name,
[string] $FilePath,
[Parameter(Mandatory = $true)]
[string] $VSversion,
[int] $retries = 20,
[switch] $InstallOnly
) )
if (!$InstallOnly)
{
$FilePath = "${env:Temp}\$Name" $FilePath = "${env:Temp}\$Name"
$retries = 20
while($retries -gt 0) while($retries -gt 0)
{ {
@@ -198,13 +205,22 @@ function Install-VsixExtension
Start-Sleep -Seconds 30 Start-Sleep -Seconds 30
} }
} }
}
$ArgumentList = ('/quiet', $FilePath) $ArgumentList = ('/quiet', "`"$FilePath`"")
Write-Host "Starting Install $Name..." Write-Host "Starting Install $Name..."
try try
{ {
$process = Start-Process -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\VSIXInstaller.exe" -ArgumentList $ArgumentList -Wait -PassThru #There are 2 types of packages at the moment - exe and vsix
if ($Name -match "vsix")
{
$process = Start-Process -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\$VSversion\Enterprise\Common7\IDE\VSIXInstaller.exe" -ArgumentList $ArgumentList -Wait -PassThru
}
else
{
$process = Start-Process -FilePath ${env:Temp}\$Name /Q -Wait -PassThru
}
} }
catch catch
{ {
@@ -225,11 +241,14 @@ function Install-VsixExtension
exit 1 exit 1
} }
#Cleanup installation files #Cleanup downloaded installation files
if (!$InstallOnly)
{
Remove-Item -Force -Confirm:$false $FilePath Remove-Item -Force -Confirm:$false $FilePath
}
} }
function Get-VS19ExtensionVersion function Get-VSExtensionVersion
{ {
param ( param (
[string] [Parameter(Mandatory=$true)] $packageName [string] [Parameter(Mandatory=$true)] $packageName
@@ -255,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

@@ -0,0 +1,2 @@
Write-Host "Set antivirus parameters"
Set-MpPreference -ScanAvgCPULoadFactor 5 -ExclusionPath "D:\", "C:\"

View File

@@ -4,9 +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(',')
$BoostDefault = $env:BOOST_DEFAULT $SoftwareName = "Boost"
$BoostDirectory = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath $SoftwareName
$BoostVersions = (Get-ToolsByName -SoftwareName $SoftwareName).Versions | Foreach-Object {"{0}.0" -f $_}
foreach($BoostVersion in $BoostVersions) foreach($BoostVersion in $BoostVersions)
{ {
@@ -14,13 +16,4 @@ foreach($BoostVersion in $BoostVersions)
$EnvBoostPath = "BOOST_ROOT_{0}" -f ($BoostVersion.Replace('.', '_')) $EnvBoostPath = "BOOST_ROOT_{0}" -f ($BoostVersion.Replace('.', '_'))
setx $EnvBoostPath $BoostInstallationDir /M | Out-Null setx $EnvBoostPath $BoostInstallationDir /M | Out-Null
if ($BoostVersion -eq $BoostDefault)
{
Write-Host "Adding Boost $BoostVersion to the path..."
# Add the Boost binaries to the path
Add-MachinePathItem $BoostInstallationDir | Out-Null
# Set the BOOSTROOT environment variable
setx BOOST_ROOT $BoostInstallationDir /M | Out-Null
}
} }

View File

@@ -14,3 +14,7 @@ Install-Package -Name docker -ProviderName DockerMsftProvider -Force
Start-Service docker Start-Service docker
choco install docker-compose -y choco install docker-compose -y
# Install helm
Write-Host "Install Helm"
choco install kubernetes-helm

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

@@ -10,8 +10,11 @@ Import-Module -Name ImageHelpers
$installDir = "c:\tools\php" $installDir = "c:\tools\php"
choco install php -y --force --params "/InstallDir:$installDir" choco install php -y --force --params "/InstallDir:$installDir"
# update path to extensions and enable curl and mbstring extensions # Install latest Composer in chocolatey
((Get-Content -path $installDir\php.ini -Raw) -replace ';extension=curl','extension=curl' -replace ';extension=mbstring','extension=mbstring' -replace ';extension_dir = "ext"','extension_dir = "ext"') | Set-Content -Path $installDir\php.ini choco install composer --ia "/DEV=$installDir /PHP=$installDir"
# update path to extensions and enable curl and mbstring extensions, and enable php openssl extensions.
((Get-Content -path $installDir\php.ini -Raw) -replace ';extension=curl','extension=curl' -replace ';extension=mbstring','extension=mbstring' -replace ';extension_dir = "ext"','extension_dir = "ext"' -replace 'extension=";php_openssl.dll"','extension_dir = "php_openssl.dll"') | Set-Content -Path $installDir\php.ini
# Set the PHPROOT environment variable. # Set the PHPROOT environment variable.
setx PHPROOT $installDir /M setx PHPROOT $installDir /M

View File

@@ -14,7 +14,7 @@ $env:CARGO_HOME="C:\Rust\.cargo"
Invoke-WebRequest -UseBasicParsing -Uri "https://win.rustup.rs/x86_64" -OutFile rustup-init.exe Invoke-WebRequest -UseBasicParsing -Uri "https://win.rustup.rs/x86_64" -OutFile rustup-init.exe
# Install Rust by running rustup-init.exe (disabling the confirmation prompt with -y) # Install Rust by running rustup-init.exe (disabling the confirmation prompt with -y)
.\rustup-init.exe -y .\rustup-init.exe -y --default-toolchain=stable --profile=minimal
# Delete rustup-init.exe when it's no longer needed # Delete rustup-init.exe when it's no longer needed
Remove-Item -Path .\rustup-init.exe Remove-Item -Path .\rustup-init.exe
@@ -24,10 +24,8 @@ Add-MachinePathItem "$env:CARGO_HOME\bin"
$env:Path = Get-MachinePath $env:Path = Get-MachinePath
# Install common tools # Install common tools
rustup component add rustfmt rustup component add rustfmt clippy
rustup component add clippy cargo install bindgen cbindgen
cargo install bindgen
cargo install cbindgen
# Run script at startup for all users # Run script at startup for all users
$cmdRustSymScript = @" $cmdRustSymScript = @"

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

@@ -0,0 +1,30 @@
################################################################################
## File: Run-Antivirus.ps1
## Desc: Run a full antivirus scan.
## Run right after cleanup before we sysprep
################################################################################
if ($env:run_scan_antivirus -eq $true) {
try {
Update-MpSignature
}
catch {
Write-Host "Some error was found"
Write-Host $_
}
Write-Host "Make sure windefend is going to start"
Start-Service windefend -ErrorAction Continue
Write-Host "Waiting for windefend to report as running"
$service = Get-Service "Windefend"
$service.WaitForStatus("Running","00:10:00")
Write-Host "Run antivirus"
# Tell Defender to use 100% of the CPU during the scan
Set-MpPreference -ScanAvgCPULoadFactor 100
# Full Scan
Start-Process -FilePath "C:\Program Files\Windows Defender\MpCmdRun.exe" -ArgumentList ("-Scan","-ScanType", 2) -Wait
}
else {
Write-Host "Scanning process has been skipped"
}

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

@@ -3,6 +3,8 @@
## Desc: Validate Boost ## Desc: Validate Boost
################################################################################ ################################################################################
Import-Module -Name ImageHelpers
function Validate-BoostVersion function Validate-BoostVersion
{ {
Param Param
@@ -16,7 +18,6 @@ function Validate-BoostVersion
if (Test-Path "$ReleasePath\b2.exe") if (Test-Path "$ReleasePath\b2.exe")
{ {
Write-Host "Boost.Build $BoostRelease is successfully installed" Write-Host "Boost.Build $BoostRelease is successfully installed"
return return
} }
@@ -24,52 +25,46 @@ function Validate-BoostVersion
exit 1 exit 1
} }
# Verify that Boost is on the path
if (Get-Command -Name 'b2')
{
Write-Host "Boost is on the path"
}
else
{
Write-Host "Boost is not on the path"
exit 1
}
# Adding description of the software to Markdown # Adding description of the software to Markdown
$tmplMark = @" $tmplMark = @"
#### {0} #### {0} [{2}]
_Environment:_ _Environment:_
* {1}: root directory of the Boost version {0} installation * {1}: root directory of the Boost version {0} installation
"@ "@
$tmplMarkRoot = @"
#### {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
"@
$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)
{ {
$BoostToolsetName = $BoostTool.Architecture
$BoostVersionsToInstall = $BoostTool.Versions | Foreach-Object {"{0}.0" -f $_}
foreach($BoostVersion in $BoostVersionsToInstall)
{
Validate-BoostVersion -BoostRootPath $BoostRootDirectory -BoostRelease $BoostVersion Validate-BoostVersion -BoostRootPath $BoostRootDirectory -BoostRelease $BoostVersion
$BoostVersionTag = "BOOST_ROOT_{0}" -f $BoostVersion.Replace('.', '_') $BoostVersionTag = "BOOST_ROOT_{0}" -f $BoostVersion.Replace('.', '_')
if($BoostVersion -eq $env:BOOST_DEFAULT) $null = $Description.AppendLine(($tmplMark -f $BoostVersion, $BoostVersionTag, $BoostToolsetName))
{
$null = $Description.AppendLine(($tmplMarkRoot -f $BoostVersion, $BoostVersionTag))
}
else
{
$null = $Description.AppendLine(($tmplMark -f $BoostVersion, $BoostVersionTag))
} }
} }
$CMakeFindBoostInfo = @"
#### _Notes:_
Link: https://cmake.org/cmake/help/latest/module/FindBoost.html
If Boost was built using the ``boost-cmake`` project or from ``Boost 1.70.0`` on it provides a package
configuration file for use with find\_package's config mode. This module looks for the package
configuration file called BoostConfig.cmake or boost-config.cmake and stores the result in CACHE entry "Boost_DIR".
If found, the package configuration file is loaded and this module returns with no further action.
See documentation of the Boost CMake package configuration for details on what it provides.
Set ``Boost_NO_BOOST_CMAKE to ON``, to disable the search for boost-cmake.
"@
$null = $Description.AppendLine($CMakeFindBoostInfo)
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description.ToString() Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description.ToString()

View File

@@ -44,3 +44,25 @@ _Environment:_
"@ "@
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description
# Validate helm
if (Get-Command -Name 'helm')
{
Write-Host "helm on path"
}
else
{
Write-Host 'helm is not on path'
exit 1
}
$version = $(helm version --short)
$SoftwareName = "Helm"
$Description = @"
_Version:_ $version<br/>
_Environment:_
* PATH: contains location of helm
"@
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description

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")) {
else Write-Host "[!] $CommandName is not found"
{
Write-Host "git or git-lfs are not on path."
exit 1 exit 1
}
}
function Test-Command {
param(
[parameter(Mandatory)][string] $CommandName,
[parameter(Mandatory)][string] $CommandDescription,
[parameter(Mandatory)][string] $VersionCmd,
[parameter(Mandatory)][string] $regexVersion,
[parameter(Mandatory)][string] $DescriptionMarkdown
)
Test-CommandName -CommandName $CommandName
$strVersion = Invoke-Expression $VersionCmd
Write-Host "$strVersion on path"
if($strVersion -match $regexVersion) {
$Version = $Matches.version
}
else {
Write-Host "[!] $CommandName version detection failed"
exit 1
}
# Adding description of the software to Markdown
$DescriptionMarkdown = $DescriptionMarkdown -f $Version
Add-SoftwareDetailsToMarkdown -SoftwareName $CommandDescription -DescriptionMarkdown $DescriptionMarkdown
} }
Test-CommandName -CommandName 'bash'
Test-CommandName -CommandName 'awk'
if( $(git version) -match 'git version (?<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

@@ -56,7 +56,7 @@ if( $( $(gradle -version) | Out-String) -match 'Gradle (?<version>.*)' )
$SoftwareName = "Java Development Kit" $SoftwareName = "Java Development Kit"
$Description = @" $Description = @"
#### $javaVersion #### $javaVersion (default)
_Environment:_ _Environment:_
* JAVA_HOME: location of JDK * JAVA_HOME: location of JDK

View File

@@ -28,5 +28,4 @@ $Description = @"
_Version:_ $Version<br/> _Version:_ $Version<br/>
"@ "@
#Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description
Write-Host $description

View File

@@ -33,6 +33,32 @@ else
exit 1 exit 1
} }
# Verify that composer.exe is on the path
if(Get-Command -Name 'composer')
{
Write-Host "$(composer --version) is on the path."
}
else
{
Write-Host "composer is not on the path."
exit 1
}
# Get the composer version.
$composerVersion = $(composer --version)
# Add composer version details in Markdown
$SoftwareName = "Composer"
$Description = @"
#### $composerVersion
_Environment:_
* PATH: contains the location of composer.exe version $composerVersion
* PHPROOT: root directory of the Composer $composerVersion installation
"@
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description
# Get available versions of PHP # Get available versions of PHP
$phpVersionOnPath = Get-PHPVersion -phpRootPath "C:\tools\php72" $phpVersionOnPath = Get-PHPVersion -phpRootPath "C:\tools\php72"

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
$ieProcess = Get-Process -Name Explorer -ErrorAction SilentlyContinue
if ($ieProcess){
Stop-Process -Name Explorer -Force -ErrorAction Continue 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,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

@@ -1,19 +0,0 @@
################################################################################
## File: Run-Antivirus.ps1
## Desc: Run a full antivirus scan.
## Run right after cleanup before we sysprep
################################################################################
Write-Host "Run antivirus"
Push-Location "C:\Program Files\Windows Defender"
# Tell Defender to use 100% of the CPU during the scan
Set-MpPreference -ScanAvgCPULoadFactor 100
# Full Scan
.\MpCmdRun.exe -Scan -ScanType 2
Pop-Location
Write-Host "Set antivirus parmeters"
Set-MpPreference -ScanAvgCPULoadFactor 5 `
-ExclusionPath "D:\", "C:\"

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
$ieProcess = Get-Process -Name Explorer -ErrorAction SilentlyContinue
if ($ieProcess){
Stop-Process -Name Explorer -Force -ErrorAction Continue 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,11 +0,0 @@
###################################################################################
## File: Install-AnalysisExtenstion.ps1
## Desc: Install the Microsoft Analysis Services Projects Visual Studio extension
###################################################################################
Import-Module -Name ImageHelpers -Force;
$extensionUrl = "https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ProBITools/vsextensions/MicrosoftAnalysisServicesModelingProjects/2.9.5/vspackage"
$extensionName = "Microsoft.DataTools.AnalysisServices.vsix"
Install-VsixExtension -Url $extensionUrl -Name $extensionName

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

@@ -121,6 +121,7 @@ $WorkLoads = '--allWorkloads --includeRecommended ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.MFC.ARM.Spectre ' + ` '--add Microsoft.VisualStudio.Component.VC.v141.MFC.ARM.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64.Spectre ' + ` '--add Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.MFC.Spectre ' + ` '--add Microsoft.VisualStudio.Component.VC.v141.MFC.Spectre ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.14393 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.16299 ' + ` '--add Microsoft.VisualStudio.Component.Windows10SDK.16299 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.17134 ' + ` '--add Microsoft.VisualStudio.Component.Windows10SDK.17134 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.17763 ' + ` '--add Microsoft.VisualStudio.Component.Windows10SDK.17763 ' + `

View File

@@ -1,14 +0,0 @@
################################################################################
## File: Install-Wix.ps1
## Desc: Install WIX.
################################################################################
Import-Module -Name ImageHelpers -Force;
choco install wixtoolset -y --force
$extensionUrl = "https://wixtoolset.gallerycdn.vsassets.io/extensions/wixtoolset/wixtoolsetvisualstudio2019extension/1.0.0.4/1563296438961/Votive2019.vsix"
$extensionName = "Votive2019.vsix"
#Installing VS extension 'Wix Toolset Visual Studio 2019 Extension'
Install-VsixExtension -Url $extensionUrl -Name $extensionName

View File

@@ -1,27 +0,0 @@
################################################################################
## File: Run-Antivirus.ps1
## Desc: Run a full antivirus scan.
## Run right after cleanup before we sysprep
################################################################################
Write-Host "Make sure windefend is going to start"
Start-Service windefend -ErrorAction Continue
Write-Host "Waiting for windefend to report as running"
$service = Get-Service "Windefend"
$service.WaitForStatus("Running","00:10:00")
Write-Host "Run antivirus"
Push-Location "C:\Program Files\Windows Defender"
# Tell Defender to use 100% of the CPU during the scan
Set-MpPreference -ScanAvgCPULoadFactor 100
# Full Scan
.\MpCmdRun.exe -Scan -ScanType 2
Pop-Location
Update-MpSignature
Write-Host "Set antivirus parmeters"
Set-MpPreference -ScanAvgCPULoadFactor 5 `
-ExclusionPath "D:\", "C:\"

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