Merge branch 'main' into releases/ubuntu16/20200723

This commit is contained in:
Maxim Lobanov
2020-07-29 19:08:20 +03:00
committed by GitHub
69 changed files with 1405 additions and 1505 deletions

View File

@@ -14,22 +14,44 @@ Please note that this project is released with a [Contributor Code of Conduct][c
1. [Fork][fork] and clone the repository
1. Create a new branch: `git checkout -b my-branch-name`
1. Make your changes, ensure that they include steps to install and validate post-install (e.g. [kind.sh](images/linux/scripts/installers/kind.sh)).
Adding tool for Windows images:
- add tool installation script `Install-ToolName.ps1` (`/images/win/scripts/Installers`)
- add tool validation script `Validate-ToolName.ps1` (the same directory)
- add changes to document tool name and version to the software report generator: `images/win/scripts/SoftwareReport/SoftwareReport.Generator.ps1` that is used to generate software README file, e.g. [Windows2019-Readme.md](images/win/Windows2019-Readme.md)
1. Make your changes, ensure that they include steps to install, validate post-install and update software report (please see [How to add new tool](CONTRIBUTING.md#how-to-add-new-tool) for details).
1. Test your changes by [creating VHD and deploying a VM](help/CreateImageAndAzureResources.md).
1. Push to your fork and [submit a pull request][pr]
Here are a few things you can do that will increase the likelihood of your pull request being accepted:
- Follow the style guide for [Powershell](https://github.com/PoshCode/PowerShellPracticeAndStyle) when writing Windows scripts. There is currently no set style for the Shell scripts that run Linux installs :soon:.
- Include complete details of why this is needed in the PR description. If it's a new piece tool being installed, consider cross-platform. If the tool is available in other platforms (MacOS, Windows, Linux), make sure you include it in as many as possible.
- Include complete details of why this is needed in the PR description.
- Keep your change as focused as possible. If there are multiple changes you would like to make that are not dependent upon each other, consider submitting them as separate pull requests.
- Write [good commit messages](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html).
- For new tools:
- Make sure that the tool satisfies [Software Guidelines](README.md#software-guidelines).
- Create an issue and get an approval from us to add this tool to the image before creating the pull request.
## How to add new tool
### General rules
- For every new tool add validation scripts and update software report script to make sure that it is included to documentation
- If the tool is available in other platforms (MacOS, Windows, Linux), make sure you include it in as many as possible.
- If installing a few versions of the tool, consider putting the list of versions in the corresponding `toolset.json` file. It will help other customers to configure their builds flexibly. See [toolset-windows-2016.json](images/win/toolsets/toolset-2019.json) as example.
- Use consistent naming across all files
- Validation scripts should be simple and shouldn't change image content
### Windows
- Add a script that will install the tool and put the script in the `scripts/Installers` folder.
There are a bunch of helper functions that could simplify your code: `Choco-Install`, `Install-Binary`, `Install-VsixExtension`, ` Start-DownloadWithRetry`, `Test-IsWin16`, ` Test-IsWin19` (find the full list of helpers in [ImageHelpers.psm1](images/win/scripts/ImageHelpers/ImageHelpers.psm1)).
- Add a script that will validate the tool installation and put the script in the `scripts/Tests` folder.
We use [Pester v5](https://github.com/pester/pester) for validation scripts. If the tests for the tool are complex enough, create a separate `*.Tests.ps1`. Otherwise, use `Tools.Tests.ps1` for simple tests.
Add `Invoke-PesterTests -TestFile <testFileName> [-TestName <describeName>]` at the end of the installation script to make sure that your tests will be run.
- Add changes to the software report generator `images/win/scripts/SoftwareReport/SoftwareReport.Generator.ps1`. The software report generator is used to generate an image's README file, e.g. [Windows2019-Readme.md](images/win/Windows2019-Readme.md) and uses [MarkdownPS](https://github.com/Sarafian/MarkdownPS).
### Ubuntu
- Add a single script that will install, validate, and document the tool and put the script in the `script/Installers` folder. Use existing scripts such as [github-cli.sh](images/linux/scripts/installers/github-cli.sh) as a starting point.
- Use [helpers](images/linux/scripts/helpers/install.sh) to simplify installation process.
- Validation part should `exit 1` if any issue with installation.
- Use `DocumentInstalledItem "<add to docs>"` helper for building documentation.
### macOS
We are in the process of preparing our macOS source to live in this repo so we can take contributions from the community. Until then, we appreciate your patience and ask you continue to make tool requests by filing issues.
## Resources

View File

@@ -1,12 +1,12 @@
<!--- DO NOT EDIT - This markdown file is autogenerated. -->
# Ubuntu 18.04.4 LTS
The following software is installed on machines with the 20200709.0 update.
The following software is installed on machines with the 20200717.1 update.
***
- 7-Zip 16.02
- Ansible (ansible 2.9.10)
- AzCopy7 (available by azcopy alias) 7.3.0
- AzCopy10 (available by azcopy10 alias) 10.5.0
- Azure CLI (azure-cli 2.8.0)
- Azure CLI (azure-cli 2.9.1)
- Azure CLI (azure-devops 0.18.0)
- Basic packages:
- dnsutils
@@ -60,8 +60,8 @@ The following software is installed on machines with the 20200709.0 update.
- bzip2
- sqlite3
- libcurl3
- Alibaba Cloud CLI (3.0.50)
- AWS CLI (aws-cli/1.18.97 Python/2.7.17 Linux/5.3.0-1028-azure botocore/1.17.20)
- Alibaba Cloud CLI (3.0.53)
- AWS CLI (aws-cli/1.18.99 Python/2.7.17 Linux/5.3.0-1032-azure botocore/1.17.22)
- AWS CLI Session manager plugin (1.1.61.0)
- build-essential
- Clang 6.0 (6.0.0)
@@ -77,11 +77,13 @@ Target: x86_64-unknown-linux-gnu
- Docker-Moby (Docker version 19.03.12+azure, build 0ed913b885c8919944a2e4c8d0b80a318a8dd48b)
- Docker-Buildx (0.4.1+azure)
- .NET Core SDK:
- 3.1.302
- 3.1.301
- 3.1.300
- 3.1.202
- 3.1.201
- 3.1.200
- 3.1.106
- 3.1.105
- 3.1.104
- 3.1.103
@@ -92,6 +94,7 @@ Target: x86_64-unknown-linux-gnu
- 3.0.102
- 3.0.101
- 3.0.100
- 2.1.808
- 2.1.807
- 2.1.806
- 2.1.805
@@ -101,6 +104,7 @@ Target: x86_64-unknown-linux-gnu
- 2.1.801
- 2.1.701
- 2.1.700
- 2.1.613
- 2.1.612
- 2.1.611
- 2.1.610
@@ -112,6 +116,7 @@ Target: x86_64-unknown-linux-gnu
- 2.1.604
- 2.1.603
- 2.1.602
- 2.1.516
- 2.1.515
- 2.1.514
- 2.1.513
@@ -134,7 +139,7 @@ Target: x86_64-unknown-linux-gnu
- 2.1.301
- 2.1.300
- Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 11.0.2)
- Firefox (Mozilla Firefox 78.0.1)
- Firefox (Mozilla Firefox 78.0.2)
- Geckodriver (0.26.0); Gecko Driver is available via GECKOWEBDRIVER environment variable
- GNU C++ 7.5.0
- GNU C++ 8.4.0
@@ -145,34 +150,34 @@ Target: x86_64-unknown-linux-gnu
- Git Large File Storage (LFS) (2.11.0)
- Git-ftp (1.3.1)
- Hub CLI (2.14.2)
- GitHub CLI 0.10.1
- Google Chrome (Google Chrome 83.0.4103.116 )
- ChromeDriver 83.0.4103.39 (ccbf011cb2d2b19b506d844400483861342c20cd-refs/branch-heads/4103@{#416}); Chrome Driver is available via CHROMEWEBDRIVER environment variable
- Google Cloud SDK (300.0.0)
- GitHub CLI 0.11.0
- Google Chrome (Google Chrome 84.0.4147.89 )
- ChromeDriver 84.0.4147.30 (48b3e868b4cc0aa7e8149519690b6f6949e110a8-refs/branch-heads/4147@{#310}); Chrome Driver is available via CHROMEWEBDRIVER environment variable
- Google Cloud SDK (301.0.0)
- Haskell Cabal (cabal-install version 3.2.0.0
compiled using version 3.2.0.0 of the Cabal library )
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.5)
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.3)
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.10.1)
- Haskell Stack (Version 2.3.1, Git revision de2a7b694f07de7e6cf17f8c92338c16286b2878 (8103 commits) x86_64 hpack-0.33.0)
- Heroku (heroku/7.42.3 linux-x64 node-v12.16.2)
- HHVM (HipHop VM 4.65.0 (rel))
- Heroku (heroku/7.42.4 linux-x64 node-v12.16.2)
- HHVM (HipHop VM 4.66.1 (rel))
- ImageMagick
- Azul Zulu OpenJDK:
- 7 (openjdk version "1.7.0_262")
- 7 (openjdk version "1.7.0_272")
- Adopt OpenJDK:
- 8 (openjdk version "1.8.0_252") (default)
- 11 (openjdk version "11.0.7" 2020-04-14)
- 8 (openjdk version "1.8.0_262") (default)
- 11 (openjdk version "11.0.8" 2020-07-14)
- 12 (openjdk version "12.0.2" 2019-07-16)
- Ant (Apache Ant(TM) version 1.10.5 compiled on March 28 2019)
- Gradle 6.5.1
- Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f))
- Kind (kind v0.8.1 go1.14.2 linux/amd64)
- kubectl (Client Version: v1.18.5)
- kubectl (Client Version: v1.18.6)
- helm (v3.2.4+g0ad800e)
- minikube version: v1.12.0
- oc CLI Client Version: 4.5.0-202005291417-9933eb9
- Leiningen (Leiningen 2.9.4 on Java 1.8.0_252 OpenJDK 64-Bit Server VM)
- Leiningen (Leiningen 2.9.4 on Java 1.8.0_262 OpenJDK 64-Bit Server VM)
- Mercurial (Mercurial Distributed SCM (version 4.5.3))
- Miniconda (conda 4.8.3)
- Mono (Mono JIT compiler version 6.10.0.104 (tarball Fri Jun 26 19:38:24 UTC 2020))
@@ -187,32 +192,32 @@ compiled using version 3.2.0.0 of the Cabal library )
Local version: Unknown)
- n (6.6.0)
- Parcel (1.12.4)
- TypeScript (Version 3.9.6)
- TypeScript (Version 3.9.7)
- Webpack (4.43.0)
- Webpack CLI (3.3.12)
- Yarn (1.22.4)
- Newman (5.1.1)
- Bazel (bazel 3.3.1)
- Newman (5.1.2)
- Bazel (bazel 3.4.1)
- Bazelisk (1.5.0)
- ORAS CLI 0.8.1
- PhantomJS (2.1.1)
- PHP 7.1 (PHP 7.1.33-16+ubuntu18.04.1+deb.sury.org+1 (cli) (built: May 14 2020 08:27:11) ( NTS ))
- PHP 7.2 (PHP 7.2.32-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Jul 9 2020 16:33:55) ( NTS ))
- PHP 7.3 (PHP 7.3.20-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Jul 9 2020 16:34:09) ( NTS ))
- PHP 7.4 (PHP 7.4.7 (cli) (built: Jun 12 2020 07:44:05) ( NTS ))
- Composer (Composer version 1.10.8 2020-06-24 21:23:30)
- PHP 7.4 (PHP 7.4.8 (cli) (built: Jul 13 2020 16:45:47) ( NTS ))
- Composer (Composer version 1.10.9 2020-07-16 12:57:00)
- PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.)
- Pollinate
- psql (PostgreSQL) 12.3
- Powershell (PowerShell 7.0.2)
- Powershell (PowerShell 7.0.3)
- ruby (2.5.1p57)
- gem (3.1.4)
- rustup (1.22.1)
- rust (1.44.1)
- cargo (1.44.1)
- rustfmt (1.4.16-stable)
- rust (1.45.0)
- cargo (1.45.0)
- rustfmt (1.4.15-stable)
- clippy (0.0.212)
- rustdoc (1.44.1)
- rustdoc (1.45.0)
- bindgen (0.54.1)
- cbindgen (0.14.3)
- cargo audit (0.12.0)
@@ -225,10 +230,10 @@ Local version: Unknown)
- Terraform (Terraform v0.12.28)
- Packer (1.6.0)
- Vcpkg 2020.06.15-unknownhash
- Vercel CLI (19.1.1)
- MongoDB on Linux (2020-07-09T23:51:28.041+0000 I CONTROL [initandlisten] db version v4.2.8
2020-07-09T23:51:28.041+0000 I CONTROL [initandlisten] git version: 43d25964249164d76d5e04dd6cf38f6111e21f5f
2020-07-09T23:51:28.041+0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.1.1g 21 Apr 2020)
- Vercel CLI (19.1.2)
- MongoDB on Linux (2020-07-17T10:52:50.926+0000 I CONTROL [initandlisten] db version v4.2.8
2020-07-17T10:52:50.926+0000 I CONTROL [initandlisten] git version: 43d25964249164d76d5e04dd6cf38f6111e21f5f
2020-07-17T10:52:50.926+0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.1.1g 21 Apr 2020)
- Haveged 1.9.1-6
- Google Repository 58
- Google Play services 49
@@ -342,5 +347,5 @@ Local version: Unknown)
- boost 1.69.0
- boost 1.72.0
- AWS SAM CLI, version 0.53.0
- Homebrew on Linux (Homebrew 2.4.5
Homebrew/linuxbrew-core (git revision 799e0; last commit 2020-07-09))
- Homebrew on Linux (Homebrew 2.4.7
Homebrew/linuxbrew-core (git revision 13cb0b; last commit 2020-07-17))

View File

@@ -1,12 +1,12 @@
<!--- DO NOT EDIT - This markdown file is autogenerated. -->
# Ubuntu 20.04 LTS
The following software is installed on machines with the 20200709.0 update.
The following software is installed on machines with the 20200723.1 update.
***
- 7-Zip 16.02
- Ansible (ansible 2.9.6)
- AzCopy7 (available by azcopy alias) 7.3.0
- AzCopy10 (available by azcopy10 alias) 10.5.0
- Azure CLI (azure-cli 2.8.0)
- Azure CLI (azure-cli 2.9.1)
- Azure CLI (azure-devops 0.18.0)
- Basic packages:
- dnsutils
@@ -60,8 +60,8 @@ The following software is installed on machines with the 20200709.0 update.
- bzip2
- sqlite3
- libcurl4
- Alibaba Cloud CLI (3.0.50)
- AWS CLI (aws-cli/2.0.29 Python/3.7.3 Linux/5.4.0-1019-azure botocore/2.0.0dev33)
- Alibaba Cloud CLI (3.0.54)
- AWS CLI (aws-cli/2.0.33 Python/3.7.3 Linux/5.4.0-1020-azure botocore/2.0.0dev37)
- AWS CLI Session manager plugin (1.1.61.0)
- build-essential
- Clang 6.0 (6.0.1)
@@ -77,17 +77,20 @@ Target: x86_64-unknown-linux-gnu
- Docker-Moby (Docker version 19.03.12+azure, build 0ed913b885c8919944a2e4c8d0b80a318a8dd48b)
- Docker-Buildx (0.4.1+azure)
- .NET Core SDK:
- 3.1.302
- 3.1.301
- 3.1.300
- 3.1.202
- 3.1.201
- 3.1.200
- 3.1.106
- 3.1.105
- 3.1.104
- 3.1.103
- 3.1.102
- 3.1.101
- 3.1.100
- 2.1.808
- 2.1.807
- 2.1.806
- 2.1.805
@@ -97,6 +100,7 @@ Target: x86_64-unknown-linux-gnu
- 2.1.801
- 2.1.701
- 2.1.700
- 2.1.613
- 2.1.612
- 2.1.611
- 2.1.610
@@ -108,6 +112,7 @@ Target: x86_64-unknown-linux-gnu
- 2.1.604
- 2.1.603
- 2.1.602
- 2.1.516
- 2.1.515
- 2.1.514
- 2.1.513
@@ -130,7 +135,7 @@ Target: x86_64-unknown-linux-gnu
- 2.1.301
- 2.1.300
- Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 11.0.2)
- Firefox (Mozilla Firefox 78.0.1)
- Firefox (Mozilla Firefox 78.0.2)
- Geckodriver (0.26.0); Gecko Driver is available via GECKOWEBDRIVER environment variable
- GNU C++ 7.5.0
- GNU C++ 8.4.0
@@ -141,31 +146,31 @@ Target: x86_64-unknown-linux-gnu
- Git Large File Storage (LFS) (2.11.0)
- Git-ftp (1.6.0)
- Hub CLI (2.14.2)
- GitHub CLI 0.10.1
- Google Chrome (Google Chrome 83.0.4103.116 )
- ChromeDriver 83.0.4103.39 (ccbf011cb2d2b19b506d844400483861342c20cd-refs/branch-heads/4103@{#416}); Chrome Driver is available via CHROMEWEBDRIVER environment variable
- Google Cloud SDK (300.0.0)
- GitHub CLI 0.11.0
- Google Chrome (Google Chrome 84.0.4147.89 )
- ChromeDriver 84.0.4147.30 (48b3e868b4cc0aa7e8149519690b6f6949e110a8-refs/branch-heads/4147@{#310}); Chrome Driver is available via CHROMEWEBDRIVER environment variable
- Google Cloud SDK (302.0.0)
- Haskell Cabal (cabal-install version 3.2.0.0
compiled using version 3.2.0.0 of the Cabal library )
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.5)
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.3)
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.10.1)
- Haskell Stack (Version 2.3.1, Git revision de2a7b694f07de7e6cf17f8c92338c16286b2878 (8103 commits) x86_64 hpack-0.33.0)
- Heroku (heroku/7.42.3 linux-x64 node-v12.16.2)
- HHVM (HipHop VM 4.65.0 (rel))
- Heroku (heroku/7.42.5 linux-x64 node-v12.16.2)
- HHVM (HipHop VM 4.67.0 (rel))
- ImageMagick
- Adopt OpenJDK:
- 8 (openjdk version "1.8.0_252")
- 11 (openjdk version "11.0.7" 2020-04-14) (default)
- 8 (openjdk version "1.8.0_262")
- 11 (openjdk version "11.0.8" 2020-07-14) (default)
- Ant (Apache Ant(TM) version 1.10.7 compiled on October 24 2019)
- Gradle 6.5.1
- Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f))
- Kind (kind v0.8.1 go1.14.2 linux/amd64)
- kubectl (Client Version: v1.18.5)
- kubectl (Client Version: v1.18.6)
- helm (v3.2.4+g0ad800e)
- minikube version: v1.12.0
- minikube version: v1.12.1
- oc CLI Client Version: 4.5.0-202005291417-9933eb9
- Leiningen (Leiningen 2.9.4 on Java 11.0.7 OpenJDK 64-Bit Server VM)
- Leiningen (Leiningen 2.9.4 on Java 11.0.8 OpenJDK 64-Bit Server VM)
- Mercurial (Mercurial Distributed SCM (version 5.3.1))
- Miniconda (conda 4.8.3)
- Mono (Mono JIT compiler version 6.10.0.104 (tarball Fri Jun 26 19:38:44 UTC 2020))
@@ -174,54 +179,54 @@ compiled using version 3.2.0.0 of the Cabal library )
- MS SQL Server Client Tools
- MySQL service is disabled by default. Use the following command as a part of your job to start the service: 'sudo systemctl start mysql.service'
- nvm (0.35.3)
- Node.js (v12.18.2)
- Node.js (v12.18.3)
- Grunt (grunt-cli v1.3.2)
- Gulp (CLI version: 2.3.0
Local version: Unknown)
- n (6.6.0)
- Parcel (1.12.4)
- TypeScript (Version 3.9.6)
- TypeScript (Version 3.9.7)
- Webpack (4.43.0)
- Webpack CLI (3.3.12)
- Yarn (1.22.4)
- Newman (5.1.1)
- Bazel (bazel 3.3.1)
- Newman (5.1.2)
- Bazel (bazel 3.4.1)
- Bazelisk (1.5.0)
- ORAS CLI 0.8.1
- PhantomJS (2.1.1)
- PHP 7.4 (PHP 7.4.7 (cli) (built: Jun 12 2020 07:44:38) ( NTS ))
- PHP 7.4 (PHP 7.4.8 (cli) (built: Jul 13 2020 16:46:22) ( NTS ))
> To use ppa:ondrej/php APT repository On Ubuntu 20.04 it is necessary to add it to the APT sources
apt-add-repository
apt-get
- Composer (Composer version 1.10.8 2020-06-24 21:23:30)
```
apt-add-repository ppa:ondrej/php -y
apt-get update
```
- Composer (Composer version 1.10.9 2020-07-16 12:57:00)
- PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.)
- Pollinate
- psql (PostgreSQL) 12.3
- Powershell (PowerShell 7.0.2)
- Powershell (PowerShell 7.0.3)
- ruby (2.7.0p0)
- gem (3.1.2)
- rustup (1.22.1)
- rust (1.44.1)
- cargo (1.44.1)
- rustfmt (1.4.16-stable)
- rust (1.45.0)
- cargo (1.45.0)
- rustfmt (1.4.15-stable)
- clippy (0.0.212)
- rustdoc (1.44.1)
- rustdoc (1.45.0)
- bindgen (0.54.1)
- cbindgen (0.14.3)
- cargo audit (0.12.0)
- cargo outdated (v0.9.10)
- cargo outdated (v0.9.11)
- Julia (julia version 1.4.2)
- sbt (copying runtime jar...
1.3.13)
- Selenium server standalone (available via SELENIUM_JAR_PATH environment variable)
- Sphinx Open Source Search Server
- Subversion (svn, version 1.13.0 (r1867053))
- Terraform (Terraform v0.12.28)
- Terraform (Terraform v0.12.29)
- Packer (1.6.0)
- Vcpkg 2020.06.15-unknownhash
- Vercel CLI (19.1.1)
- Vercel CLI (19.2.0)
- Haveged 1.9.1-6ubuntu1
- Google Repository 58
- Google Play services 49
@@ -246,16 +251,16 @@ apt-get
- Android SDK Build-Tools 27.0.1
- Android SDK Build-Tools 27.0.0
- Android NDK 21.3.6528147
- Az Module (4.3.0)
- Az Module (4.4.0)
- Cached container images
- node:10 (Digest: sha256:45ce6645bb55155699292c9f8f203203a77b05fb90b65dd29b7bf91ec4c9e168)
- node:12 (Digest: sha256:d06fdb39d49bd3be77a4523fe763a868218b82a36562575d6a1ca7863354807b)
- buildpack-deps:stretch (Digest: sha256:d95db8b9293c71d0f9b6a12d96d1ace65af81fd6535e5cb07078df85b3147a76)
- debian:9 (Digest: sha256:e984d8384d582e61f128920ec63c18a46bb23bc67d7c29a8311a44a69077edab)
- debian:8 (Digest: sha256:dfc9cc982d07c28c2513ad4a97330b38485c0cceea4bd8b217c39d32423e4d29)
- node:10-alpine (Digest: sha256:2f202af4d6baba655fef9c93f41a914b33ee576b9f55a6e69ba23b49e3b62766)
- node:12-alpine (Digest: sha256:1660c1b9d3fd9711eb9936e66d4656954cd14b0d2b23a2185c39587dad0239b4)
- node:12 (Digest: sha256:1e17e0fdecf65b7b86e50875ad5f11ae181a8d0351806babd61b332bc32a2c15)
- jekyll/builder:latest (Digest: sha256:98cda359955f25f18c4bcc78536cdfd30e7ded689b1f52fcd513c75cbe4e751e)
- node:10 (Digest: sha256:f9e66964ec6e9a78693929b58b3d95aadf03cc70e47f6d276d1e0943853c2bb5)
- buildpack-deps:stretch (Digest: sha256:23c6d55a4d5ad7c9476638196920d67a97702433b5b48465496af6ab3214e7e4)
- debian:9 (Digest: sha256:c6c98a905e230d779a92e6a329ff7ecad13b8ee0d21da8b013cee0df7e91c170)
- debian:8 (Digest: sha256:38a0be899b925afb5524130771850d3d8dd00619a6b50171cab4fab7d7ae8108)
- node:10-alpine (Digest: sha256:177cdb2546eb321b7127aa1c45353c5b778959c9e30da29570ff85098786d776)
- alpine:3.9 (Digest: sha256:414e0518bb9228d35e4cd5165567fb91d26c6a214e9c95899e1e056fcd349011)
- alpine:3.10 (Digest: sha256:f0e9534a598e501320957059cb2a23774b4d4072e37c7b2cf7e95b241f019e35)
- alpine:3.8 (Digest: sha256:2bb501e6173d9d006e56de5bce2720eb06396803300fe1687b58a7ff32bf4c14)
@@ -275,17 +280,17 @@ apt-get
- Python 3.5.9
- Python 3.6.11
- Python 3.7.8
- Python 3.8.3
- Python 3.8.5
- PyPy:
- PyPy 2.7.13 [PyPy 7.3.1 with GCC 7.3.1 20180303 (Red Hat 7.3.1-5)]
- PyPy 3.6.9 [PyPy 7.3.1 with GCC 7.3.1 20180303 (Red Hat 7.3.1-5)]
- node:
- node 8.17.0
- node 10.21.0
- node 12.18.2
- node 14.5.0
- node 10.22.0
- node 12.18.3
- node 14.6.0
- go:
- go 1.14.4
- AWS SAM CLI, version 0.53.0
- Homebrew on Linux (Homebrew 2.4.5
Homebrew/linuxbrew-core (git revision 799e0; last commit 2020-07-09))
- go 1.14.6
- AWS SAM CLI, version 1.0.0
- Homebrew on Linux (Homebrew 2.4.8
Homebrew/linuxbrew-core (git revision 01e06; last commit 2020-07-22))

View File

View File

@@ -57,6 +57,7 @@ echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \
"platforms;android-17" \
"platforms;android-15" \
"platforms;android-10" \
"build-tools;30.0.1" \
"build-tools;30.0.0" \
"build-tools;29.0.3" \
"build-tools;29.0.2" \
@@ -132,6 +133,7 @@ DocumentInstalledItem "Android SDK Platform 17"
DocumentInstalledItem "Android SDK Platform 15"
DocumentInstalledItem "Android SDK Platform 10"
DocumentInstalledItem "Android SDK Patch Applier v4"
DocumentInstalledItem "Android SDK Build-Tools 30.0.1"
DocumentInstalledItem "Android SDK Build-Tools 30.0.0"
DocumentInstalledItem "Android SDK Build-Tools 29.0.3"
DocumentInstalledItem "Android SDK Build-Tools 29.0.2"

View File

@@ -55,6 +55,7 @@ echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \
"platforms;android-21" \
"platforms;android-19" \
"platforms;android-17" \
"build-tools;30.0.1" \
"build-tools;30.0.0" \
"build-tools;29.0.3" \
"build-tools;29.0.2" \
@@ -122,6 +123,7 @@ DocumentInstalledItem "Android SDK Platform 21"
DocumentInstalledItem "Android SDK Platform 19"
DocumentInstalledItem "Android SDK Platform 17"
DocumentInstalledItem "Android SDK Patch Applier v4"
DocumentInstalledItem "Android SDK Build-Tools 30.0.1"
DocumentInstalledItem "Android SDK Build-Tools 30.0.0"
DocumentInstalledItem "Android SDK Build-Tools 29.0.3"
DocumentInstalledItem "Android SDK Build-Tools 29.0.2"

View File

@@ -53,6 +53,7 @@ echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \
"platforms;android-29" \
"platforms;android-28" \
"platforms;android-27" \
"build-tools;30.0.1" \
"build-tools;30.0.0" \
"build-tools;29.0.3" \
"build-tools;29.0.2" \
@@ -83,6 +84,7 @@ DocumentInstalledItem "Android SDK Platform 29"
DocumentInstalledItem "Android SDK Platform 28"
DocumentInstalledItem "Android SDK Platform 27"
DocumentInstalledItem "Android SDK Patch Applier v4"
DocumentInstalledItem "Android SDK Build-Tools 30.0.1"
DocumentInstalledItem "Android SDK Build-Tools 30.0.0"
DocumentInstalledItem "Android SDK Build-Tools 29.0.3"
DocumentInstalledItem "Android SDK Build-Tools 29.0.2"

View File

@@ -15,13 +15,15 @@ wget $TarballUrl -O $TarballPath
tar -xzvf $TarballPath -C /tmp
cd /tmp/awslabs-aws-sam-cli*
# Use python 3.7 from toolcache to install aws sam, setuptools package required for the installation
Python3Dir=$(echo /opt/hostedtoolcache/Python/3.7*/x64)
mkdir /opt/python-aws-sam-cli
cp -r /opt/hostedtoolcache/Python/3.7* /opt/python-aws-sam-cli
# Use copy of python 3.7 from toolcache to install aws sam, setuptools package required for the installation
Python3Dir=$(echo /opt/python-aws-sam-cli/3.7*/x64)
Python3BinDir="${Python3Dir}/bin"
export PATH="$Python3Dir:$Python3BinDir:$PATH"
python3 -m pip install setuptools
python3 setup.py install
sudo ln -sf ${Python3BinDir}/sam /usr/local/bin/sam
$Python3BinDir/python3 -m pip install setuptools
$Python3BinDir/python3 setup.py install
ln -sf ${Python3BinDir}/sam /usr/local/bin/sam
# Run tests to determine that the software installed as expected
echo "Testing to make sure that script performed as expected, and basic scenarios work"

View File

@@ -148,3 +148,5 @@ fi
DocumentInstalledItem "Composer ($(composer --version))"
DocumentInstalledItem "PHPUnit ($(phpunit --version))"
DocumentInstalledItem "$(openssl version)"
DocumentInstalledItem "Libssl $(dpkg -l libssl-dev | grep '^ii' | awk '{print $3}')"

View File

@@ -8,6 +8,10 @@
source $HELPER_SCRIPTS/document.sh
WriteItem "<!--- DO NOT EDIT - This markdown file is autogenerated. -->"
Announcements=$(cat $HELPER_SCRIPTS/announcements.md)
WriteItem $Announcements
AddTitle "$(lsb_release -ds)"
WriteItem "The following software is installed on machines with the $IMAGE_VERSION update."
WriteItem "***"

View File

@@ -0,0 +1,10 @@
#!/bin/bash
# Source the helpers for use with the script
source $HELPER_SCRIPTS/document.sh
# install R
sudo apt-get install -y r-base
version=$(R --version | grep "R version" | cut -d " " -f 3)
DocumentInstalledItem "R $version"

View File

@@ -0,0 +1,18 @@
#!/bin/bash
# Source the helpers for use with the script
source $HELPER_SCRIPTS/document.sh
# Install Swig
sudo apt-get install -y swig
# Run tests to determine that the software installed as expected
echo "Testing to make sure that script performed as expected, and basic scenarios work"
if ! command -v swig; then
echo "Swig was not installed"
exit 1
fi
# Document what was added to the image
echo "Lastly, documenting what we added to the metadata file"
DocumentInstalledItem "Swig $(swig -version | sed -n 2p | cut -d ' ' -f 3)"

View File

@@ -86,6 +86,11 @@
"source": "{{template_dir}}/scripts/helpers",
"destination": "{{user `helper_script_folder`}}"
},
{
"type": "file",
"source": "{{template_dir}}/announcements.md",
"destination": "{{user `helper_script_folder`}}/announcements.md"
},
{
"type": "file",
"source": "{{template_dir}}/scripts/installers",
@@ -184,6 +189,7 @@
"{{template_dir}}/scripts/installers/postgresql.sh",
"{{template_dir}}/scripts/installers/powershellcore.sh",
"{{template_dir}}/scripts/installers/ruby.sh",
"{{template_dir}}/scripts/installers/r.sh",
"{{template_dir}}/scripts/installers/rust.sh",
"{{template_dir}}/scripts/installers/julia.sh",
"{{template_dir}}/scripts/installers/sbt.sh",
@@ -196,7 +202,8 @@
"{{template_dir}}/scripts/installers/vercel.sh",
"{{template_dir}}/scripts/installers/dpkg-config.sh",
"{{template_dir}}/scripts/installers/mongodb.sh",
"{{template_dir}}/scripts/installers/rndgenerator.sh"
"{{template_dir}}/scripts/installers/rndgenerator.sh",
"{{template_dir}}/scripts/installers/swig.sh"
],
"environment_vars": [
"METADATA_FILE={{user `metadata_file`}}",
@@ -257,7 +264,7 @@
"METADATA_FILE={{user `metadata_file`}}",
"HELPER_SCRIPTS={{user `helper_script_folder`}}"
],
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
},
{
"type": "shell",

View File

@@ -89,6 +89,11 @@
"source": "{{template_dir}}/scripts/helpers",
"destination": "{{user `helper_script_folder`}}"
},
{
"type": "file",
"source": "{{template_dir}}/announcements.md",
"destination": "{{user `helper_script_folder`}}/announcements.md"
},
{
"type": "file",
"source": "{{template_dir}}/scripts/installers",
@@ -188,6 +193,7 @@
"{{template_dir}}/scripts/installers/postgresql.sh",
"{{template_dir}}/scripts/installers/powershellcore.sh",
"{{template_dir}}/scripts/installers/ruby.sh",
"{{template_dir}}/scripts/installers/r.sh",
"{{template_dir}}/scripts/installers/rust.sh",
"{{template_dir}}/scripts/installers/julia.sh",
"{{template_dir}}/scripts/installers/sbt.sh",
@@ -200,7 +206,8 @@
"{{template_dir}}/scripts/installers/vercel.sh",
"{{template_dir}}/scripts/installers/dpkg-config.sh",
"{{template_dir}}/scripts/installers/mongodb.sh",
"{{template_dir}}/scripts/installers/rndgenerator.sh"
"{{template_dir}}/scripts/installers/rndgenerator.sh",
"{{template_dir}}/scripts/installers/swig.sh"
],
"environment_vars": [
"METADATA_FILE={{user `metadata_file`}}",
@@ -261,7 +268,7 @@
"METADATA_FILE={{user `metadata_file`}}",
"HELPER_SCRIPTS={{user `helper_script_folder`}}"
],
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
},
{
"type": "shell",

View File

@@ -91,6 +91,11 @@
"source": "{{template_dir}}/scripts/helpers",
"destination": "{{user `helper_script_folder`}}"
},
{
"type": "file",
"source": "{{template_dir}}/announcements.md",
"destination": "{{user `helper_script_folder`}}/announcements.md"
},
{
"type": "file",
"source": "{{template_dir}}/scripts/installers",
@@ -190,6 +195,7 @@
"{{template_dir}}/scripts/installers/postgresql.sh",
"{{template_dir}}/scripts/installers/powershellcore.sh",
"{{template_dir}}/scripts/installers/ruby.sh",
"{{template_dir}}/scripts/installers/r.sh",
"{{template_dir}}/scripts/installers/rust.sh",
"{{template_dir}}/scripts/installers/julia.sh",
"{{template_dir}}/scripts/installers/sbt.sh",
@@ -201,7 +207,8 @@
"{{template_dir}}/scripts/installers/vcpkg.sh",
"{{template_dir}}/scripts/installers/vercel.sh",
"{{template_dir}}/scripts/installers/dpkg-config.sh",
"{{template_dir}}/scripts/installers/rndgenerator.sh"
"{{template_dir}}/scripts/installers/rndgenerator.sh",
"{{template_dir}}/scripts/installers/swig.sh"
],
"environment_vars": [
"METADATA_FILE={{user `metadata_file`}}",
@@ -262,7 +269,7 @@
"METADATA_FILE={{user `metadata_file`}}",
"HELPER_SCRIPTS={{user `helper_script_folder`}}"
],
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
},
{
"type": "shell",

View File

@@ -1,18 +1,18 @@
# macOS info
- System Version: macOS 10.15.5 (19F101)
- Kernel Version: Darwin 19.5.0
- System Version: macOS 10.15.6 (19G73)
- Kernel Version: Darwin 19.6.0
- System Integrity Protection: Enabled
- Image Version: 20200707.3
- Image Version: 20200716.2
## Installed Software
### Language and Runtime
- Java 1.7: (Zulu 7.38.0.11-CA-macosx) (build 1.7.0_262-b10)
- Java 1.8: (AdoptOpenJDK)(build 1.8.0_252-b09) (default)
- Java 11: AdoptOpenJDK (build 11.0.7+10)
- Java 1.8: (AdoptOpenJDK)(build 1.8.0_262-b10) (default)
- Java 11: AdoptOpenJDK (build 11.0.8+10)
- Java 12: AdoptOpenJDK (build 12.0.2+10)
- Java 13: AdoptOpenJDK (build 13.0.2+8)
- Java 14: AdoptOpenJDK (build 14.0.1+7)
- Rust 1.44.1
- Java 14: AdoptOpenJDK (build 14.0.2+12)
- Rust 1.45.0
- Clang/LLVM 10.0.0
- gcc-8 (Homebrew GCC 8.4.0_1) 8.4.0
- gcc-9 (Homebrew GCC 9.3.0) 9.3.0
@@ -23,25 +23,25 @@
- NVM - Cached node versions: v6.17.1 v8.17.0 v10.21.0 v12.18.2 v13.14.0 v14.5.0
- PowerShell 7.0.2
- Python 2.7.17
- Python 3.7.8
- Python 3.8.4
- Ruby 2.6.6p146
- .NET SDK 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.602 2.1.603 2.1.604 2.1.607 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 3.0.100 3.0.101 3.0.102 3.0.103 3.1.100 3.1.101 3.1.200 3.1.201 3.1.300 3.1.301
- Go 1.14.4
- PHP 7.4.7
- .NET SDK 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.602 2.1.603 2.1.604 2.1.607 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 3.0.100 3.0.101 3.0.102 3.0.103 3.1.100 3.1.101 3.1.200 3.1.201 3.1.300 3.1.301 3.1.302
- Go 1.14.5
- PHP 7.4.8
- julia 1.4.2
### Package Management
- Rustup 1.22.0
- Rustup 1.22.1
- Vcpkg 2020.06.15
- Bundler version 2.1.4
- Carthage 0.35.0
- CocoaPods 1.9.3
- Homebrew 2.4.4
- Homebrew 2.4.7
- NPM 6.14.5
- Yarn 1.22.4
- NuGet 5.6.0.6489
- Pip 19.3.1 (python 2.7)
- Pip 20.0.2 (python 3.7)
- Pip 20.1.1 (python 3.8)
- Miniconda 4.8.3
- RubyGems 3.1.4
@@ -54,7 +54,7 @@
- Curl 7.71.1
- Git: 2.27.0
- Git LFS: 2.11.0
- GitHub CLI: 0.10.1
- GitHub CLI: 0.11.0
- Hub CLI: 2.14.2
- GNU Wget 1.20.3
- Subversion (SVN) 1.14.0
@@ -62,13 +62,13 @@
- GNU parallel 20200622
- OpenSSL 1.0.2t 10 Sep 2019 `(/usr/local/opt/openssl -> /usr/local/Cellar/openssl/1.0.2t)`
- jq 1.6
- gpg (GnuPG) 2.2.20
- gpg (GnuPG) 2.2.21
- psql (PostgreSQL) 12.3
- PostgreSQL 12.3
- aria2 1.35.0
- azcopy 10.4.3
- azcopy 10.5.0
- zstd 1.4.5
- bazel 3.3.1
- bazel 3.4.1
- bazelisk v1.5.0
- helm v3.2.4+g0ad800e
- virtualbox 6.1.10r138449
@@ -76,28 +76,31 @@
- mongod v4.2.8
- Vagrant 2.2.9
- 7-Zip 16.02
- Newman 5.1.2
### Tools
- Fastlane 2.151.1
- Fastlane 2.152.0
- Cmake 3.17.3
- App Center CLI 2.6.1
- Azure CLI 2.8.0
- AWS CLI 2.0.29
- App Center CLI 2.6.3
- Azure CLI 2.9.1
- AWS CLI 2.0.31
- AWS SAM CLI 0.53.0
- Aliyun CLI 3.0.50
- GHCup v0.1.5-p2
- AWS Session Manager CLI 1.1.61.0
- Aliyun CLI 3.0.53
- GHCup v0.1.6
- GHC 8.10.1
- Cabal 3.2.0.0
- Stack 2.3.1
### Browsers
- Safari 13.1.1 (15609.2.9.1.2)
- SafariDriver 13.1.1 (15609.2.9.1.2)
- Google Chrome 83.0.4103.116
- ChromeDriver 83.0.4103.39
- Microsoft Edge 83.0.478.58
- MSEdgeDriver 83.0.478.61
- Mozilla Firefox 78.0.1
- Safari 13.1.2 (15609.3.5.1.3)
- SafariDriver 13.1.2 (15609.3.5.1.3)
- Google Chrome 84.0.4147.89
- ChromeDriver 84.0.4147.30
- Microsoft Edge 83.0.478.64
- MSEdgeDriver 83.0.478.64
- Mozilla Firefox 78.0.2
- geckodriver 0.26.0
### Cached Tools
@@ -170,18 +173,18 @@
- NUnit 3.6.1
### Xcode
| Version | Build | Path |
| -------------- | -------- | --------------------------------- |
| 12.0 (beta) | 12A6163b | /Applications/Xcode_12_beta.app |
| 11.6 (beta) | 11N700h | /Applications/Xcode_11.6_beta.app |
| 11.5 (default) | 11E608c | /Applications/Xcode_11.5.app |
| 11.4.1 | 11E503a | /Applications/Xcode_11.4.1.app |
| 11.4 | 11E146 | /Applications/Xcode_11.4.app |
| 11.3.1 | 11C505 | /Applications/Xcode_11.3.1.app |
| 11.2.1 | 11B500 | /Applications/Xcode_11.2.1.app |
| 11.1 | 11A1027 | /Applications/Xcode_11.1.app |
| 11.0 | 11A420a | /Applications/Xcode_11.app |
| 10.3 | 10G8 | /Applications/Xcode_10.3.app |
| Version | Build | Path |
| -------------- | -------- | ------------------------------- |
| 12.0 (beta) | 12A6163b | /Applications/Xcode_12_beta.app |
| 11.6 (default) | 11E708 | /Applications/Xcode_11.6.app |
| 11.5 | 11E608c | /Applications/Xcode_11.5.app |
| 11.4.1 | 11E503a | /Applications/Xcode_11.4.1.app |
| 11.4 | 11E146 | /Applications/Xcode_11.4.app |
| 11.3.1 | 11C505 | /Applications/Xcode_11.3.1.app |
| 11.2.1 | 11B500 | /Applications/Xcode_11.2.1.app |
| 11.1 | 11A1027 | /Applications/Xcode_11.1.app |
| 11.0 | 11A420a | /Applications/Xcode_11.app |
| 10.3 | 10G8 | /Applications/Xcode_10.3.app |
#### Xcode Support Tools
- Nomad CLI 3.1.4
@@ -243,7 +246,7 @@
| iOS 13.1 | 11.1 | iPhone 8<br>iPhone 8 Plus<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPad Pro (9.7-inch)<br>iPad Pro (11-inch)<br>iPad Pro (12.9-inch) (3rd generation)<br>iPad Air (3rd generation) |
| iOS 13.2 | 11.2.1 | iPhone 8<br>iPhone 8 Plus<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPad Pro (9.7-inch)<br>iPad Pro (11-inch)<br>iPad Pro (12.9-inch) (3rd generation)<br>iPad Air (3rd generation) |
| iOS 13.3 | 11.3.1 | iPhone 8<br>iPhone 8 Plus<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPad Pro (9.7-inch)<br>iPad Pro (11-inch)<br>iPad Pro (12.9-inch) (3rd generation)<br>iPad Air (3rd generation) |
| iOS 13.4 | 11.4<br>11.4.1 | iPhone 8<br>iPhone 8 Plus<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone SE (2nd generation)<br>iPad Pro (9.7-inch)<br>iPad (7th generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Air (3rd generation) |
| iOS 13.4 | 11.4<br>11.4.1 | iPhone 8<br>iPhone 8 Plus<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPad Pro (9.7-inch)<br>iPad (7th generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Air (3rd generation)<br>iPhone SE (2nd generation) |
| iOS 13.5 | 11.5 | iPhone 8<br>iPhone 8 Plus<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone SE (2nd generation)<br>iPad Pro (9.7-inch)<br>iPad (7th generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Air (3rd generation) |
| iOS 13.6 | 11.6 | iPhone 8<br>iPhone 8 Plus<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone SE (2nd generation)<br>iPad Pro (9.7-inch)<br>iPad (7th generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Air (3rd generation) |
| iOS 14.0 | 12.0 | iPhone 8<br>iPhone 8 Plus<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone SE (2nd generation)<br>iPad Pro (9.7-inch)<br>iPad (7th generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Air (3rd generation) |
@@ -279,7 +282,7 @@
| android-27 | Android SDK Platform 27, Revision 3 |
| android-28 | Android SDK Platform 28, Revision 6 |
| android-29 | Android SDK Platform 29, Revision 4 |
| android-30 | Android SDK Platform 30, Revision 1 |
| android-30 | Android SDK Platform 30, Revision 2 |
#### Android SDK Build-Tools
| Package Name | Description |
@@ -309,6 +312,7 @@
| build-tools-29.0.2 | Android SDK Build-Tools, Revision 29.0.2 |
| build-tools-29.0.3 | Android SDK Build-Tools, Revision 29.0.3 |
| build-tools-30.0.0 | Android SDK Build-Tools, Revision 30.0.0 |
| build-tools-30.0.1 | Android SDK Build-Tools, Revision 30.0.1 |
#### Android NDKs
| Version | Path |

View File

@@ -84,11 +84,26 @@
"source": "{{ template_dir }}/scripts/SoftwareReport",
"destination": "{{user `image_folder`}}"
},
{
"type": "file",
"source": "{{ template_dir }}/announcements.md",
"destination": "{{user `image_folder`}}/SoftwareReport/announcements.md"
},
{
"type": "file",
"source": "{{ template_dir }}/scripts/Tests",
"destination": "{{user `image_folder`}}"
},
{
"type": "file",
"source": "{{template_dir}}/toolsets/toolcache-2016.json",
"destination": "{{user `root_folder`}}/toolcache.json"
},
{
"type": "file",
"source": "{{template_dir}}/toolsets/toolset-2016.json",
"destination": "{{user `toolset_json_path`}}"
},
{
"type": "windows-shell",
"inline": [
@@ -107,10 +122,13 @@
{
"type": "powershell",
"environment_vars": [
"ImageVersion={{user `image_version`}}"
"ImageVersion={{user `image_version`}}",
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
],
"scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Initialize-VM.ps1"
"{{ template_dir }}/scripts/Installers/Install-PowerShellModules.ps1",
"{{ template_dir }}/scripts/Installers/Initialize-VM.ps1"
],
"execution_policy": "unrestricted"
},
@@ -170,13 +188,7 @@
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Docker.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Update-DockerImages.ps1"
"{{ template_dir }}/scripts/Installers/Update-DockerImages.ps1"
]
},
{
@@ -185,8 +197,11 @@
0,
3010
],
"environment_vars":[
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
],
"scripts":[
"{{ template_dir }}/scripts/Installers/Windows2016/Install-VS2017.ps1"
"{{ template_dir }}/scripts/Installers/Install-VS.ps1"
],
"elevated_user": "{{user `install_user`}}",
"elevated_password": "{{user `install_password`}}"
@@ -323,16 +338,6 @@
"{{ template_dir }}/scripts/Installers/Install-Packer.ps1"
]
},
{
"type": "file",
"source": "{{template_dir}}/toolsets/toolcache-2016.json",
"destination": "{{user `root_folder`}}/toolcache.json"
},
{
"type": "file",
"source": "{{template_dir}}/toolsets/toolset-2016.json",
"destination": "{{user `toolset_json_path`}}"
},
{
"type": "powershell",
"environment_vars":[
@@ -480,13 +485,13 @@
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Install-AWS.ps1"
"{{ template_dir }}/scripts/Installers/Install-R.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Install-AWS-SAM.ps1"
"{{ template_dir }}/scripts/Installers/Install-AWS.ps1"
]
},
{
@@ -656,70 +661,12 @@
"type": "windows-restart",
"restart_timeout": "30m"
},
{
"type": "powershell",
"environment_vars":[
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
],
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AzureModules.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AzureCli.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AWS-SAM.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AzureDevOpsCli.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AzCopy.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Svn.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Bazel.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AliyunCli.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-DACFx.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-DotnetSDK.ps1"
]
},
{
"type": "powershell",
"scripts":[
@@ -738,12 +685,6 @@
"{{ template_dir }}/scripts/Installers/Validate-Stack.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AzureCosmosDbEmulator.ps1"
]
},
{
"type": "powershell",
"scripts":[
@@ -781,6 +722,7 @@
],
"environment_vars":[
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}",
"ROOT_FOLDER={{user `root_folder`}}"
]
},
@@ -788,6 +730,9 @@
"type": "powershell",
"inline": [
"pwsh -File '{{user `image_folder`}}\\SoftwareReport\\SoftwareReport.Generator.ps1'"
],
"environment_vars":[
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
]
},
{

View File

@@ -1,33 +1,33 @@
# Microsoft Windows Server 2016 Datacenter
- OS Version: 10.0.14393 Build 3750
- Image Version: 20200706.1
- OS Version: 10.0.14393 Build 3808
- Image Version: 20200720.1
## Installed Software
### Language and Runtime
- Java 1.7.0_232
- Java 1.8.0_252 (default)
- Java 11.0.7
- Java 1.8.0_262 (default)
- Java 11.0.8
- Java 13.0.2
- Rust 1.44.1
- Rust 1.45.0
- Python 3.7.8
- Ruby 2.5.8p224
- Go 1.14.4
- PHP 7.4.7
- Julia 1.4.2
- Perl 5.30.2
- PowerShell 7.0.2
- PowerShell 7.0.3
- Node 12.18.2
### Package Management
- Chocolatey 0.10.15
- Vcpkg 2020.02.04
- Vcpkg 2020.06.15
- NPM 6.14.5
- Yarn 1.22.4
- pip 20.1.1 (python 3.7)
- Miniconda 4.6.14
- RubyGems 3.1.4
- Helm 3.2.4
- Composer 1.10.8
- Composer 1.10.9
- NuGet 5.6.0.6591
### Project Management
@@ -37,26 +37,27 @@
- sbt 1.3.13
### Tools
- Azure CosmosDb Emulator 2.11.1.0
- Bazel 3.3.1
- Azure CosmosDb Emulator 2.11.2.0
- Bazel 3.4.1
- Bazelisk 1.5.0
- CMake 3.17.3
- CMake 3.18.0
- Docker 19.03.5
- Docker-compose 1.26.0
- Git 2.27.0
- Git LFS 2.11.0
- InnoSetup 6.0.5
- jq 1.6
- Kubectl 1.18.5
- Kubectl 1.18.6
- Kind 0.8.1
- Mingw-w64 8.1.0
- MySQL 5.7.21.0
- Mercurial 5.0
- NSIS 3.5.0.20200106
- Newman 5.1.2
- OpenSSL 1.1.1
- Packer 1.6.0
- SQLPS 1.0
- SQLServer PS 21.1.18221
- SQLServer PS 21.1.18226
- Subversion (SVN) 1.8.17
- ghc 8.10.1
- Cabal 3.2.0.0
@@ -67,27 +68,34 @@
- 7zip 19.00
### CLI Tools
- Azure CLI 2.8.0
- azcopy 10.4.3
- Azure CLI 2.9.1
- azcopy 10.5.0
- Azure DevOps CLI extension 0.18.0
- AWS CLI 2.0.28
- AWS CLI 2.0.31
- AWS SAM CLI 0.53.0
- Alibaba CLI 3.0.26
- AWS Session Manager CLI 1.1.61.0
- Alibaba Cloud CLI 3.0.26
- Cloud Foundry CLI 6.51.0
- Hub CLI 2.14.2
- Google Cloud SDK 299.0.0
- Google Cloud SDK 301.0.0
### Rust packages:
- bindgen 0.54.1
- cbindgen 0.14.3
- cargo-audit 0.12.0
- cargo-outdated v0.9.11
### Browsers and webdrivers
- Google Chrome 83.0.4103.116
- Chrome Driver 83.0.4103.39
- Microsoft Edge 83.0.478.58
- Microsoft Edge Driver 83.0.478.58
- Mozilla Firefox 78.0.1
- Google Chrome 84.0.4147.89
- Chrome Driver 84.0.4147.30
- Microsoft Edge 84.0.522.40
- Microsoft Edge Driver 84.0.522.40
- Mozilla Firefox 78.0.2
- Gecko Driver 0.26.0
- IE Driver 3.150.1.0
### MSYS2
- Pacman 5.2.1
- Pacman 5.2.2
```
Location: C:\msys64
@@ -130,8 +138,8 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
| ------- | ------------ |
| 8.17.0 | x64 |
| 10.21.0 | x64 |
| 12.18.1 | x64 |
| 14.4.0 | x64 |
| 12.18.2 | x64 |
| 14.5.0 | x64 |
#### Python
@@ -141,7 +149,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
| 3.5.4 | x64, x86 |
| 3.6.8 | x64, x86 |
| 3.7.8 (Default) | x64, x86 |
| 3.8.3 | x64, x86 |
| 3.8.4 | x64, x86 |
#### Ruby
@@ -178,7 +186,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
### Visual Studio Enterprise 2017
| Name | Version | Path |
| ----------------------------- | --------------- | -------------------------------------------------------------- |
| Visual Studio Enterprise 2017 | 15.9.28307.1177 | C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise |
| Visual Studio Enterprise 2017 | 15.9.28307.1216 | C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise |
#### Workloads, components and extensions:
@@ -253,9 +261,9 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
| Microsoft.Net.ComponentGroup.4.7.DeveloperTools | 15.6.27406.0 |
| Microsoft.Net.ComponentGroup.DevelopmentPrerequisites | 15.8.27825.0 |
| Microsoft.Net.ComponentGroup.TargetingPacks.Common | 15.6.27406.0 |
| Microsoft.Net.Core.Component.SDK.1x | 15.6.27406.0 |
| Microsoft.Net.Core.Component.SDK.1x | 15.9.28307.1209 |
| Microsoft.Net.Core.Component.SDK.2.1 | 15.8.27924.0 |
| Microsoft.NetCore.1x.ComponentGroup.Web | 15.6.27406.0 |
| Microsoft.NetCore.1x.ComponentGroup.Web | 15.9.28307.1209 |
| Microsoft.NetCore.ComponentGroup.DevelopmentTools.2.1 | 15.8.27924.0 |
| Microsoft.NetCore.ComponentGroup.Web.2.1 | 15.8.27924.0 |
| Microsoft.VisualStudio.Component.AppInsights.Tools | 15.8.27825.0 |
@@ -428,20 +436,20 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
### .NET Core SDK
`Location C:\Program Files\dotnet\sdk`
- 1.1.14 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.508 2.1.509 2.1.510 2.1.511 2.1.512 2.1.513 2.1.514 2.1.515 2.1.602 2.1.603 2.1.604 2.1.605 2.1.606 2.1.607 2.1.608 2.1.609 2.1.610 2.1.611 2.1.612 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 3.1.100 3.1.101 3.1.102 3.1.103 3.1.104 3.1.105 3.1.200 3.1.201 3.1.202 3.1.300 3.1.301
- 1.1.14 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.508 2.1.509 2.1.510 2.1.511 2.1.512 2.1.513 2.1.514 2.1.515 2.1.516 2.1.602 2.1.603 2.1.604 2.1.605 2.1.606 2.1.607 2.1.608 2.1.609 2.1.610 2.1.611 2.1.612 2.1.613 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 3.1.100 3.1.101 3.1.102 3.1.103 3.1.104 3.1.105 3.1.106 3.1.200 3.1.201 3.1.202 3.1.300 3.1.301 3.1.302
### .NET Core Runtime
`Location: C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All`
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20
`Location: C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App`
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6
`Location: C:\Program Files\dotnet\shared\Microsoft.NETCore.App`
- 1.0.16 1.1.13 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5
- 1.0.16 1.1.13 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6
`Location: C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App`
- 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5
- 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6
### .NET Framework
`Type: Developer Pack`
@@ -479,7 +487,7 @@ All other versions are saved but not installed.
| android-27 | Android SDK Platform 27, Revision 3 |
| android-28 | Android SDK Platform 28, Revision 6 |
| android-29 | Android SDK Platform 29, Revision 4 |
| android-30 | Android SDK Platform 30, Revision 1 |
| android-30 | Android SDK Platform 30, Revision 2 |
### Android SDK Build-Tools
`Location C:\Program Files (x86)\Android\android-sdk\build-tools`

View File

@@ -84,11 +84,26 @@
"source": "{{ template_dir }}/scripts/SoftwareReport",
"destination": "{{user `image_folder`}}"
},
{
"type": "file",
"source": "{{ template_dir }}/announcements.md",
"destination": "{{user `image_folder`}}/SoftwareReport/announcements.md"
},
{
"type": "file",
"source": "{{ template_dir }}/scripts/Tests",
"destination": "{{user `image_folder`}}"
},
{
"type": "file",
"source": "{{template_dir}}/toolsets/toolcache-2019.json",
"destination": "{{user `root_folder`}}/toolcache.json"
},
{
"type": "file",
"source": "{{template_dir}}/toolsets/toolset-2019.json",
"destination": "{{user `toolset_json_path`}}"
},
{
"type": "windows-shell",
"inline": [
@@ -107,10 +122,13 @@
{
"type": "powershell",
"environment_vars": [
"ImageVersion={{user `image_version`}}"
"ImageVersion={{user `image_version`}}",
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
],
"scripts":[
"{{ template_dir }}/scripts/Installers/Windows2019/Initialize-VM.ps1"
"{{ template_dir }}/scripts/Installers/Install-PowerShellModules.ps1",
"{{ template_dir }}/scripts/Installers/Initialize-VM.ps1"
],
"execution_policy": "unrestricted"
},
@@ -178,13 +196,7 @@
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Docker.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Windows2019/Update-DockerImages.ps1"
"{{ template_dir }}/scripts/Installers/Update-DockerImages.ps1"
]
},
{
@@ -193,8 +205,11 @@
0,
3010
],
"environment_vars":[
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
],
"scripts":[
"{{ template_dir }}/scripts/Installers/Windows2019/Install-VS2019.ps1"
"{{ template_dir }}/scripts/Installers/Install-VS.ps1"
],
"elevated_user": "{{user `install_user`}}",
"elevated_password": "{{user `install_password`}}"
@@ -298,16 +313,6 @@
"{{ template_dir }}/scripts/Installers/Install-Packer.ps1"
]
},
{
"type": "file",
"source": "{{template_dir}}/toolsets/toolcache-2019.json",
"destination": "{{user `root_folder`}}/toolcache.json"
},
{
"type": "file",
"source": "{{template_dir}}/toolsets/toolset-2019.json",
"destination": "{{user `toolset_json_path`}}"
},
{
"type": "powershell",
"environment_vars":[
@@ -455,13 +460,13 @@
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Install-AWS.ps1"
"{{ template_dir }}/scripts/Installers/Install-R.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Install-AWS-SAM.ps1"
"{{ template_dir }}/scripts/Installers/Install-AWS.ps1"
]
},
{
@@ -655,58 +660,12 @@
"type": "windows-restart",
"restart_timeout": "10m"
},
{
"type": "powershell",
"environment_vars":[
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
],
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AzureModules.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AzureCli.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AWS-SAM.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AzureDevOpsCli.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AzCopy.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Svn.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-DACFx.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-DotnetSDK.ps1"
]
},
{
"type": "powershell",
"scripts":[
@@ -725,12 +684,6 @@
"{{ template_dir }}/scripts/Installers/Validate-Stack.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AzureCosmosDbEmulator.ps1"
]
},
{
"type": "powershell",
"scripts":[
@@ -749,18 +702,6 @@
"{{ template_dir }}/scripts/Installers/Validate-VSWhere.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-Bazel.ps1"
]
},
{
"type": "powershell",
"scripts":[
"{{ template_dir }}/scripts/Installers/Validate-AliyunCli.ps1"
]
},
{
"type": "powershell",
"scripts":[
@@ -780,6 +721,7 @@
],
"environment_vars":[
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}",
"ROOT_FOLDER={{user `root_folder`}}"
]
},
@@ -787,6 +729,9 @@
"type": "powershell",
"inline": [
"pwsh -File '{{user `image_folder`}}\\SoftwareReport\\SoftwareReport.Generator.ps1'"
],
"environment_vars":[
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
]
},
{

View File

@@ -1,33 +1,36 @@
# Microsoft Windows Server 2019 Datacenter
- OS Version: 10.0.17763 Build 1282
- Image Version: 20200706.1
- OS Version: 10.0.17763 Build 1339
- Image Version: 20200720.1
## Enabled windows optional features
- Windows Subsystem for Linux
## Installed Software
### Language and Runtime
- Java 1.7.0_232
- Java 1.8.0_252 (default)
- Java 11.0.7
- Java 1.8.0_262 (default)
- Java 11.0.8
- Java 13.0.2
- Rust 1.44.1
- Rust 1.45.0
- Python 3.7.8
- Ruby 2.5.8p224
- Go 1.14.4
- PHP 7.4.7
- Julia 1.4.2
- Perl 5.30.2
- PowerShell 7.0.2
- PowerShell 7.0.3
- Node 12.18.2
### Package Management
- Chocolatey 0.10.15
- Vcpkg 2020.02.04
- Vcpkg 2020.06.15
- NPM 6.14.5
- Yarn 1.22.4
- pip 20.1.1 (python 3.7)
- Miniconda 4.6.14
- RubyGems 3.1.4
- Helm 3.2.4
- Composer 1.10.8
- Composer 1.10.9
- NuGet 5.6.0.6591
### Project Management
@@ -37,26 +40,27 @@
- sbt 1.3.13
### Tools
- Azure CosmosDb Emulator 2.11.1.0
- Bazel 3.3.1
- Azure CosmosDb Emulator 2.11.2.0
- Bazel 3.4.1
- Bazelisk 1.5.0
- CMake 3.17.3
- CMake 3.18.0
- Docker 19.03.5
- Docker-compose 1.26.0
- Git 2.27.0
- Git LFS 2.11.0
- InnoSetup 6.0.5
- jq 1.6
- Kubectl 1.18.5
- Kubectl 1.18.6
- Kind 0.8.1
- Mingw-w64 8.1.0
- MySQL 5.7.21.0
- Mercurial 5.0
- NSIS 3.5.0.20200106
- Newman 5.1.2
- OpenSSL 1.1.1
- Packer 1.6.0
- SQLPS 1.0
- SQLServer PS 21.1.18221
- SQLServer PS 21.1.18226
- Subversion (SVN) 1.8.17
- ghc 8.10.1
- Cabal 3.2.0.0
@@ -67,27 +71,34 @@
- 7zip 19.00
### CLI Tools
- Azure CLI 2.8.0
- azcopy 10.4.3
- Azure CLI 2.9.1
- azcopy 10.5.0
- Azure DevOps CLI extension 0.18.0
- AWS CLI 2.0.28
- AWS CLI 2.0.31
- AWS SAM CLI 0.53.0
- Alibaba CLI 3.0.26
- AWS Session Manager CLI 1.1.61.0
- Alibaba Cloud CLI 3.0.26
- Cloud Foundry CLI 6.51.0
- Hub CLI 2.14.2
- Google Cloud SDK 299.0.0
- Google Cloud SDK 301.0.0
### Rust packages:
- bindgen 0.54.1
- cbindgen 0.14.3
- cargo-audit 0.12.0
- cargo-outdated v0.9.11
### Browsers and webdrivers
- Google Chrome 83.0.4103.116
- Chrome Driver 83.0.4103.39
- Microsoft Edge 83.0.478.58
- Microsoft Edge Driver 83.0.478.58
- Mozilla Firefox 78.0.1
- Google Chrome 84.0.4147.89
- Chrome Driver 84.0.4147.30
- Microsoft Edge 84.0.522.40
- Microsoft Edge Driver 84.0.522.40
- Mozilla Firefox 78.0.2
- Gecko Driver 0.26.0
- IE Driver 3.150.1.0
### MSYS2
- Pacman 5.2.1
- Pacman 5.2.2
```
Location: C:\msys64
@@ -130,8 +141,8 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
| ------- | ------------ |
| 8.17.0 | x64 |
| 10.21.0 | x64 |
| 12.18.1 | x64 |
| 14.4.0 | x64 |
| 12.18.2 | x64 |
| 14.5.0 | x64 |
#### Python
@@ -141,7 +152,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
| 3.5.4 | x64, x86 |
| 3.6.8 | x64, x86 |
| 3.7.8 (Default) | x64, x86 |
| 3.8.3 | x64, x86 |
| 3.8.4 | x64, x86 |
#### Ruby
@@ -178,13 +189,13 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
### Visual Studio Enterprise 2019
| Name | Version | Path |
| ----------------------------- | -------------- | -------------------------------------------------------------- |
| Visual Studio Enterprise 2019 | 16.6.30225.117 | C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise |
| Visual Studio Enterprise 2019 | 16.6.30309.148 | C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise |
#### Workloads, components and extensions:
| Package | version |
| ------------------------------------------------------------------------- | -------------- |
| Component.Android.NDK.R16B | 16.6.30225.117 |
| Component.Android.NDK.R16B | 16.6.30309.148 |
| Component.Android.SDK25.Private | 16.0.28625.61 |
| Component.Android.SDK28 | 16.2.29003.222 |
| Component.Ant | 1.9.3.8 |
@@ -234,10 +245,10 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
| Microsoft.Net.ComponentGroup.4.7.DeveloperTools | 16.3.29207.166 |
| Microsoft.Net.ComponentGroup.DevelopmentPrerequisites | 16.3.29207.166 |
| Microsoft.Net.ComponentGroup.TargetingPacks.Common | 16.0.28516.191 |
| Microsoft.Net.Core.Component.SDK.2.1 | 16.6.30202.64 |
| Microsoft.Net.Core.Component.SDK.2.1 | 16.6.30309.148 |
| Microsoft.NetCore.Component.DevelopmentTools | 16.5.29721.120 |
| Microsoft.NetCore.Component.Runtime.3.1 | 16.6.30202.64 |
| Microsoft.NetCore.Component.SDK | 16.6.30202.64 |
| Microsoft.NetCore.Component.Runtime.3.1 | 16.6.30309.148 |
| Microsoft.NetCore.Component.SDK | 16.6.30309.148 |
| Microsoft.NetCore.Component.Web | 16.5.29721.120 |
| Microsoft.VisualStudio.Component.AppInsights.Tools | 16.5.29515.121 |
| Microsoft.VisualStudio.Component.AspNet45 | 16.0.28315.86 |
@@ -405,20 +416,20 @@ Note: MSYS2 is pre-installed on image but not added to PATH.
### .NET Core SDK
`Location C:\Program Files\dotnet\sdk`
- 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.508 2.1.509 2.1.510 2.1.511 2.1.512 2.1.513 2.1.514 2.1.515 2.1.602 2.1.603 2.1.604 2.1.605 2.1.606 2.1.607 2.1.608 2.1.609 2.1.610 2.1.611 2.1.612 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 3.1.100 3.1.101 3.1.102 3.1.103 3.1.104 3.1.105 3.1.200 3.1.201 3.1.202 3.1.300 3.1.301
- 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.508 2.1.509 2.1.510 2.1.511 2.1.512 2.1.513 2.1.514 2.1.515 2.1.516 2.1.602 2.1.603 2.1.604 2.1.605 2.1.606 2.1.607 2.1.608 2.1.609 2.1.610 2.1.611 2.1.612 2.1.613 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 3.1.100 3.1.101 3.1.102 3.1.103 3.1.104 3.1.105 3.1.106 3.1.200 3.1.201 3.1.202 3.1.300 3.1.301 3.1.302
### .NET Core Runtime
`Location: C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All`
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20
`Location: C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App`
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6
`Location: C:\Program Files\dotnet\shared\Microsoft.NETCore.App`
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5
- 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.17 2.1.18 2.1.19 2.1.20 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6
`Location: C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App`
- 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5
- 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6
### .NET Framework
`Type: Developer Pack`
@@ -456,7 +467,7 @@ All other versions are saved but not installed.
| android-27 | Android SDK Platform 27, Revision 3 |
| android-28 | Android SDK Platform 28, rev 6, Revision 6 |
| android-29 | Android SDK Platform 29, Revision 4 |
| android-30 | Android SDK Platform 30, Revision 1 |
| android-30 | Android SDK Platform 30, Revision 2 |
### Android SDK Build-Tools
`Location C:\Program Files (x86)\Android\android-sdk\build-tools`

View File

View File

@@ -5,6 +5,7 @@ param()
. $PSScriptRoot\InstallHelpers.ps1
. $PSScriptRoot\ChocoHelpers.ps1
. $PSScriptRoot\TestsHelpers.ps1
. $PSScriptRoot\VisualStudioHelpers.ps1
Export-ModuleMember -Function @(
'Test-MachinePath'
@@ -33,5 +34,9 @@ Export-ModuleMember -Function @(
'Get-WhichTool'
'Get-EnvironmentVariable'
'Invoke-PesterTests'
'Get-VsCatalogJsonPath'
'Get-VisualStudioPath'
'Install-AndroidSDKPackages'
'Get-VisualStudioPackages'
'Get-VisualStudioComponents'
)

View File

@@ -63,68 +63,6 @@ function Install-Binary
}
}
Function Install-VisualStudio
{
<#
.SYNOPSIS
A helper function to install Visual Studio.
.DESCRIPTION
Prepare system environment, and install Visual Studio bootstrapper with selected workloads.
.PARAMETER BootstrapperUrl
The URL from which the bootstrapper will be downloaded. Required parameter.
.PARAMETER WorkLoads
The string that contain workloads that will be passed to the installer.
#>
Param
(
[Parameter(Mandatory)]
[String] $BootstrapperUrl,
[String] $WorkLoads
)
Write-Host "Downloading Bootstrapper ..."
$BootstrapperName = [IO.Path]::GetFileName($BootstrapperUrl)
$bootstrapperFilePath = Start-DownloadWithRetry -Url $BootstrapperUrl -Name $BootstrapperName
try
{
Write-Host "Enable short name support on Windows needed for Xamarin Android AOT, defaults appear to have been changed in Azure VMs"
$shortNameEnableProcess = Start-Process -FilePath fsutil.exe -ArgumentList ('8dot3name', 'set', '0') -Wait -PassThru
$shortNameEnableExitCode = $shortNameEnableProcess.ExitCode
if ($shortNameEnableExitCode -ne 0)
{
Write-Host "Enabling short name support on Windows failed. This needs to be enabled prior to VS 2017 install for Xamarin Andriod AOT to work."
exit $shortNameEnableExitCode
}
Write-Host "Starting Install ..."
$bootstrapperArgumentList = ('/c', $bootstrapperFilePath, $WorkLoads, '--quiet', '--norestart', '--wait', '--nocache' )
$process = Start-Process -FilePath cmd.exe -ArgumentList $bootstrapperArgumentList -Wait -PassThru
$exitCode = $process.ExitCode
if ($exitCode -eq 0 -or $exitCode -eq 3010)
{
Write-Host "Installation successful"
return $exitCode
}
else
{
Write-Host "Non zero exit code returned by the installation process : $exitCode"
exit $exitCode
}
}
catch
{
Write-Host "Failed to install Visual Studio; $($_.Exception.Message)"
exit -1
}
}
function Stop-SvcWithErrHandling
{
<#

View File

@@ -0,0 +1,80 @@
Function Install-VisualStudio
{
<#
.SYNOPSIS
A helper function to install Visual Studio.
.DESCRIPTION
Prepare system environment, and install Visual Studio bootstrapper with selected workloads.
.PARAMETER BootstrapperUrl
The URL from which the bootstrapper will be downloaded. Required parameter.
.PARAMETER WorkLoads
The string that contain workloads that will be passed to the installer.
#>
Param
(
[Parameter(Mandatory)]
[String] $BootstrapperUrl,
[String] $WorkLoads
)
Write-Host "Downloading Bootstrapper ..."
$BootstrapperName = [IO.Path]::GetFileName($BootstrapperUrl)
$bootstrapperFilePath = Start-DownloadWithRetry -Url $BootstrapperUrl -Name $BootstrapperName
try
{
Write-Host "Enable short name support on Windows needed for Xamarin Android AOT, defaults appear to have been changed in Azure VMs"
$shortNameEnableProcess = Start-Process -FilePath fsutil.exe -ArgumentList ('8dot3name', 'set', '0') -Wait -PassThru
$shortNameEnableExitCode = $shortNameEnableProcess.ExitCode
if ($shortNameEnableExitCode -ne 0)
{
Write-Host "Enabling short name support on Windows failed. This needs to be enabled prior to VS 2017 install for Xamarin Andriod AOT to work."
exit $shortNameEnableExitCode
}
Write-Host "Starting Install ..."
$bootstrapperArgumentList = ('/c', $bootstrapperFilePath, $WorkLoads, '--quiet', '--norestart', '--wait', '--nocache' )
$process = Start-Process -FilePath cmd.exe -ArgumentList $bootstrapperArgumentList -Wait -PassThru
$exitCode = $process.ExitCode
if ($exitCode -eq 0 -or $exitCode -eq 3010)
{
Write-Host "Installation successful"
return $exitCode
}
else
{
Write-Host "Non zero exit code returned by the installation process : $exitCode"
exit $exitCode
}
}
catch
{
Write-Host "Failed to install Visual Studio; $($_.Exception.Message)"
exit -1
}
}
function Get-VsCatalogJsonPath {
$instanceFolder = Get-Item "C:\ProgramData\Microsoft\VisualStudio\Packages\_Instances\*" | Select-Object -First 1
return Join-Path $instanceFolder.FullName "catalog.json"
}
function Get-VisualStudioPath {
return (Get-VSSetupInstance | Select-VSSetupInstance -Product *).InstallationPath
}
function Get-VisualStudioPackages {
return (Get-VSSetupInstance | Select-VSSetupInstance -Product *).Packages
}
function Get-VisualStudioComponents {
Get-VisualStudioPackages | Where-Object type -in 'Component', 'Workload' |
Sort-Object Id, Version | Select-Object @{n = 'Package'; e = {$_.Id}}, Version |
Where-Object { $_.Package -notmatch "[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}" }
}

View File

@@ -30,16 +30,8 @@ function Disable-UserAccessControl {
Write-Host "User Access Control (UAC) has been disabled."
}
Import-Module -Name ImageHelpers -Force
Write-Host "Setup PowerShellGet"
# Set-PSRepository -InstallationPolicy Trusted -Name PSGallery
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
Install-Module -Name PowerShellGet -Force
Set-PSRepository -InstallationPolicy Trusted -Name PSGallery
Write-Host "Install the latest Pester version"
Install-Module Pester -Scope AllUsers -SkipPublisherCheck -Force
# Set TLS1.2
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor "Tls12"
Write-Host "Disable Antivirus"
Set-MpPreference -DisableRealtimeMonitoring $true
@@ -55,10 +47,15 @@ else {
}
# Install .NET Framework 3.5 (required by Chocolatey)
Install-WindowsFeature -Name NET-Framework-Features -IncludeAllSubFeature
# Explicitly install all 4.7 sub features to include ASP.Net.
# As of 1/16/2019, WinServer 19 lists .Net 4.7 as NET-Framework-45-Features
Install-WindowsFeature -Name NET-Framework-Features -IncludeAllSubFeature
Install-WindowsFeature -Name NET-Framework-45-Features -IncludeAllSubFeature
if (Test-IsWin16) {
Install-WindowsFeature -Name BITS -IncludeAllSubFeature
Install-WindowsFeature -Name DSC-Service
}
# Install FS-iSCSITarget-Server
$fsResult = Install-WindowsFeature -Name FS-iSCSITarget-Server -IncludeAllSubFeature -IncludeManagementTools
if ( $fsResult.Success ) {
@@ -108,7 +105,6 @@ else {
}
# Run the installer
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor "Tls12"
Invoke-Expression ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
# Turn off confirmation
@@ -121,6 +117,11 @@ Remove-Item -Path $env:ChocolateyInstall\bin\cpack.exe -Force
# Install webpi
Choco-Install -PackageName webpicmd
if (Test-IsWin16) {
# Install vcredist140
Choco-Install -PackageName vcredist140
}
# Expand disk size of OS drive
New-Item -Path d:\ -Name cmds.txt -ItemType File -Force
Add-Content -Path d:\cmds.txt "SELECT VOLUME=C`r`nEXTEND"
@@ -130,4 +131,3 @@ Write-Host $expandResult
Write-Host "Disk sizes after expansion"
wmic logicaldisk get size,freespace,caption

View File

@@ -1,7 +0,0 @@
################################################################################
## File: Install-AWS-SAM.ps1
## Desc: Install aws sam cli
## https://aws.amazon.com/serverless/sam/
################################################################################
Install-Binary -Url "https://github.com/awslabs/aws-sam-cli/releases/latest/download/AWS_SAM_CLI_64_PY3.msi" -Name "AWS_SAM_CLI_64_PY3.msi"

View File

@@ -1,28 +1,18 @@
################################################################################
## File: Install-awscli.ps1
## Desc: Install awscli
## File: Install-AWS.ps1
## Desc: Install AWS tools(AWS CLI, Session Manager Plugin for the AWS CLI, AWS SAM CLI)
################################################################################
# Install AWS CLI
Choco-Install -PackageName awscli
$env:Path = $env:Path + ";$env:ProgramFiles\Amazon\AWSCLIV2"
if (Get-Command -Name 'aws')
{
Write-Host 'awscli on path'
}
else
{
Write-Host 'awscli is not on path'
exit 1
}
# Install Session Manager Plugin for the AWS CLI
$sessionManagerName = "SessionManagerPluginSetup.exe"
$sessionManagerUrl = "https://s3.amazonaws.com/session-manager-downloads/plugin/latest/windows/$sessionManagerName"
Install-Binary -Url $sessionManagerUrl -Name $sessionManagerName -ArgumentList ("/silent", "/install")
$env:Path = $env:Path + ";$env:ProgramFiles\Amazon\SessionManagerPlugin\bin"
$sessionMessage = session-manager-plugin
Write-Host "$sessionMessage"
if ($sessionMessage -notmatch "*plugin was installed successfully*") {
exit 1
}
# Install AWS SAM CLI
Install-Binary -Url "https://github.com/awslabs/aws-sam-cli/releases/latest/download/AWS_SAM_CLI_64_PY3.msi" -Name "AWS_SAM_CLI_64_PY3.msi"
Invoke-PesterTests -TestFile "Tools" -TestName "AWS"

View File

@@ -4,3 +4,5 @@
################################################################################
Choco-Install -PackageName aliyun-cli
Invoke-PesterTests -TestFile "Tools" -TestName "AliyunCli"

View File

@@ -4,3 +4,5 @@
################################################################################
Choco-Install -PackageName azcopy10
Invoke-PesterTests -TestFile "Tools" -TestName "AzCopy"

View File

@@ -10,3 +10,4 @@ New-Item -ItemType "directory" -Path $AzureCliExtensionPath
[Environment]::SetEnvironmentVariable("AZURE_EXTENSION_DIR", $AzureCliExtensionPath, [System.EnvironmentVariableTarget]::Machine)
Invoke-PesterTests -TestFile "Tools" -TestName "AzureCli"

View File

@@ -9,3 +9,5 @@ $InstallerName = "AzureCosmosDBEmulator.msi"
$InstallerUrl = "https://aka.ms/cosmosdb-emulator"
Install-Binary -Url $InstallerUrl -Name $InstallerName
Invoke-PesterTests -TestFile "Tools" -TestName "Azure Cosmos DB Emulator"

View File

@@ -4,3 +4,5 @@
################################################################################
az extension add -n azure-devops
Invoke-PesterTests -TestFile "Tools" -TestName "Azure DevOps CLI"

View File

@@ -5,8 +5,6 @@
$ErrorActionPreference = "Stop"
Set-PSRepository -InstallationPolicy Trusted -Name PSGallery
# The correct Modules need to be saved in C:\Modules
$installPSModulePath = $env:PSMODULES_ROOT_FOLDER
if (-not (Test-Path -LiteralPath $installPSModulePath))
@@ -53,3 +51,5 @@ foreach ($module in $modules)
# Add modules to the PSModulePath
$psModuleMachinePath += $env:PSModulePath
[Environment]::SetEnvironmentVariable("PSModulePath", $psModuleMachinePath, "Machine")
Invoke-PesterTests -TestFile "PowerShellModules" -TestName "AzureModules"

View File

@@ -6,3 +6,5 @@
Choco-Install -PackageName bazel
npm install -g @bazel/bazelisk
Invoke-PesterTests -TestFile "Tools" -TestName "Bazel"

View File

@@ -9,3 +9,5 @@ $InstallerName = "DacFramework.msi"
$InstallerUrl = "https://go.microsoft.com/fwlink/?linkid=2128142"
Install-Binary -Url $InstallerUrl -Name $InstallerName
Invoke-PesterTests -TestFile "Tools" -TestName "DACFx"

View File

@@ -5,10 +5,6 @@
## can continue.
################################################################################
Set-PSRepository -InstallationPolicy Trusted -Name PSGallery
Write-Host "Install-Module DockerProvider"
Install-Module DockerMsftProvider -Force
Write-Host "Install-Package Docker"
Install-Package -Name docker -ProviderName DockerMsftProvider -Force
Start-Service docker
@@ -18,3 +14,5 @@ Choco-Install -PackageName docker-compose
Write-Host "Install Helm"
Choco-Install -PackageName kubernetes-helm
Invoke-PesterTests -TestFile "Tools" -TestName "Docker"

View File

@@ -113,3 +113,5 @@ function RunPostInstallationSteps()
InstallAllValidSdks
RunPostInstallationSteps
Invoke-PesterTests -TestFile "DotnetSDK"

View File

@@ -0,0 +1,34 @@
$ErrorActionPreference = "Stop"
# Set TLS1.2
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor "Tls12"
Write-Host "Setup PowerShellGet"
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
# Specifies the installation policy
Set-PSRepository -InstallationPolicy Trusted -Name PSGallery
# Install PowerShell modules
$modules = (Get-ToolsetContent).powershellModules
foreach($module in $modules)
{
$moduleName = $module.name
Write-Host "Installing ${moduleName} module"
if ($module.versions)
{
foreach ($version in $module.versions)
{
Write-Host " - $version"
Install-Module -Name $moduleName -RequiredVersion $version -Scope AllUsers -SkipPublisherCheck -Force
}
continue
}
Install-Module -Name $moduleName -Scope AllUsers -SkipPublisherCheck -Force
}
Import-Module Pester
Invoke-PesterTests -TestFile "PowerShellModules" -TestName "PowerShellModules"

View File

@@ -0,0 +1,11 @@
################################################################################
## File: Install-R.ps1
## Desc: Install R for Windows
################################################################################
Choco-Install R.Project
Choco-Install rtools
$rscriptPath = Resolve-Path "C:\Program Files\R\*\bin\x64"
Add-MachinePathItem $rscriptPath
Invoke-PesterTests -TestFile "Tools" -TestName "R"

View File

@@ -19,7 +19,3 @@ Install-Binary -Url $SharedManagementObjectsUrl -Name $SharedManagementObjectsNa
$PowerShellToolsName = "PowerShellTools.msi"
$PowerShellToolsUrl = "${BaseUrl}/${PowerShellToolsName}"
Install-Binary -Url $PowerShellToolsUrl -Name $PowerShellToolsName
# install sqlserver PS module
Set-PSRepository -Name PSGallery -InstallationPolicy Trusted
Install-Module -Name SqlServer -AllowClobber

View File

@@ -0,0 +1,52 @@
################################################################################
## File: Install-VS.ps1
## Desc: Install Visual Studio
################################################################################
$ErrorActionPreference = "Stop"
$toolset = Get-ToolsetContent
$requiredComponents = $toolset.visualStudio.workloads | ForEach-Object { "--add $_" }
$workLoads = @(
"--allWorkloads --includeRecommended"
$requiredComponents
"--remove Component.CPython3.x64"
)
$workLoadsArgument = [String]::Join(" ", $workLoads)
$releaseInPath = $toolset.visualStudio.edition
$subVersion = $toolset.visualStudio.subversion
$bootstrapperUrl = "https://aka.ms/vs/${subVersion}/release/vs_${releaseInPath}.exe"
# Install VS
Install-VisualStudio -BootstrapperUrl $bootstrapperUrl -WorkLoads $workLoadsArgument
# Find the version of VS installed for this instance
# Only supports a single instance
$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
}
$vsInstallRoot = Get-VisualStudioPath
# Initialize Visual Studio Experimental Instance
& "$vsInstallRoot\Common7\IDE\devenv.exe" /RootSuffix Exp /ResetSettings General.vssettings /Command File.Exit
# Updating content of MachineState.json file to disable autoupdate of VSIX extensions
$newContent = '{"Extensions":[{"Key":"1e906ff5-9da8-4091-a299-5c253c55fdc9","Value":{"ShouldAutoUpdate":false}},{"Key":"Microsoft.VisualStudio.Web.AzureFunctions","Value":{"ShouldAutoUpdate":false}}],"ShouldAutoUpdate":false,"ShouldCheckForUpdates":false}'
Set-Content -Path "$vsInstallRoot\Common7\IDE\Extensions\MachineState.json" -Value $newContent
if (Test-IsWin19) {
# Install Windows 10 SDK version 10.0.14393.795
$sdkUrl = "https://go.microsoft.com/fwlink/p/?LinkId=838916"
$sdkFileName = "sdksetup14393.exe"
$argumentList = ("/q", "/norestart", "/ceip off", "/features OptionId.WindowsSoftwareDevelopmentKit")
Install-Binary -Url $sdkUrl -Name $sdkFileName -ArgumentList $argumentList
}
Invoke-PesterTests -TestFile "VisualStudio"

View File

@@ -5,5 +5,4 @@
################################################################################
Write-Host "Run windows updates"
Install-Module -Name PSWindowsUpdate -Force -AllowClobber
Get-WUInstall -MicrosoftUpdate -AcceptAll -Install -IgnoreUserInput -IgnoreReboot

View File

@@ -0,0 +1,33 @@
################################################################################
## File: Update-DockerImages.ps1
## Desc: Pull some standard docker images.
## Must be run after docker is installed.
################################################################################
function DockerPull {
Param ([string]$image)
Write-Host Installing $image ...
docker pull $image
if (!$?) {
Write-Host "Docker pull failed with a non-zero exit code"
exit 1
}
}
if (Test-IsWin16) {
DockerPull mcr.microsoft.com/windows/servercore:ltsc2016
DockerPull mcr.microsoft.com/windows/nanoserver:10.0.14393.953
DockerPull mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2016
DockerPull mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2016
}
if (Test-IsWin19) {
DockerPull mcr.microsoft.com/windows/servercore:ltsc2019
DockerPull mcr.microsoft.com/windows/nanoserver:1809
DockerPull mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019
DockerPull mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019
}
DockerPull microsoft/aspnetcore-build:1.0-2.0

View File

@@ -1,14 +0,0 @@
################################################################################
## File: Validate-AWS-SAM.ps1
## Desc: Validate aws sam cli
################################################################################
if (Get-Command -Name 'sam')
{
Write-Host 'AWS SAM CLI on path'
}
else
{
Write-Host 'AWS SAM CLI is not on path'
exit 1
}

View File

@@ -1,14 +0,0 @@
################################################################################
## File: Validate-AliyunCli.ps1
## Desc: Validate Alibaba Cloud CLI
################################################################################
if (Get-Command -Name 'aliyun')
{
Write-Host 'Alibaba Cloud CLI on path'
}
else
{
Write-Host 'Alibaba Cloud CLI is not on path'
exit 1
}

View File

@@ -1,10 +0,0 @@
################################################################################
## File: Validate-AzCopy.ps1
## Desc: Validate AzCopy10
################################################################################
if (Get-Command -Name 'azcopy') {
Write-Host "$(azcopy --version) on path"
} else {
Write-Error "azcopy not on path"
exit 1
}

View File

@@ -1,38 +0,0 @@
################################################################################
## File: Validate-AzureCosmosDbEmulator.ps1
## Desc: Validate Azure CosmosDb Emulator installation.
################################################################################
$SoftwareName = 'Azure CosmosDb Emulator'
$regKey = gci HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\* | gp | ? { $_.DisplayName -eq 'Azure Cosmos DB Emulator' }
if ($regKey -eq $null)
{
Write-Host "The $regKey registry key is not set"
exit 1
}
else
{
Write-Host "The $regKey registry key is set"
}
$installDir = $regKey.InstallLocation
if ($installDir -eq $null)
{
Write-Host "The $SoftwareName installation directory registry value is not set"
exit 1
}
else
{
Write-Host "The $SoftwareName installation directory registry value is set to: $installDir"
}
$exeFilePath = Join-Path $installDir 'CosmosDB.Emulator.exe'
if (!(Test-Path $exeFilePath))
{
Write-Host "$SoftwareName is not installed"
exit 1
}
$fileVersion = (Get-Item $exeFilePath).VersionInfo.FileVersion
Write-Host "$SoftwareName is successfully installed: $fileVersion"

View File

@@ -1,17 +0,0 @@
################################################################################
## File: Validate-AzureDevOpsCli.ps1
## Desc: Validate Azure DevOps CLI
################################################################################
az devops -h
if ($LastExitCode -ne 0)
{
Write-Error "Azure DevOps Cli extension not present"
exit 1
}
else
{
Write-Host "Azure DevOps Cli extension is present"
}

View File

@@ -1,44 +0,0 @@
################################################################################
## File: Validate-AzureModules.ps1
## Desc: Validate Azure PowerShell modules
################################################################################
$ErrorActionPreference = "Stop"
$modulesRootPath = $env:PSMODULES_ROOT_FOLDER
# Get modules content from toolset
$modules = (Get-ToolsetContent).azureModules
foreach ($module in $modules)
{
foreach ($version in $module.versions)
{
$moduleName = $module.name
$modulePath = Join-Path -Path $modulesRootPath -ChildPath "$($module.name)_${version}"
Write-Host "Trying to import ${moduleName}_${version}..."
$testJob = Start-Job -ScriptBlock {
param (
$modulePath,
$moduleName
)
$env:PsModulePath = "$modulePath;$env:PsModulePath"
Import-Module -Name $moduleName
Get-Module -Name $moduleName
} -ArgumentList $modulePath, $moduleName
$isError = $testJob | Wait-Job | Foreach-Object ChildJobs | Where-Object { $_.Error }
if ($isError)
{
Write-Host "Required ${moduleName} module ${version} version is not present"
exit 1
}
$testJob | Receive-Job | Select-Object Name,Version,Path
Remove-Job $testJob
}
}

View File

@@ -1,26 +0,0 @@
################################################################################
## File: Validate-Bazel.ps1
## Desc: Validate Bazel and Bazelisk (A user-friendly launcher for Bazel)
################################################################################
if (Get-Command -Name 'bazel')
{
Write-Host 'bazel on path'
}
else
{
Write-Host 'bazel is not on path'
exit 1
}
if (Get-Command -Name 'bazelisk')
{
Write-Host 'bazelisk on path'
}
else
{
Write-Host 'bazelisk is not on path'
exit 1
}

View File

@@ -1,24 +0,0 @@
####################################################################################
## File: Validate-DACFx.ps1
## Desc: Validate SQL Server® Data-Tier Application Framework (DACFx) for Windows
####################################################################################
$env:PATH = $env:Path + ';C:\Program Files\Microsoft SQL Server\120\DAC\bin;C:\Program Files\Microsoft SQL Server\130\DAC\bin;C:\Program Files\Microsoft SQL Server\140\DAC\bin;C:\Program Files\Microsoft SQL Server\150\DAC\bin'
if (Get-Command -Name 'SqlPackage')
{
Write-Host "DACFx is installed at path" (Get-Command -Name 'SqlPackage').Source
}
else
{
throw "DACFx is not installed!"
}
if (Get-Command -Name 'SqlLocalDB')
{
Write-Host "SQL Server Express LocalDB is available at " (Get-Command -Name SqlLocalDB).Source
}
else
{
throw "SqlLocalDB is not installed!"
}

View File

@@ -1,26 +0,0 @@
################################################################################
## File: Validate-Docker.ps1
## Desc: Validate Docker.
################################################################################
if ((Get-Command -Name 'docker') -and (Get-Command -Name 'docker-compose'))
{
Write-Host "docker $(docker version) on path"
Write-Host "docker-compose $(docker-compose version) on path"
}
else
{
Write-Host "docker or docker-compose are not on path"
exit 1
}
# Validate helm
if (Get-Command -Name 'helm')
{
Write-Host "helm on path"
}
else
{
Write-Host 'helm is not on path'
exit 1
}

View File

@@ -1,16 +0,0 @@
################################################################################
## File: Validate-DotnetSDK.ps1
## Desc: Validate dotnet
################################################################################
if (Get-Command -Name 'dotnet')
{
Write-Host "dotnet $(dotnet --version) on path"
}
else
{
Write-Host "dotnet is not on path"
exit 1
}

View File

@@ -1,140 +0,0 @@
################################################################################
## File: Initialize-VM.ps1
## Desc: VM initialization script, machine level configuration
################################################################################
function Disable-InternetExplorerESC {
$AdminKey = "HKLM:\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A7-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 $UserKey -Name "IsInstalled" -Value 0 -Force
$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."
}
function Disable-InternetExplorerWelcomeScreen {
$AdminKey = "HKLM:\Software\Policies\Microsoft\Internet Explorer\Main"
New-Item -Path $AdminKey -Value 1 -Force
Set-ItemProperty -Path $AdminKey -Name "DisableFirstRunCustomize" -Value 1 -Force
Write-Host "Disabled IE Welcome screen"
}
function Disable-UserAccessControl {
Set-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "ConsentPromptBehaviorAdmin" -Value 00000000 -Force
Write-Host "User Access Control (UAC) has been disabled."
}
# Set TLS1.2
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor "Tls12"
Import-Module -Name ImageHelpers -Force
Write-Host "Setup PowerShellGet"
# Set-PSRepository -InstallationPolicy Trusted -Name PSGallery
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
Install-Module -Name PowerShellGet -Force
Set-PSRepository -InstallationPolicy Trusted -Name PSGallery
Write-Host "Install the latest Pester version"
Install-Module Pester -Scope AllUsers -SkipPublisherCheck -Force
Write-Host "Disable Antivirus"
Set-MpPreference -DisableRealtimeMonitoring $true
# Disable Windows Update
$AutoUpdatePath = "HKLM:SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU"
If (Test-Path -Path $AutoUpdatePath) {
Set-ItemProperty -Path $AutoUpdatePath -Name NoAutoUpdate -Value 1
Write-Host "Disabled Windows Update"
}
else {
Write-Host "Windows Update key does not exist"
}
# Install Windows .NET Features
Install-WindowsFeature -Name NET-Framework-Features -IncludeAllSubFeature
Install-WindowsFeature -Name NET-Framework-45-Features -IncludeAllSubFeature
Install-WindowsFeature -Name BITS -IncludeAllSubFeature
Install-WindowsFeature -Name DSC-Service
# Install FS-iSCSITarget-Server
$fsResult = Install-WindowsFeature -Name FS-iSCSITarget-Server -IncludeAllSubFeature -IncludeManagementTools
if ( $fsResult.Success ) {
Write-Host "FS-iSCSITarget-Server has been successfully installed"
} else {
Write-Host "Failed to install FS-iSCSITarget-Server"
exit 1
}
Write-Host "Disable UAC"
Disable-UserAccessControl
Write-Host "Disable IE Welcome Screen"
Disable-InternetExplorerWelcomeScreen
Write-Host "Disable IE ESC"
Disable-InternetExplorerESC
Write-Host "Setting local execution policy"
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope MachinePolicy -ErrorAction Continue | Out-Null
Get-ExecutionPolicy -List
Write-Host "Enable long path behavior"
# See https://docs.microsoft.com/en-us/windows/desktop/fileio/naming-a-file#maximum-path-length-limitation
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem' -Name 'LongPathsEnabled' -Value 1
Write-Host "Install chocolatey"
$chocoExePath = 'C:\ProgramData\Chocolatey\bin'
if ($($env:Path).ToLower().Contains($($chocoExePath).ToLower())) {
Write-Host "Chocolatey found in PATH, skipping install..."
Exit
}
# Add to system PATH
$systemPath = [Environment]::GetEnvironmentVariable('Path', [System.EnvironmentVariableTarget]::Machine)
$systemPath += ';' + $chocoExePath
[Environment]::SetEnvironmentVariable("PATH", $systemPath, [System.EnvironmentVariableTarget]::Machine)
# Update local process' path
$userPath = [Environment]::GetEnvironmentVariable('Path', [System.EnvironmentVariableTarget]::User)
if ($userPath) {
$env:Path = $systemPath + ";" + $userPath
}
else {
$env:Path = $systemPath
}
# Run the installer
Invoke-Expression ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
# Turn off confirmation
choco feature enable -n allowGlobalConfirmation
# https://github.com/chocolatey/choco/issues/89
# Remove some of the command aliases, like `cpack` #89
Remove-Item -Path $env:ChocolateyInstall\bin\cpack.exe -Force
# Install webpi
Choco-Install -PackageName webpicmd
# Install vcredist140
Choco-Install -PackageName vcredist140
# Expand disk size of OS drive
New-Item -Path d:\ -Name cmds.txt -ItemType File -Force
Add-Content -Path d:\cmds.txt "SELECT VOLUME=C`r`nEXTEND"
$expandResult = (diskpart /s 'd:\cmds.txt')
Write-Host $expandResult
Write-Host "Disk sizes after expansion"
wmic logicaldisk get size,freespace,caption

View File

@@ -1,111 +0,0 @@
################################################################################
## File: Install-VS2017.ps1
## Desc: Install Visual Studio 2017
################################################################################
$ErrorActionPreference = "Stop"
Import-Module -Name ImageHelpers -Force
$WorkLoads = '--allWorkloads --includeRecommended ' + `
'--add Microsoft.Net.Component.4.6.2.SDK ' + `
'--add Microsoft.Net.Component.4.6.2.TargetingPack ' + `
'--add Microsoft.Net.ComponentGroup.4.6.2.DeveloperTools ' + `
'--add Microsoft.Net.Component.4.7.SDK ' + `
'--add Microsoft.Net.Component.4.7.TargetingPack ' + `
'--add Microsoft.Net.ComponentGroup.4.7.DeveloperTools ' + `
'--add Microsoft.Net.Component.4.7.1.SDK ' + `
'--add Microsoft.Net.Component.4.7.1.TargetingPack ' + `
'--add Microsoft.Net.ComponentGroup.4.7.1.DeveloperTools ' + `
'--add Microsoft.Net.Component.4.7.2.SDK ' + `
'--add Microsoft.Net.Component.4.7.2.TargetingPack ' + `
'--add Microsoft.Net.ComponentGroup.4.7.2.DeveloperTools ' + `
'--add Microsoft.Net.Core.Component.SDK.1x ' + `
'--add Microsoft.NetCore.1x.ComponentGroup.Web ' + `
'--add Microsoft.VisualStudio.Component.Azure.Storage.AzCopy ' + `
'--add Microsoft.VisualStudio.Component.PowerShell.Tools ' + `
'--add Microsoft.VisualStudio.Component.VC.140 ' + `
'--add Component.Dotfuscator ' + `
'--add Microsoft.VisualStudio.Component.VC.ATL ' + `
'--add Microsoft.VisualStudio.Component.VC.ATL.ARM ' + `
'--add Microsoft.VisualStudio.Component.VC.ATL.ARM64 ' + `
'--add Microsoft.VisualStudio.Component.VC.ATLMFC ' + `
'--add Microsoft.VisualStudio.Component.VC.ClangC2 ' + `
'--add Microsoft.VisualStudio.Component.VC.CLI.Support ' + `
'--add Microsoft.VisualStudio.Component.VC.Modules.x86.x64 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.10240 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.10586 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.14393 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.15063.Desktop ' + `
'--add Component.Unreal ' + `
'--add Component.Unreal.Android ' + `
'--add Component.Android.SDK23 ' + `
'--add Microsoft.VisualStudio.Component.TestTools.WebLoadTest ' + `
'--add Microsoft.VisualStudio.Web.Mvc4.ComponentGroup ' + `
'--add Component.Linux.CMake ' + `
'--add Microsoft.Component.PythonTools.UWP ' + `
'--remove Component.CPython3.x64 ' + `
'--add Microsoft.Component.VC.Runtime.OSSupport ' + `
'--add Microsoft.VisualStudio.Component.VC.Tools.ARM ' + `
'--add Microsoft.VisualStudio.ComponentGroup.UWP.VC ' + `
'--add Microsoft.VisualStudio.Component.VSSDK ' + `
'--add Microsoft.VisualStudio.Component.LinqToSql ' + `
'--add Microsoft.VisualStudio.Component.TestTools.CodedUITest ' + `
'--add Microsoft.VisualStudio.Component.TestTools.Core ' + `
'--add Microsoft.VisualStudio.Component.TypeScript.2.0 ' + `
'--add Microsoft.VisualStudio.Component.TypeScript.2.1 ' + `
'--add Microsoft.VisualStudio.Component.TypeScript.2.2 ' + `
'--add Microsoft.VisualStudio.Component.VC.Tools.ARM64 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.16299.Desktop.arm ' + `
'--add Microsoft.VisualStudio.Component.DslTools ' + `
'--add Microsoft.VisualStudio.Component.Windows81SDK ' + `
'--add Microsoft.VisualStudio.Component.WinXP ' + `
'--add Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Win81 ' + `
'--add Microsoft.VisualStudio.ComponentGroup.NativeDesktop.WinXP ' + `
'--add Microsoft.VisualStudio.ComponentGroup.ArchitectureTools.Managed ' + `
'--add Microsoft.Component.Blend.SDK.WPF ' + `
'--add Microsoft.Component.VC.Runtime.UCRTSDK ' + `
'--add Microsoft.VisualStudio.Component.Sharepoint.BuildTools ' + `
'--add Microsoft.VisualStudio.Component.TeamOffice.BuildTools ' + `
'--add Microsoft.VisualStudio.Component.VC.ATL.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.ATL.ARM.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.ATL.ARM64.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.17134 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.17763 ' + `
'--add Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre '+ `
'--add Microsoft.VisualStudio.Component.VC.Runtimes.ARM.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre ' + `
'--add Microsoft.VisualStudio.Component.Workflow.BuildTools ' + `
'--add Microsoft.VisualStudio.Workload.Office ' + `
'--add Microsoft.VisualStudio.Workload.OfficeBuildTools '
$ReleaseInPath = "Enterprise"
$BootstrapperUrl = "https://aka.ms/vs/15/release/vs_${ReleaseInPath}.exe"
# Install VS
Install-VisualStudio -BootstrapperUrl $BootstrapperUrl -WorkLoads $WorkLoads
# Find the version of VS installed for this instance
# Only supports a single instance
$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
}
$catalogContent = Get-Content -Path ($instanceFolders.FullName + '\catalog.json')
$catalog = $catalogContent | ConvertFrom-Json
$version = $catalog.info.id
$VSInstallRoot = "C:\Program Files (x86)\Microsoft Visual Studio\2017\$ReleaseInPath"
Write-Host "Visual Studio version ${version} installed"
# Initialize Visual Studio Experimental Instance for integration testing
& "$VSInstallRoot\Common7\IDE\devenv.exe" /RootSuffix Exp /ResetSettings General.vssettings /Command File.Exit | Wait-Process
# Updating content of MachineState.json file to disable autoupdate of VSIX extensions
$newContent = '{"Extensions":[{"Key":"1e906ff5-9da8-4091-a299-5c253c55fdc9","Value":{"ShouldAutoUpdate":false}},{"Key":"Microsoft.VisualStudio.Web.AzureFunctions","Value":{"ShouldAutoUpdate":false}}],"ShouldAutoUpdate":false,"ShouldCheckForUpdates":false}'
Set-Content -Path "$VSInstallRoot\Common7\IDE\Extensions\MachineState.json" -Value $newContent

View File

@@ -1,24 +0,0 @@
################################################################################
## File: Update-DockerImages.ps1
## Desc: Pull some standard docker images.
## Must be run after docker is installed.
################################################################################
function DockerPull {
Param ([string]$image)
Write-Host Installing $image ...
docker pull $image
if (!$?) {
Write-Host "Docker pull failed with a non-zero exit code"
exit 1
}
}
DockerPull mcr.microsoft.com/windows/servercore:ltsc2016
DockerPull mcr.microsoft.com/windows/nanoserver:10.0.14393.953
DockerPull microsoft/aspnetcore-build:1.0-2.0
DockerPull mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2016
DockerPull mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2016

View File

@@ -1,143 +0,0 @@
################################################################################
## File: Install-VS2019.ps1
## Desc: Install Visual Studio 2019
################################################################################
$ErrorActionPreference = "Stop"
Import-Module -Name ImageHelpers -Force
$WorkLoads = '--allWorkloads --includeRecommended ' + `
'--add Component.Dotfuscator ' + `
'--add Component.Linux.CMake ' + `
'--add Component.UnityEngine.x64 ' + `
'--add Component.UnityEngine.x86 ' + `
'--add Component.Unreal.Android ' + `
'--add Microsoft.Component.Azure.DataLake.Tools ' + `
'--add Microsoft.Component.CookiecutterTools ' + `
'--add Microsoft.Component.PythonTools.Miniconda ' + `
'--add Microsoft.Component.PythonTools.Web ' + `
'--add Microsoft.Component.VC.Runtime.UCRTSDK ' + `
'--add Microsoft.Net.ComponentGroup.4.6.2.DeveloperTools ' + `
'--add Microsoft.Net.ComponentGroup.4.7.1.DeveloperTools ' + `
'--add Microsoft.Net.Component.4.7.2.SDK ' + `
'--add Microsoft.Net.Component.4.7.2.TargetingPack ' + `
'--add Microsoft.Net.ComponentGroup.4.7.2.DeveloperTools ' + `
'--add Microsoft.Net.ComponentGroup.4.7.DeveloperTools ' + `
'--add Microsoft.VisualStudio.Component.AspNet45 ' + `
'--add Microsoft.VisualStudio.Component.Azure.Kubernetes.Tools ' + `
'--add Microsoft.VisualStudio.Component.Azure.MobileAppsSdk ' + `
'--add Microsoft.VisualStudio.Component.Azure.ServiceFabric.Tools ' + `
'--add Microsoft.VisualStudio.Component.Azure.Storage.AzCopy ' + `
'--add Microsoft.VisualStudio.Component.Debugger.JustInTime ' + `
'--add Microsoft.VisualStudio.Component.DslTools ' + `
'--add Microsoft.VisualStudio.Component.EntityFramework ' + `
'--add Microsoft.VisualStudio.Component.FSharp.Desktop ' + `
'--add Microsoft.VisualStudio.Component.LinqToSql ' + `
'--add Microsoft.VisualStudio.Component.SQL.SSDT ' + `
'--add Microsoft.VisualStudio.Component.PortableLibrary ' + `
'--add Microsoft.VisualStudio.Component.Sharepoint.BuildTools ' + `
'--add Microsoft.VisualStudio.Component.TeamOffice ' + `
'--add Microsoft.VisualStudio.Component.TeamOffice.BuildTools ' + `
'--add Microsoft.VisualStudio.Component.TestTools.CodedUITest ' + `
'--add Microsoft.VisualStudio.Component.TestTools.WebLoadTest ' + `
'--add Microsoft.VisualStudio.Component.UWP.VC.ARM64 ' + `
'--add Microsoft.VisualStudio.Component.VC.140 ' + `
'--add Microsoft.VisualStudio.Component.VC.ATL.ARM ' + `
'--add Microsoft.VisualStudio.Component.VC.ATLMFC ' + `
'--add Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.CLI.Support ' + `
'--add Microsoft.VisualStudio.Component.VC.CMake.Project ' + `
'--add Microsoft.VisualStudio.Component.VC.DiagnosticTools ' + `
'--add Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset ' + `
'--add Microsoft.VisualStudio.Component.VC.MFC.ARM ' + `
'--add Microsoft.VisualStudio.Component.VC.MFC.ARM.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.MFC.ARM64 ' + `
'--add Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.Redist.MSM ' + `
'--add Microsoft.VisualStudio.Component.VC.Runtimes.ARM.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest ' + `
'--add Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest ' + `
'--add Microsoft.VisualStudio.Component.VC.v141 ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.x86.x64 ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.x86.x64.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.ARM.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.ARM64.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.ATL ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.ATL.ARM.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.ATL.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.v141.MFC ' + `
'--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.Spectre ' + `
'--add Microsoft.VisualStudio.Component.VC.14.25.x86.x64 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.16299 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.17134 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.17763 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.18362 ' + `
'--add Microsoft.VisualStudio.Component.Windows10SDK.19041 ' + `
'--add Microsoft.VisualStudio.Component.WinXP ' + `
'--add Microsoft.VisualStudio.Component.Workflow.BuildTools ' + `
'--add Microsoft.VisualStudio.ComponentGroup.Azure.CloudServices ' + `
'--add Microsoft.VisualStudio.ComponentGroup.Azure.ResourceManager.Tools ' + `
'--add Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Llvm.Clang ' + `
'--add Microsoft.VisualStudio.ComponentGroup.Web.CloudTools ' + `
'--add Microsoft.VisualStudio.Workload.Azure ' + `
'--add Microsoft.VisualStudio.Workload.Data ' + `
'--add Microsoft.VisualStudio.Workload.DataScience ' + `
'--add Microsoft.VisualStudio.Workload.ManagedDesktop ' + `
'--add Microsoft.VisualStudio.Workload.ManagedGame ' + `
'--add Microsoft.VisualStudio.Workload.NativeCrossPlat ' + `
'--add Microsoft.VisualStudio.Workload.NativeDesktop ' + `
'--add Microsoft.VisualStudio.Workload.NativeGame ' + `
'--add Microsoft.VisualStudio.Workload.NativeMobile ' + `
'--add Microsoft.VisualStudio.Workload.NetCoreTools ' + `
'--add Microsoft.VisualStudio.Workload.NetCrossPlat ' + `
'--add Microsoft.VisualStudio.Workload.NetWeb ' + `
'--add Microsoft.VisualStudio.Workload.Node ' + `
'--add Microsoft.VisualStudio.Workload.Office ' + `
'--add Microsoft.VisualStudio.Workload.Python ' + `
'--remove Component.CPython3.x64 ' + `
'--add Microsoft.VisualStudio.Workload.Universal ' + `
'--add Microsoft.VisualStudio.Workload.VisualStudioExtension ' + `
'--add Component.MDD.Linux ' + `
'--add Component.MDD.Linux.GCC.arm'
$ReleaseInPath = "Enterprise"
$BootstrapperUrl = "https://aka.ms/vs/16/release/vs_${ReleaseInPath}.exe"
# Install VS
Install-VisualStudio -BootstrapperUrl $BootstrapperUrl -WorkLoads $WorkLoads
# Find the version of VS installed for this instance
# Only supports a single instance
$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
}
$catalogContent = Get-Content -Path ($instanceFolders.FullName + '\catalog.json')
$catalog = $catalogContent | ConvertFrom-Json
$version = $catalog.info.id
$VSInstallRoot = "C:\Program Files (x86)\Microsoft Visual Studio\2019\$ReleaseInPath"
Write-Host "Visual Studio version ${version} installed"
# Initialize Visual Studio Experimental Instance
& "$VSInstallRoot\Common7\IDE\devenv.exe" /RootSuffix Exp /ResetSettings General.vssettings /Command File.Exit
# Updating content of MachineState.json file to disable autoupdate of VSIX extensions
$newContent = '{"Extensions":[{"Key":"1e906ff5-9da8-4091-a299-5c253c55fdc9","Value":{"ShouldAutoUpdate":false}},{"Key":"Microsoft.VisualStudio.Web.AzureFunctions","Value":{"ShouldAutoUpdate":false}}],"ShouldAutoUpdate":false,"ShouldCheckForUpdates":false}'
Set-Content -Path "$VSInstallRoot\Common7\IDE\Extensions\MachineState.json" -Value $newContent
# Install Windows 10 SDK version 10.0.14393.795
$sdkUrl = "https://go.microsoft.com/fwlink/p/?LinkId=838916"
$sdkFileName = "sdksetup14393.exe"
$argumentList = ("/q", "/norestart", "/ceip off", "/features OptionId.WindowsSoftwareDevelopmentKit")
Install-Binary -Url $sdkUrl -Name $sdkFileName -ArgumentList $argumentList

View File

@@ -1,24 +0,0 @@
################################################################################
## File: Update-DockerImages.ps1
## Desc: Pull some standard docker images.
## Must be run after docker is installed.
################################################################################
function DockerPull {
Param ([string]$image)
Write-Host Installing $image ...
docker pull $image
if (!$?) {
Write-Host "Docker pull failed with a non-zero exit code"
exit 1
}
}
DockerPull mcr.microsoft.com/windows/servercore:ltsc2019
DockerPull mcr.microsoft.com/windows/nanoserver:1809
DockerPull microsoft/aspnetcore-build:1.0-2.0
DockerPull mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019
DockerPull mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019

View File

@@ -34,7 +34,7 @@ function Get-JavaVersionsList {
function Get-RustVersion {
$rustVersion = [regex]::matches($(rustc --version), "\d+\.\d+\.\d+").Value
return "Rust ${rustVersion}"
return $rustVersion
}
function Get-BindgenVersion {
@@ -243,6 +243,21 @@ function Get-PowerShellAzureModules {
}
}
function Get-PowerShellModules {
$modules = (Get-ToolsetContent).powershellModules.name
$psModules = Get-Module -Name $modules -ListAvailable | Sort-Object Name | Group-Object Name
$psModules | ForEach-Object {
$moduleName = $_.Name
$moduleVersions = ($_.group.Version | Sort-Object -Unique) -join '<br>'
[PSCustomObject]@{
Module = $moduleName
Version = $moduleVersions
}
}
}
function Get-CachedDockerImages {
return (docker images --digests --format "* {{.Repository}}:{{.Tag}}").Split("*") | Where-Object { $_ }
}

View File

@@ -1,6 +1,3 @@
# Install MarkdownPS module for software report generation
Install-Module MarkdownPS -Force -Scope AllUsers
Import-Module MarkdownPS
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Android.psm1") -DisableNameChecking
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Browsers.psm1") -DisableNameChecking
@@ -13,6 +10,10 @@ Import-Module (Join-Path $PSScriptRoot "SoftwareReport.VisualStudio.psm1") -Disa
$markdown = ""
$Announcements = Get-Content -Path $(Join-Path $PSScriptRoot "announcements.md") -Raw
$markdown += $Announcements
$markdown += New-MDNewLine
$OSName = Get-OSName
$markdown += New-MDHeader "$OSName" -Level 1
@@ -35,14 +36,12 @@ $markdown += New-MDHeader "Language and Runtime" -Level 3
$markdown += New-MDList -Lines (Get-JavaVersionsList -DefaultVersion "1.8.0") -Style Unordered -NoNewLine
$markdown += New-MDList -Style Unordered -Lines @(
(Get-RustVersion),
(Get-PythonVersion),
(Get-RubyVersion),
(Get-GoVersion),
(Get-PHPVersion),
(Get-JuliaVersion),
(Get-PerlVersion),
(Get-PowershellCoreVersion),
(Get-NodeVersion)
)
@@ -74,6 +73,7 @@ $markdown += New-MDList -Style Unordered -Lines @(
(Get-BazelVersion),
(Get-BazeliskVersion),
(Get-CMakeVersion),
(Get-RVersion),
(Get-DockerVersion),
(Get-DockerComposeVersion),
(Get-GitVersion),
@@ -115,7 +115,11 @@ $markdown += New-MDList -Style Unordered -Lines @(
(Get-GoogleCloudSDKVersion)
)
$markdown += New-MDHeader "Rust packages:" -Level 3
$markdown += New-MDHeader "Rust Tools" -Level 3
$markdown += New-MDList -Style Unordered -Lines @(
"Rust $(Get-RustVersion)"
)
$markdown += New-MDHeader "Packages" -Level 4
$markdown += New-MDList -Style Unordered -Lines @(
(Get-BindgenVersion),
(Get-CbindgenVersion),
@@ -187,7 +191,11 @@ $markdown += "``Location $($frameworks.Path)``"
$markdown += New-MDNewLine
$markdown += New-MDList -Lines $frameworks.Versions -Style Unordered
$markdown += New-MDHeader "Azure Powershell Modules" -Level 3
# PowerShell Tools
$markdown += New-MDHeader "PowerShell Tools" -Level 3
$markdown += New-MDList -Lines (Get-PowershellCoreVersion) -Style Unordered
$markdown += New-MDHeader "Azure Powershell Modules" -Level 4
$markdown += Get-PowerShellAzureModules | New-MDTable
$markdown += @'
```
@@ -198,6 +206,10 @@ All other versions are saved but not installed.
'@
$markdown += New-MDNewLine
$markdown += New-MDHeader "Powershell Modules" -Level 4
$markdown += Get-PowerShellModules | New-MDTable
$markdown += New-MDNewLine
# Android section
$androidInstalledPackages = Get-AndroidInstalledPackages

View File

@@ -18,6 +18,12 @@ function Get-BazeliskVersion {
return "Bazelisk $bazeliskVersion"
}
function Get-RVersion {
($(cmd /c "Rscript --version 2>&1") | Out-String) -match "R scripting front-end version (?<version>\d+\.\d+\.\d+)" | Out-Null
$rVersion = $Matches.Version
return "R $rVersion"
}
function Get-CMakeVersion {
($(cmake -version) | Out-String) -match "cmake version (?<version>\d+\.\d+\.\d+)" | Out-Null
$cmakeVersion = $Matches.Version

View File

@@ -1,10 +1,3 @@
function Get-VisualStudioPackages
{
$packagePath = "$env:ProgramData\Microsoft\VisualStudio\Packages\_Instances\*\state.packages.json"
$instanceFolders = Get-ChildItem -Path $packagePath
(Get-Content -Path $instanceFolders | ConvertFrom-Json).packages
}
function Get-VisualStudioVersion {
$vsVersion = vswhere -format json | ConvertFrom-Json
[PSCustomObject]@{
@@ -14,12 +7,6 @@ function Get-VisualStudioVersion {
}
}
function Get-VisualStudioComponents {
$vsPackages = Get-VisualStudioPackages | Where-Object type -in 'Component', 'Workload'
$vsPackages | Sort-Object Id, Version | Select-Object @{n = 'Package'; e = {$_.Id}}, Version |
Where-Object { $_.Package -notmatch "[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}" }
}
function Get-WixVersion {
$regKey = "HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*"
$installedApplications = Get-ItemProperty -Path $regKey
@@ -35,8 +22,8 @@ function Get-WDKVersion {
function Get-VisualStudioExtensions {
# Wix
$vs = (Get-VisualStudioVersion).Name.Split()[-1]
$wixPackageVersion = (Get-VisualStudioPackages | Where-Object {$_.id -match 'WixToolset.VisualStudioExtension.Dev' -and $_.type -eq 'vsix'}).Version
$wixExtensionVersion = Get-WixVersion
$wixPackageVersion = Get-WixVersion
$wixExtensionVersion = (Get-VisualStudioPackages | Where-Object {$_.Id -match 'WixToolset.VisualStudioExtension.Dev' -and $_.type -eq 'vsix'}).Version
# WDK
$wdkPackageVersion = Get-VSExtensionVersion -packageName 'Microsoft.Windows.DriverKit'

View File

@@ -0,0 +1,26 @@
$releaseIndexUrl = "https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases-index.json"
$dotnetChannels = (New-Object system.net.webclient).DownloadString($releaseIndexUrl) | ConvertFrom-Json
$dotnetVersions = $dotnetChannels.'releases-index' | Where-Object { (!$_."support-phase".Equals('preview') -and !$_."support-phase".Equals('eol')) } | Select-Object -ExpandProperty "channel-version"
Describe "Dotnet SDK" {
Context "Default" {
It "Default Dotnet SDK is available" {
"dotnet --version" | Should -ReturnZeroExitCode
}
}
foreach ($version in $dotnetVersions) {
Context "Dotnet $version" {
$dotnet = @{ dotnetVersion = $version }
It "SDK $version is available" -TestCases $dotnet {
(dotnet --list-sdks | Where-Object { $_ -match "${dotnetVersion}\.[0-9]*" }).Count | Should -BeGreaterThan 0
}
It "Runtime $version is available" -TestCases $dotnet {
(dotnet --list-runtimes | Where-Object { $_ -match "${dotnetVersion}\.[0-9]*" }).Count | Should -BeGreaterThan 0
}
}
}
}

View File

@@ -0,0 +1,68 @@
Describe "PowerShellModules" {
$modules = (Get-ToolsetContent).powershellModules
$withoutVersionsModules = $modules | Where-Object {-not $_.versions} | ForEach-Object {
@{moduleName = $_.name}
}
$withVersionsModules = $modules | Where-Object {$_.versions} | ForEach-Object {
$moduleName = $_.name
$_.versions | ForEach-Object {
@{moduleName = $moduleName; expectedVersion = $_}
}
}
It "<moduleName> is installed" -TestCases $withoutVersionsModules {
Get-Module -Name $moduleName -ListAvailable | Should -BeTrue
}
if ($withVersionsModules) {
It "<moduleName> with <expectedVersion> is installed" -TestCases $withVersionsModules {
(Get-Module -Name $moduleName -ListAvailable).Version -contains $expectedVersion | Should -BeTrue
}
}
}
Describe "AzureModules" {
$modules = (Get-ToolsetContent).azureModules
$modulesRootPath = $env:PSMODULES_ROOT_FOLDER
foreach ($module in $modules) {
$moduleName = $module.name
Context "$moduleName" {
foreach ($version in $module.versions) {
$modulePath = Join-Path -Path $modulesRootPath -ChildPath "${moduleName}_${version}"
$moduleInfo = @{ moduleName = $moduleName; modulePath = $modulePath; expectedVersion = $version }
It "<expectedVersion> exists in modules directory" -TestCases $moduleInfo {
$testJob = Start-Job -ScriptBlock {
param (
$modulePath,
$moduleName
)
# Disable warning messages to prevent additional warnings about Az and Azurerm modules in the same session
$WarningPreference = "SilentlyContinue"
$env:PsModulePath = "$modulePath;$env:PsModulePath"
Import-Module -Name $moduleName
(Get-Module -Name $moduleName).Version.ToString()
} -ArgumentList $modulePath, $moduleName
$moduleVersion = $testJob | Wait-Job | Receive-Job
Remove-Job $testJob
$moduleVersion | Should -Match $expectedVersion
}
}
if ($module.default) {
$moduleInfo = @{ moduleName = $moduleName; moduleDefault = $module.default }
It "<moduleDefault> set as default" -TestCases $moduleInfo {
$moduleVersion = (Get-Module -ListAvailable -Name $moduleName).Version.ToString()
$moduleVersion | Should -Match $moduleDefault
}
}
}
}
}

View File

@@ -6,12 +6,102 @@ Describe "7-Zip" {
}
}
Describe "AliyunCli" {
It "AliyunCli" {
"aliyun version" | Should -ReturnZeroExitCode
}
}
Describe "AWS" {
It "AWS CLI" {
"aws --version" | Should -ReturnZeroExitCode
}
It "Session Manager Plugin for the AWS CLI" {
session-manager-plugin | Out-String | Should -Match "plugin was installed successfully"
}
It "AWS SAM CLI" {
"sam --version" | Should -ReturnZeroExitCode
}
}
Describe "AzCopy" {
It "AzCopy" {
"azcopy --version" | Should -ReturnZeroExitCode
}
}
Describe "Azure Cosmos DB Emulator" {
$cosmosDbEmulatorRegKey = Get-ChildItem "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*" | Get-ItemProperty | Where-Object { $_.DisplayName -eq 'Azure Cosmos DB Emulator' }
$installDir = $cosmosDbEmulatorRegKey.InstallLocation
It "Azure Cosmos DB Emulator install location registry key exists" -TestCases @{installDir = $installDir} {
$installDir | Should -Not -BeNullOrEmpty
}
It "Azure Cosmos DB Emulator exe file exists" -TestCases @{installDir = $installDir} {
$exeFilePath = Join-Path $installDir 'CosmosDB.Emulator.exe'
$exeFilePath | Should -Exist
}
}
Describe "AzureCli" {
It "AzureCli" {
"az --version" | Should -ReturnZeroExitCode
}
}
Describe "Azure DevOps CLI" {
It "az devops" {
"az devops -h" | Should -ReturnZeroExitCode
}
}
Describe "Bazel" {
It "<ToolName>" -TestCases @(
@{ ToolName = "bazel" }
@{ ToolName = "bazelisk" }
) {
"$ToolName --version"| Should -ReturnZeroExitCode
}
}
Describe "CMake" {
It "cmake" {
"cmake --version" | Should -ReturnZeroExitCode
}
}
Describe "R" {
It "Rscript" {
"Rscript --version" | Should -ReturnZeroExitCode
}
}
Describe "DACFx" {
It "DACFx" {
(Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*).DisplayName -Contains "Microsoft SQL Server Data-Tier Application Framework (x64)" | Should -BeTrue
$sqlPackagePath = 'C:\Program Files\Microsoft SQL Server\150\DAC\bin\SqlPackage.exe'
$sqlLocalDBPath = 'C:\Program Files\Microsoft SQL Server\130\Tools\Binn\SqlLocalDB.exe'
"${sqlPackagePath}" | Should -Exist
"${sqlLocalDBPath}" | Should -Exist
}
}
Describe "Docker" {
It "<ToolName>" -TestCases @(
@{ ToolName = "docker" }
@{ ToolName = "docker-compose" }
) {
"$ToolName --version"| Should -ReturnZeroExitCode
}
It "Helm" {
"helm version --short" | Should -ReturnZeroExitCode
}
}
Describe "Kind" {
It "Kind" {
"kind version" | Should -ReturnZeroExitCode

View File

@@ -0,0 +1,25 @@
Describe "Visual Studio" {
Context "Basic" {
It "Catalog.json" {
Get-VsCatalogJsonPath | Should -Exist
}
It "Devenv.exe" {
$vsInstallRoot = Get-VisualStudioPath
$devenvexePath = "${vsInstallRoot}\Common7\IDE\devenv.exe"
$devenvexePath | Should -Exist
}
}
Context "Visual Studio components" {
$expectedComponents = Get-ToolsetContent | Select-Object -ExpandProperty visualStudio | Select-Object -ExpandProperty workloads
$testCases = $expectedComponents | ForEach-Object { @{ComponentName = $_} }
BeforeAll {
$installedComponents = Get-VisualStudioComponents | Select-Object -ExpandProperty Package
}
It "<ComponentName>" -TestCases $testCases {
$installedComponents | Should -Contain $ComponentName
}
}
}

View File

@@ -75,6 +75,15 @@
]
}
],
"powershellModules": [
{"name": "DockerMsftProvider"},
{"name": "MarkdownPS"},
{"name": "Pester"},
{"name": "PowerShellGet"},
{"name": "PSWindowsUpdate"},
{"name": "SqlServer"},
{"name": "VSSetup"}
],
"azureModules": [
{
"name": "azurerm",
@@ -142,5 +151,80 @@
"patcher;v4",
"ndk-bundle"
]
},
"visualStudio": {
"version" : "2017",
"subversion" : "15",
"edition" : "Enterprise",
"workloads": [
"Microsoft.Net.Component.4.6.2.SDK",
"Microsoft.Net.Component.4.6.2.TargetingPack",
"Microsoft.Net.ComponentGroup.4.6.2.DeveloperTools",
"Microsoft.Net.Component.4.7.SDK",
"Microsoft.Net.Component.4.7.TargetingPack",
"Microsoft.Net.ComponentGroup.4.7.DeveloperTools",
"Microsoft.Net.Component.4.7.1.SDK",
"Microsoft.Net.Component.4.7.1.TargetingPack",
"Microsoft.Net.ComponentGroup.4.7.1.DeveloperTools",
"Microsoft.Net.Component.4.7.2.SDK",
"Microsoft.Net.Component.4.7.2.TargetingPack",
"Microsoft.Net.ComponentGroup.4.7.2.DeveloperTools",
"Microsoft.Net.Core.Component.SDK.1x",
"Microsoft.NetCore.1x.ComponentGroup.Web",
"Microsoft.VisualStudio.Component.Azure.Storage.AzCopy",
"Microsoft.VisualStudio.Component.VC.140",
"Component.Dotfuscator",
"Microsoft.VisualStudio.Component.VC.ATL",
"Microsoft.VisualStudio.Component.VC.ATL.ARM",
"Microsoft.VisualStudio.Component.VC.ATL.ARM64",
"Microsoft.VisualStudio.Component.VC.ATLMFC",
"Microsoft.VisualStudio.Component.VC.ClangC2",
"Microsoft.VisualStudio.Component.VC.CLI.Support",
"Microsoft.VisualStudio.Component.VC.Modules.x86.x64",
"Microsoft.VisualStudio.Component.Windows10SDK.10240",
"Microsoft.VisualStudio.Component.Windows10SDK.10586",
"Microsoft.VisualStudio.Component.Windows10SDK.14393",
"Microsoft.VisualStudio.Component.Windows10SDK.15063.Desktop",
"Component.Unreal",
"Component.Unreal.Android",
"Component.Android.SDK23",
"Microsoft.VisualStudio.Component.TestTools.WebLoadTest",
"Microsoft.VisualStudio.Web.Mvc4.ComponentGroup",
"Component.Linux.CMake",
"Microsoft.Component.PythonTools.UWP",
"Microsoft.Component.VC.Runtime.OSSupport",
"Microsoft.VisualStudio.Component.VC.Tools.ARM",
"Microsoft.VisualStudio.ComponentGroup.UWP.VC",
"Microsoft.VisualStudio.Component.VSSDK",
"Microsoft.VisualStudio.Component.LinqToSql",
"Microsoft.VisualStudio.Component.TestTools.CodedUITest",
"Microsoft.VisualStudio.Component.TestTools.Core",
"Microsoft.VisualStudio.Component.TypeScript.2.0",
"Microsoft.VisualStudio.Component.TypeScript.2.1",
"Microsoft.VisualStudio.Component.TypeScript.2.2",
"Microsoft.VisualStudio.Component.VC.Tools.ARM64",
"Microsoft.VisualStudio.Component.Windows10SDK.16299.Desktop.arm",
"Microsoft.VisualStudio.Component.DslTools",
"Microsoft.VisualStudio.Component.Windows81SDK",
"Microsoft.VisualStudio.Component.WinXP",
"Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Win81",
"Microsoft.VisualStudio.ComponentGroup.NativeDesktop.WinXP",
"Microsoft.VisualStudio.ComponentGroup.ArchitectureTools.Managed",
"Microsoft.Component.Blend.SDK.WPF",
"Microsoft.Component.VC.Runtime.UCRTSDK",
"Microsoft.VisualStudio.Component.Sharepoint.Tools",
"Microsoft.VisualStudio.Component.TeamOffice",
"Microsoft.VisualStudio.Component.VC.ATL.Spectre",
"Microsoft.VisualStudio.Component.VC.ATL.ARM.Spectre",
"Microsoft.VisualStudio.Component.VC.ATL.ARM64.Spectre",
"Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre",
"Microsoft.VisualStudio.Component.Windows10SDK.17134",
"Microsoft.VisualStudio.Component.Windows10SDK.17763",
"Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre",
"Microsoft.VisualStudio.Component.VC.Runtimes.ARM.Spectre",
"Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre",
"Microsoft.VisualStudio.Component.Workflow",
"Microsoft.VisualStudio.Workload.Office"
]
}
}

View File

@@ -84,6 +84,15 @@
]
}
],
"powershellModules": [
{"name": "DockerMsftProvider"},
{"name": "MarkdownPS"},
{"name": "Pester"},
{"name": "PowerShellGet"},
{"name": "PSWindowsUpdate"},
{"name": "SqlServer"},
{"name": "VSSetup"}
],
"azureModules": [
{
"name": "azurerm",
@@ -151,5 +160,102 @@
"patcher;v4",
"ndk-bundle"
]
},
"visualStudio": {
"version" : "2019",
"subversion" : "16",
"edition" : "Enterprise",
"workloads": [
"Component.Dotfuscator",
"Component.Linux.CMake",
"Component.UnityEngine.x64",
"Component.Unreal.Android",
"Microsoft.Component.Azure.DataLake.Tools",
"Microsoft.Component.PythonTools.Miniconda",
"Microsoft.Component.PythonTools.Web",
"Microsoft.Component.VC.Runtime.UCRTSDK",
"Microsoft.Net.ComponentGroup.4.6.2.DeveloperTools",
"Microsoft.Net.ComponentGroup.4.7.1.DeveloperTools",
"Microsoft.Net.Component.4.7.2.SDK",
"Microsoft.Net.Component.4.7.2.TargetingPack",
"Microsoft.Net.ComponentGroup.4.7.DeveloperTools",
"Microsoft.VisualStudio.Component.AspNet45",
"Microsoft.VisualStudio.Component.Azure.Kubernetes.Tools",
"Microsoft.VisualStudio.Component.Azure.ServiceFabric.Tools",
"Microsoft.VisualStudio.Component.Azure.Storage.AzCopy",
"Microsoft.VisualStudio.Component.Debugger.JustInTime",
"Microsoft.VisualStudio.Component.DslTools",
"Microsoft.VisualStudio.Component.EntityFramework",
"Microsoft.VisualStudio.Component.FSharp.Desktop",
"Microsoft.VisualStudio.Component.LinqToSql",
"Microsoft.VisualStudio.Component.SQL.SSDT",
"Microsoft.VisualStudio.Component.Sharepoint.Tools",
"Microsoft.VisualStudio.Component.PortableLibrary",
"Microsoft.VisualStudio.Component.TeamOffice",
"Microsoft.VisualStudio.Component.TestTools.CodedUITest",
"Microsoft.VisualStudio.Component.TestTools.WebLoadTest",
"Microsoft.VisualStudio.Component.UWP.VC.ARM64",
"Microsoft.VisualStudio.Component.VC.140",
"Microsoft.VisualStudio.Component.VC.ATL.ARM",
"Microsoft.VisualStudio.Component.VC.ATLMFC",
"Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre",
"Microsoft.VisualStudio.Component.VC.CLI.Support",
"Microsoft.VisualStudio.Component.VC.CMake.Project",
"Microsoft.VisualStudio.Component.VC.DiagnosticTools",
"Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset",
"Microsoft.VisualStudio.Component.VC.MFC.ARM",
"Microsoft.VisualStudio.Component.VC.MFC.ARM.Spectre",
"Microsoft.VisualStudio.Component.VC.MFC.ARM64",
"Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre",
"Microsoft.VisualStudio.Component.VC.Redist.MSM",
"Microsoft.VisualStudio.Component.VC.Runtimes.ARM.Spectre",
"Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre",
"Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre",
"Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest",
"Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest",
"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",
"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",
"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.14.25.x86.x64",
"Microsoft.VisualStudio.Component.Windows10SDK.16299",
"Microsoft.VisualStudio.Component.Windows10SDK.17134",
"Microsoft.VisualStudio.Component.Windows10SDK.17763",
"Microsoft.VisualStudio.Component.Windows10SDK.18362",
"Microsoft.VisualStudio.Component.Windows10SDK.19041",
"Microsoft.VisualStudio.Component.WinXP",
"Microsoft.VisualStudio.Component.Workflow",
"Microsoft.VisualStudio.ComponentGroup.Azure.CloudServices",
"Microsoft.VisualStudio.ComponentGroup.Azure.ResourceManager.Tools",
"Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Llvm.Clang",
"Microsoft.VisualStudio.ComponentGroup.Web.CloudTools",
"Microsoft.VisualStudio.Workload.Azure",
"Microsoft.VisualStudio.Workload.Data",
"Microsoft.VisualStudio.Workload.DataScience",
"Microsoft.VisualStudio.Workload.ManagedDesktop",
"Microsoft.VisualStudio.Workload.ManagedGame",
"Microsoft.VisualStudio.Workload.NativeCrossPlat",
"Microsoft.VisualStudio.Workload.NativeDesktop",
"Microsoft.VisualStudio.Workload.NativeGame",
"Microsoft.VisualStudio.Workload.NativeMobile",
"Microsoft.VisualStudio.Workload.NetCoreTools",
"Microsoft.VisualStudio.Workload.NetCrossPlat",
"Microsoft.VisualStudio.Workload.NetWeb",
"Microsoft.VisualStudio.Workload.Node",
"Microsoft.VisualStudio.Workload.Office",
"Microsoft.VisualStudio.Workload.Python",
"Microsoft.VisualStudio.Workload.Universal",
"Microsoft.VisualStudio.Workload.VisualStudioExtension",
"Component.MDD.Linux",
"Component.MDD.Linux.GCC.arm"
]
}
}

View File

@@ -136,10 +136,10 @@ rules:
# Types
- valueFor: '**Question, Bug, or Feature?**'
contains: Feature
addLabels: ['enhancement']
addLabels: ['feature request']
- valueFor: '**Question, Bug, or Feature?**'
contains: Bug
addLabels: ['bug']
addLabels: ['investigate']
- valueFor: '**Question, Bug, or Feature?**'
contains: Question
addLabels: ['question']