mirror of
https://github.com/actions/runner-images-sangeeth.git
synced 2025-12-20 06:29:50 +00:00
Merge branch 'master' into v-dimago/add_oras_cli
This commit is contained in:
1
.github/ISSUE_TEMPLATE/bug-report.md
vendored
1
.github/ISSUE_TEMPLATE/bug-report.md
vendored
@@ -20,6 +20,7 @@ A clear and concise description of what the bug is, and why you consider it to b
|
||||
- [ ] macOS 10.15
|
||||
- [ ] Ubuntu 16.04 LTS
|
||||
- [ ] Ubuntu 18.04 LTS
|
||||
- [ ] Ubuntu 20.04 LTS
|
||||
- [ ] Windows Server 2016 R2
|
||||
- [ ] Windows Server 2019
|
||||
|
||||
|
||||
1
.github/ISSUE_TEMPLATE/tool-request.md
vendored
1
.github/ISSUE_TEMPLATE/tool-request.md
vendored
@@ -27,6 +27,7 @@ assignees: ''
|
||||
- [ ] macOS 10.15
|
||||
- [ ] Ubuntu 16.04 LTS
|
||||
- [ ] Ubuntu 18.04 LTS
|
||||
- [ ] Ubuntu 20.04 LTS
|
||||
- [ ] Windows Server 2016 R2
|
||||
- [ ] Windows Server 2019
|
||||
|
||||
|
||||
24
.github/workflows/create_github_release.yml
vendored
Normal file
24
.github/workflows/create_github_release.yml
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
name: Create GitHub release
|
||||
|
||||
on:
|
||||
repository_dispatch:
|
||||
types: [create-github-release]
|
||||
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Create release for ${{ github.event.client_payload.ReleaseBranchName }}
|
||||
uses: actions/create-release@v1.1.1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
tag_name: ${{ github.event.client_payload.ReleaseBranchName }}
|
||||
release_name: ${{ github.event.client_payload.ReleaseTitle }}
|
||||
body: ${{ github.event.client_payload.ReleaseBody }}
|
||||
prerelease: ${{ github.event.client_payload.Prerelease }}
|
||||
commitish: ${{ github.event.client_payload.Commitish }}
|
||||
27
.github/workflows/create_pull_request.yml
vendored
Normal file
27
.github/workflows/create_pull_request.yml
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
name: Create Pull Request
|
||||
|
||||
on:
|
||||
repository_dispatch:
|
||||
types: [create-pr]
|
||||
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Create pull request for ${{ github.event.client_payload.ReleaseBranchName }}
|
||||
uses: actions/github-script@v2
|
||||
with:
|
||||
github-token: ${{secrets.GITHUB_TOKEN}}
|
||||
script: |
|
||||
github.pulls.create({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
title: "${{ github.event.client_payload.PullRequestTitle }}",
|
||||
head: "${{ github.event.client_payload.ReleaseBranchName }}",
|
||||
base: "${{ github.event.client_payload.PullRequestBase }}",
|
||||
body: `${{ github.event.client_payload.PullRequestBody }}`
|
||||
});
|
||||
24
.github/workflows/merge_pull_request.yml
vendored
Normal file
24
.github/workflows/merge_pull_request.yml
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
name: Merge pull request
|
||||
|
||||
on:
|
||||
repository_dispatch:
|
||||
types: [merge-pr]
|
||||
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Merge pull request for ${{ github.event.client_payload.ReleaseBranchName }}
|
||||
uses: actions/github-script@v2
|
||||
with:
|
||||
github-token: ${{secrets.GITHUB_TOKEN}}
|
||||
script: |
|
||||
github.pulls.merge({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
pull_number: ${{ github.event.client_payload.PullRequestNumber }}
|
||||
})
|
||||
30
.github/workflows/update_github_release.yml
vendored
Normal file
30
.github/workflows/update_github_release.yml
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
name: Update release
|
||||
|
||||
on:
|
||||
repository_dispatch:
|
||||
types: [update-github-release]
|
||||
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Update release for ${{ github.event.client_payload.ReleaseBranchName }}
|
||||
uses: actions/github-script@v2
|
||||
with:
|
||||
github-token: ${{secrets.GITHUB_TOKEN}}
|
||||
script: |
|
||||
const response = await github.repos.getReleaseByTag({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
tag: "${{ github.event.client_payload.ReleaseBranchName }}"
|
||||
});
|
||||
github.repos.updateRelease({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
release_id: response.data.id,
|
||||
prerelease: ${{ github.event.client_payload.Prerelease }}
|
||||
});
|
||||
@@ -15,6 +15,12 @@ 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. Test your changes by [creating VHD and deploying a VM](help/CreateImageAndAzureResources.md).
|
||||
1. Push to your fork and [submit a pull request][pr]
|
||||
|
||||
|
||||
10
README.md
10
README.md
@@ -1,16 +1,21 @@
|
||||
# GitHub Actions Virtual Environments
|
||||
This repository contains the source used to create the [virtual environments](https://help.github.com/en/actions/reference/virtual-environments-for-github-hosted-runners) for GitHub Actions hosted runners, as well as the VM images of [Microsoft-hosted agents](https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=azure-devops#use-a-microsoft-hosted-agent) used for Azure Pipelines. To file bug reports, or request that tools be added/updated, please [open an issue using the appropriate template](https://github.com/actions/virtual-environments/issues/new/choose). To build a VM machine from this repo's source, see the [instructions](./help/CreateImageAndAzureResources.md).
|
||||
|
||||
For general questions about using the virtual environments or writing your Actions workflow, please open requests in the [GitHub Actions Community Forum](https://github.community/t5/GitHub-Actions/bd-p/actions).
|
||||
For general questions about using the virtual environments or writing your Actions workflow, please open requests in the [GitHub Actions Community Forum](https://github.community/c/github-actions/41).
|
||||
|
||||
## Available Environments
|
||||
| Environment | YAML Label | Included Software | Latest Release & Rollout Progress |
|
||||
| --------------------|---------------------|--------------------|---------------------|
|
||||
| Ubuntu 20.04 | `ubuntu-20.04` | [ubuntu-20.04] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=ubuntu20&redirect=1)
|
||||
| Ubuntu 18.04 | `ubuntu-latest` or `ubuntu-18.04` | [ubuntu-18.04] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=ubuntu18&redirect=1)
|
||||
| Ubuntu 16.04 | `ubuntu-16.04` | [ubuntu-16.04] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=ubuntu16&redirect=1) |
|
||||
| macOS 10.15 | `macos-latest` or `macos-10.15` | [macOS-10.15] | *Coming soon* |
|
||||
| macOS 10.15 | `macos-latest` or `macos-10.15` | [macOS-10.15] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=MacOS&redirect=1)
|
||||
| Windows Server 2019 | `windows-latest` or `windows-2019` | [windows-2019] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=windows-2019&redirect=1)
|
||||
| Windows Server 2016 | `windows-2016` | [windows-2016] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=windows-2016&redirect=1)
|
||||
```
|
||||
The Ubuntu 20.04 virtual environment is currently provided as a preview only.
|
||||
The "ubuntu-latest" YAML workflow label still uses the Ubuntu 18.04 virtual environment.
|
||||
```
|
||||
|
||||
***Looking for other Linux distributions?*** We do not plan to offer other Linux distributions. We recommend using Docker if you'd like to build using other distributions with the hosted virtual environments. Alternatively, you can leverage [self-hosted runners] and fully customize your environment to your needs.
|
||||
|
||||
@@ -44,6 +49,7 @@ we pin the tool to specific version(s).
|
||||
Low Impact changes will be pinned in this repository and marked with the [Announcement](https://github.com/actions/virtual-environments/labels/Announcement) label.
|
||||
* **Regular Weekly Rhythm** can be followed by watching [Releases](https://github.com/actions/virtual-environments/releases) to see when we generate candidate environments or deploy new ones. You can also track upcoming changes using the [awaiting-deployment](https://github.com/actions/virtual-environments/labels/awaiting-deployment) label.
|
||||
|
||||
[ubuntu-20.04]: https://github.com/actions/virtual-environments/blob/master/images/linux/Ubuntu2004-README.md
|
||||
[ubuntu-18.04]: https://github.com/actions/virtual-environments/blob/master/images/linux/Ubuntu1804-README.md
|
||||
[ubuntu-16.04]: https://github.com/actions/virtual-environments/blob/master/images/linux/Ubuntu1604-README.md
|
||||
[Windows-2019]: https://github.com/actions/virtual-environments/blob/master/images/win/Windows2019-Readme.md
|
||||
|
||||
@@ -1,92 +1,96 @@
|
||||
<!--- DO NOT EDIT - This markdown file is autogenerated. -->
|
||||
# Ubuntu 16.04.6 LTS
|
||||
The following software is installed on machines with the 20200517.1 update.
|
||||
The following software is installed on machines with the 20200625.0 update.
|
||||
***
|
||||
- Homebrew on Linux (Homebrew 2.2.16
|
||||
Homebrew/linuxbrew-core (git revision a74a6a; last commit 2020-05-16))
|
||||
- Homebrew on Linux (Homebrew 2.4.2
|
||||
Homebrew/linuxbrew-core (git revision 58dca; last commit 2020-06-24))
|
||||
- 7-Zip 9.20
|
||||
- Ansible (ansible 2.9.9)
|
||||
- Ansible (ansible 2.9.10)
|
||||
- AzCopy7 (available by azcopy alias) 7.3.0
|
||||
- AzCopy10 (available by azcopy10 alias) 10.4.3
|
||||
- Azure CLI (azure-cli 2.5.1)
|
||||
- Azure CLI (azure-cli 2.8.0)
|
||||
- Azure CLI (azure-devops 0.18.0)
|
||||
- Basic CLI:
|
||||
- curl
|
||||
- Basic packages:
|
||||
- dnsutils
|
||||
- file
|
||||
- ftp
|
||||
- iproute2
|
||||
- iputils-ping
|
||||
- jq
|
||||
- libc++-dev
|
||||
- libc++abi-dev
|
||||
- libcurl3
|
||||
- libgbm-dev
|
||||
- libicu55
|
||||
- libunwind8
|
||||
- locales
|
||||
- netcat
|
||||
- openssh-client
|
||||
- tzdata
|
||||
- zstd
|
||||
- lib32z1
|
||||
- libxkbfile-dev
|
||||
- pkg-config
|
||||
- libsecret-1-dev
|
||||
- libxss1
|
||||
- libgconf-2-4
|
||||
- dbus
|
||||
- xvfb
|
||||
- libgbm-dev
|
||||
- libgtk-3-0
|
||||
- tk
|
||||
- fakeroot
|
||||
- dpkg
|
||||
- rpm
|
||||
- xz-utils
|
||||
- xorriso
|
||||
- zsync
|
||||
- gnupg2
|
||||
- texinfo
|
||||
- curl
|
||||
- file
|
||||
- ftp
|
||||
- jq
|
||||
- netcat
|
||||
- ssh
|
||||
- parallel
|
||||
- rsync
|
||||
- shellcheck
|
||||
- sudo
|
||||
- telnet
|
||||
- time
|
||||
- tzdata
|
||||
- unzip
|
||||
- upx
|
||||
- wget
|
||||
- zip
|
||||
- zstd
|
||||
- gnupg2
|
||||
- lib32z1
|
||||
- Alibaba Cloud CLI (3.0.43)
|
||||
- AWS CLI (aws-cli/1.18.61 Python/2.7.12 Linux/4.15.0-1082-azure botocore/1.16.11)
|
||||
- wget
|
||||
- upx
|
||||
- m4
|
||||
- bison
|
||||
- flex
|
||||
- Alibaba Cloud CLI (3.0.48)
|
||||
- AWS CLI (aws-cli/1.18.87 Python/2.7.12 Linux/4.15.0-1089-azure botocore/1.17.10)
|
||||
- build-essential
|
||||
- nvm (0.35.3)
|
||||
- Clang 6.0 (6.0.0)
|
||||
- Clang 8 (8.0.0)
|
||||
- Clang 9 (9.0.1)
|
||||
- Swift version 5.2.3 (swift-5.2.3-RELEASE)
|
||||
- Swift version 5.2.4 (swift-5.2.4-RELEASE)
|
||||
Target: x86_64-unknown-linux-gnu
|
||||
- CMake (cmake version 3.17.0)
|
||||
- Docker Compose (docker-compose version 1.25.4, build 8d51620a)
|
||||
- Docker-Moby (Docker version 3.0.11+azure, build eb310fca49568dccd87c6136f774ef6fff2a1b51)
|
||||
- Docker-Buildx (0.3.1+azure)
|
||||
- Docker Compose (docker-compose version 1.26.0, build d4451659)
|
||||
- Docker-Moby (Docker version 3.0.13+azure, build dd360c7c0de8d9132a3965db6a59d3ae74f43ba7)
|
||||
- Docker-Buildx (0.4.1+azure)
|
||||
- .NET Core SDK:
|
||||
- 3.1.301
|
||||
- 3.1.300
|
||||
- 3.1.202
|
||||
- 3.1.201
|
||||
- 3.1.200
|
||||
- 3.1.105
|
||||
- 3.1.104
|
||||
- 3.1.103
|
||||
- 3.1.102
|
||||
- 3.1.101
|
||||
- 3.1.100
|
||||
- 3.0.103
|
||||
- 3.0.102
|
||||
- 3.0.101
|
||||
- 3.0.100
|
||||
- 2.2.402
|
||||
- 2.2.401
|
||||
- 2.2.301
|
||||
- 2.2.300
|
||||
- 2.2.207
|
||||
- 2.2.206
|
||||
- 2.2.205
|
||||
- 2.2.204
|
||||
- 2.2.203
|
||||
- 2.2.202
|
||||
- 2.2.110
|
||||
- 2.2.109
|
||||
- 2.2.108
|
||||
- 2.2.107
|
||||
- 2.2.106
|
||||
- 2.2.105
|
||||
- 2.2.104
|
||||
- 2.2.103
|
||||
- 2.2.102
|
||||
- 2.2.101
|
||||
- 2.2.100
|
||||
- 2.1.807
|
||||
- 2.1.806
|
||||
- 2.1.805
|
||||
- 2.1.804
|
||||
@@ -95,6 +99,7 @@ Target: x86_64-unknown-linux-gnu
|
||||
- 2.1.801
|
||||
- 2.1.701
|
||||
- 2.1.700
|
||||
- 2.1.612
|
||||
- 2.1.611
|
||||
- 2.1.610
|
||||
- 2.1.609
|
||||
@@ -105,6 +110,7 @@ Target: x86_64-unknown-linux-gnu
|
||||
- 2.1.604
|
||||
- 2.1.603
|
||||
- 2.1.602
|
||||
- 2.1.515
|
||||
- 2.1.514
|
||||
- 2.1.513
|
||||
- 2.1.512
|
||||
@@ -125,112 +131,100 @@ Target: x86_64-unknown-linux-gnu
|
||||
- 2.1.302
|
||||
- 2.1.301
|
||||
- 2.1.300
|
||||
- Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 11.0)
|
||||
- Firefox (Mozilla Firefox 76.0.1)
|
||||
- Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 11.0.2)
|
||||
- Firefox (Mozilla Firefox 77.0.1)
|
||||
- Geckodriver (0.26.0); Gecko Driver is available via GECKOWEBDRIVER environment variable
|
||||
- GNU C++ 7.5.0
|
||||
- GNU C++ 8.4.0
|
||||
- GNU C++ 9.3.0
|
||||
- GNU Fortran 8.4.0
|
||||
- GNU Fortran 9.3.0
|
||||
- Git (2.26.2)
|
||||
- Git (2.27.0)
|
||||
- Git Large File Storage (LFS) (2.11.0)
|
||||
- Git-ftp (1.0.2)
|
||||
- Hub CLI (2.14.2)
|
||||
- Google Chrome (Google Chrome 81.0.4044.138 )
|
||||
- ChromeDriver 81.0.4044.138 (8c6c7ba89cc9453625af54f11fd83179e23450fa-refs/branch-heads/4044@{#999}); Chrome Driver is available via CHROMEWEBDRIVER environment variable
|
||||
- Google Cloud SDK (292.0.0)
|
||||
- Haskell Cabal (cabal-install version 2.0.0.1
|
||||
compiled using version 2.0.1.1 of the Cabal library )
|
||||
- Haskell Cabal (cabal-install version 2.2.0.0
|
||||
compiled using version 2.2.0.1 of the Cabal library )
|
||||
- Haskell Cabal (cabal-install version 2.4.1.0
|
||||
compiled using version 2.4.1.0 of the Cabal library )
|
||||
- Haskell Cabal (cabal-install version 3.0.1.0
|
||||
compiled using version 3.0.2.0 of the Cabal library )
|
||||
- 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 (298.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.0.2)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.2.2)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.4.4)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.2)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.3)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.4)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.5)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.1)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.2)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.3)
|
||||
- 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.41.1 linux-x64 node-v12.16.2)
|
||||
- Heroku (heroku/7.42.1 linux-x64 node-v12.16.2)
|
||||
- HHVM (HipHop VM 4.56.0 (rel))
|
||||
- ImageMagick
|
||||
- Azul Zulu OpenJDK:
|
||||
- 7 (openjdk version "1.7.0_262")
|
||||
- Adopt OpenJDK:
|
||||
- 8 (openjdk version "1.8.0_252") (default)
|
||||
- 11 (openjdk version "11.0.7" 2020-04-14 LTS)
|
||||
- 11 (openjdk version "11.0.7" 2020-04-14)
|
||||
- 12 (openjdk version "12.0.2" 2019-07-16)
|
||||
- Ant (Apache Ant(TM) version 1.9.6 compiled on July 20 2018)
|
||||
- Gradle 6.4.1
|
||||
- Gradle 6.5
|
||||
- Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f))
|
||||
- Kind (kind v0.7.0 go1.13.6 linux/amd64)
|
||||
- kubectl (Client Version: v1.18.2)
|
||||
- helm (v3.2.1+gfe51cd1)
|
||||
- Kind (kind v0.8.1 go1.14.2 linux/amd64)
|
||||
- kubectl (Client Version: v1.18.4)
|
||||
- helm (v3.2.4+g0ad800e)
|
||||
- minikube version: v1.11.0
|
||||
- Leiningen (Leiningen 2.9.3 on Java 1.8.0_252 OpenJDK 64-Bit Server VM)
|
||||
- Mercurial (Mercurial Distributed SCM (version 4.4.1))
|
||||
- Miniconda (conda 4.8.2)
|
||||
- Miniconda (conda 4.8.3)
|
||||
- Mono (Mono JIT compiler version 6.8.0.123 (tarball Tue May 12 15:13:37 UTC 2020))
|
||||
- MySQL (mysql Ver 14.14 Distrib 5.7.30, for Linux (x86_64) using EditLine wrapper)
|
||||
- MySQL Server (user:root password:root)
|
||||
- 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'
|
||||
- Node.js (v12.16.3)
|
||||
- Node.js (v12.18.1)
|
||||
- Grunt (grunt-cli v1.2.0)
|
||||
- Gulp (CLI version: 2.2.0
|
||||
- Gulp (CLI version: 2.3.0
|
||||
Local version: Unknown)
|
||||
- n (6.5.1)
|
||||
- Parcel (1.12.4)
|
||||
- TypeScript (Version 3.9.2)
|
||||
- TypeScript (Version 3.9.5)
|
||||
- Webpack (4.43.0)
|
||||
- Webpack CLI (3.3.11)
|
||||
- Webpack CLI (3.3.12)
|
||||
- Yarn (1.22.4)
|
||||
- Bazel (bazel 3.1.0)
|
||||
- Bazelisk (1.4.0)
|
||||
- Bazel (bazel 3.3.0)
|
||||
- Bazelisk (1.5.0)
|
||||
- PhantomJS (2.1.1)
|
||||
- PHP 5.6 (PHP 5.6.40-29+ubuntu16.04.1+deb.sury.org+1 (cli) )
|
||||
- PHP 7.0 (PHP 7.0.33-29+ubuntu16.04.1+deb.sury.org+1 (cli) (built: May 14 2020 09:08:44) ( NTS ))
|
||||
- PHP 7.1 (PHP 7.1.33-16+ubuntu16.04.1+deb.sury.org+1 (cli) (built: May 14 2020 08:26:44) ( NTS ))
|
||||
- PHP 7.2 (PHP 7.2.31-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: May 14 2020 08:27:14) ( NTS ))
|
||||
- PHP 7.3 (PHP 7.3.18-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: May 14 2020 10:34:21) ( NTS ))
|
||||
- PHP 7.4 (PHP 7.4.6 (cli) (built: May 14 2020 10:02:18) ( NTS ))
|
||||
- Composer (Composer version 1.10.6 2020-05-06 10:28:10)
|
||||
- PHP 7.3 (PHP 7.3.19-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Jun 12 2020 07:48:10) ( NTS ))
|
||||
- PHP 7.4 (PHP 7.4.7 (cli) (built: Jun 12 2020 07:43:48) ( NTS ))
|
||||
- Composer (Composer version 1.10.8 2020-06-24 21:23:30)
|
||||
- PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.)
|
||||
- Pollinate
|
||||
- psql (PostgreSQL) 9.5.21
|
||||
- Powershell (PowerShell 7.0.1)
|
||||
- psql (PostgreSQL) 12.3
|
||||
- Powershell (PowerShell 7.0.2)
|
||||
- ruby (2.3.1p112)
|
||||
- gem (3.1.3)
|
||||
- gem (3.1.4)
|
||||
- rustup (1.21.1)
|
||||
- rust (1.43.1)
|
||||
- cargo (1.43.0)
|
||||
- rustfmt (1.4.12-stable)
|
||||
- rust (1.44.1)
|
||||
- cargo (1.44.1)
|
||||
- rustfmt (1.4.16-stable)
|
||||
- clippy (0.0.212)
|
||||
- rustdoc (1.43.1)
|
||||
- bindgen (0.53.2)
|
||||
- cbindgen (0.14.2)
|
||||
- Julia (julia version 1.4.1)
|
||||
- sbt (1.3.10)
|
||||
- rustdoc (1.44.1)
|
||||
- bindgen (0.54.0)
|
||||
- cbindgen (0.14.3)
|
||||
- Julia (julia version 1.4.2)
|
||||
- sbt (1.3.12)
|
||||
- Selenium server standalone (available via SELENIUM_JAR_PATH environment variable)
|
||||
- Sphinx Open Source Search Server
|
||||
- Subversion (svn, version 1.9.3 (r1718519))
|
||||
- Terraform (Terraform v0.12.25)
|
||||
- Packer (1.5.6)
|
||||
- Terraform (Terraform v0.12.28)
|
||||
- Packer (1.6.0)
|
||||
- Vcpkg 2020.02.04-unknownhash
|
||||
- Zeit Now CLI (19.0.1)
|
||||
- MongoDB on Linux (2020-05-17T09:41:36.640+0000 I CONTROL [initandlisten] db version v4.2.6
|
||||
2020-05-17T09:41:36.640+0000 I CONTROL [initandlisten] git version: 20364840b8f1af16917e4c23c1b5f5efd8b352f8
|
||||
2020-05-17T09:41:36.640+0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.2g 1 Mar 2016)
|
||||
- Vercel CLI (19.1.1)
|
||||
- MongoDB on Linux (2020-06-25T20:59:19.024+0000 I CONTROL [initandlisten] db version v4.2.8
|
||||
2020-06-25T20:59:19.024+0000 I CONTROL [initandlisten] git version: 43d25964249164d76d5e04dd6cf38f6111e21f5f
|
||||
2020-06-25T20:59:19.024+0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.2g 1 Mar 2016)
|
||||
- Haveged 1.9.1-3
|
||||
- AWS SAM CLI, version 0.49.0
|
||||
- AWS SAM CLI, version 0.53.0
|
||||
- Google Repository 58
|
||||
- Google Play services 49
|
||||
- Google APIs 24
|
||||
@@ -242,7 +236,8 @@ Local version: Unknown)
|
||||
- Android Support Repository 47.0.0
|
||||
- Android Solver for ConstraintLayout 1.0.2
|
||||
- Android Solver for ConstraintLayout 1.0.1
|
||||
- Android SDK Platform-Tools 30.0.1
|
||||
- Android SDK Platform-Tools 30.0.3
|
||||
- Android SDK Platform 30
|
||||
- Android SDK Platform 29
|
||||
- Android SDK Platform 28
|
||||
- Android SDK Platform 27
|
||||
@@ -257,6 +252,7 @@ Local version: Unknown)
|
||||
- Android SDK Platform 15
|
||||
- Android SDK Platform 10
|
||||
- Android SDK Patch Applier v4
|
||||
- Android SDK Build-Tools 30.0.0
|
||||
- Android SDK Build-Tools 29.0.3
|
||||
- Android SDK Build-Tools 29.0.2
|
||||
- Android SDK Build-Tools 29.0.0
|
||||
@@ -288,7 +284,7 @@ Local version: Unknown)
|
||||
- Android SDK Build-Tools 20.0.0
|
||||
- Android SDK Build-Tools 19.1.0
|
||||
- Android SDK Build-Tools 17.0.0
|
||||
- Android NDK 21.1.6352462
|
||||
- Android NDK 21.3.6528147
|
||||
- Android ConstraintLayout 1.0.2
|
||||
- Android ConstraintLayout 1.0.1
|
||||
- Az Module (1.0.0)
|
||||
@@ -298,15 +294,16 @@ Local version: Unknown)
|
||||
- Az Module (2.8.0)
|
||||
- Az Module (3.1.0)
|
||||
- Az Module (3.5.0)
|
||||
- Az Module (3.8.0)
|
||||
- Cached container images
|
||||
- node:10 (Digest: sha256:ce98742448dff008ff29b81816c148599e41e9cc580d17412ce7fb555bf57c6a)
|
||||
- node:12 (Digest: sha256:880673b2184fec70c7cf342452ce4cfac6c378cfa79d4529f49887bc55eb9f41)
|
||||
- jekyll/builder:latest (Digest: sha256:15d3241ba69bbc0bc62e40c30ec11d9dc4211fde0365a378bf1b9ec8c18eb57e)
|
||||
- buildpack-deps:stretch (Digest: sha256:dee4275fc056551e1f83c5a3ea024510ca63f03ceedd9a1c29cbab70644b046b)
|
||||
- debian:9 (Digest: sha256:d4de82f467cf1c7e022e95a1cb074b7d4d38f8ab2c20deeafd884c6a4531d94d)
|
||||
- debian:8 (Digest: sha256:be49b17833279f2177dbaeef87226528af8a652595afc11dd85c8cd8ad7fcd26)
|
||||
- node:12-alpine (Digest: sha256:84f5c9090cc741421b2376b2393e7d5fa2f89d36167c12eb57aef16dd64ecf6c)
|
||||
- node:10-alpine (Digest: sha256:b2db1b026f1b01a6a91f39d8204b89c5c13d2b40a017dd4d9253ab066c9cf2cb)
|
||||
- node:12-alpine (Digest: sha256:45694caf08b27f851b10f2ce30e986249d3b06590fefb7d327ba9a4fbd371d2b)
|
||||
- node:12 (Digest: sha256:2b85f4981f92ee034b51a3c8bb22dbb451d650d5c12b6439a169f8adc750e4b6)
|
||||
- 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)
|
||||
@@ -318,27 +315,29 @@ Local version: Unknown)
|
||||
- Ruby 2.5.8
|
||||
- Ruby 2.6.6
|
||||
- Ruby 2.7.1
|
||||
- PyPy:
|
||||
- PyPy 2.7.17
|
||||
- PyPy 3.6.9
|
||||
- Python (Python 2.7.12)
|
||||
- pip (pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7))
|
||||
- Python3 (Python 3.5.2)
|
||||
- pip3 (pip 8.1.1 from /usr/lib/python3/dist-packages (python 3.5))
|
||||
- Go 1.11.13 (go version go1.11.13 linux/amd64)
|
||||
- Go 1.12.17 (go version go1.12.17 linux/amd64)
|
||||
- Go 1.13.11 (go version go1.13.11 linux/amd64)
|
||||
- Go 1.14.3 (go version go1.14.3 linux/amd64)
|
||||
- Python:
|
||||
- Python 2.7.18
|
||||
- Python 3.5.9
|
||||
- Python 3.6.10
|
||||
- Python 3.7.7
|
||||
- Python 3.8.3
|
||||
- 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.20.1
|
||||
- node 12.16.3
|
||||
- node 14.2.0
|
||||
- Boost C++ Libraries 1.69.0
|
||||
- Boost C++ Libraries 1.72.0
|
||||
- node 10.21.0
|
||||
- node 12.18.1
|
||||
- node 14.4.0
|
||||
- go:
|
||||
- go 1.11.13
|
||||
- go 1.12.17
|
||||
- go 1.13.12
|
||||
- go 1.14.4
|
||||
- boost:
|
||||
- boost 1.69.0
|
||||
- boost 1.72.0
|
||||
|
||||
@@ -1,92 +1,95 @@
|
||||
<!--- DO NOT EDIT - This markdown file is autogenerated. -->
|
||||
# Ubuntu 18.04.4 LTS
|
||||
The following software is installed on machines with the 20200518.1 update.
|
||||
The following software is installed on machines with the 20200625.0 update.
|
||||
***
|
||||
- Homebrew on Linux (Homebrew 2.2.16
|
||||
Homebrew/linuxbrew-core (git revision 60cbe0; last commit 2020-05-17))
|
||||
- Homebrew on Linux (Homebrew 2.4.2
|
||||
Homebrew/linuxbrew-core (git revision 58dca; last commit 2020-06-24))
|
||||
- 7-Zip 16.02
|
||||
- Ansible (ansible 2.9.9)
|
||||
- Ansible (ansible 2.9.10)
|
||||
- AzCopy7 (available by azcopy alias) 7.3.0
|
||||
- AzCopy10 (available by azcopy10 alias) 10.4.3
|
||||
- Azure CLI (azure-cli 2.5.1)
|
||||
- Azure CLI (azure-cli 2.8.0)
|
||||
- Azure CLI (azure-devops 0.18.0)
|
||||
- Basic CLI:
|
||||
- curl
|
||||
- Basic packages:
|
||||
- dnsutils
|
||||
- file
|
||||
- ftp
|
||||
- iproute2
|
||||
- iputils-ping
|
||||
- jq
|
||||
- libcurl3
|
||||
- libgbm-dev
|
||||
- libicu55
|
||||
- libunwind8
|
||||
- locales
|
||||
- netcat
|
||||
- openssh-client
|
||||
- tzdata
|
||||
- upx
|
||||
- zstd
|
||||
- libxkbfile-dev
|
||||
- pkg-config
|
||||
- libsecret-1-dev
|
||||
- libxss1
|
||||
- libgconf-2-4
|
||||
- dbus
|
||||
- xvfb
|
||||
- libgbm-dev
|
||||
- libgtk-3-0
|
||||
- tk
|
||||
- fakeroot
|
||||
- dpkg
|
||||
- rpm
|
||||
- xz-utils
|
||||
- xorriso
|
||||
- zsync
|
||||
- gnupg2
|
||||
- lib32z1
|
||||
- texinfo
|
||||
- curl
|
||||
- file
|
||||
- ftp
|
||||
- jq
|
||||
- netcat
|
||||
- ssh
|
||||
- parallel
|
||||
- rsync
|
||||
- shellcheck
|
||||
- sudo
|
||||
- telnet
|
||||
- time
|
||||
- tzdata
|
||||
- unzip
|
||||
- upx
|
||||
- wget
|
||||
- zip
|
||||
- zstd
|
||||
- gnupg2
|
||||
- lib32z1
|
||||
- Alibaba Cloud CLI (3.0.43)
|
||||
- AWS CLI (aws-cli/1.18.61 Python/2.7.17 Linux/5.3.0-1020-azure botocore/1.16.11)
|
||||
- wget
|
||||
- m4
|
||||
- bison
|
||||
- flex
|
||||
- libcurl3
|
||||
- Alibaba Cloud CLI (3.0.48)
|
||||
- AWS CLI (aws-cli/1.18.87 Python/2.7.17 Linux/5.3.0-1031-azure botocore/1.17.10)
|
||||
- build-essential
|
||||
- Clang 6.0 (6.0.0)
|
||||
- Clang 8 (8.0.0)
|
||||
- Clang 9 (9.0.0)
|
||||
- Swift version 5.2.3 (swift-5.2.3-RELEASE)
|
||||
- Swift version 5.2.4 (swift-5.2.4-RELEASE)
|
||||
Target: x86_64-unknown-linux-gnu
|
||||
- CMake (cmake version 3.17.0)
|
||||
- Podman (1.9.1)
|
||||
- Podman (1.9.3)
|
||||
- Buildah (1.14.9)
|
||||
- Skopeo (0.2.0)
|
||||
- Docker Compose (docker-compose version 1.25.4, build 8d51620a)
|
||||
- Docker-Moby (Docker version 3.0.11+azure, build eb310fca49568dccd87c6136f774ef6fff2a1b51)
|
||||
- Docker-Buildx (0.3.1+azure)
|
||||
- Skopeo (1.0.0)
|
||||
- Docker Compose (docker-compose version 1.26.0, build d4451659)
|
||||
- Docker-Moby (Docker version 3.0.13+azure, build dd360c7c0de8d9132a3965db6a59d3ae74f43ba7)
|
||||
- Docker-Buildx (0.4.1+azure)
|
||||
- .NET Core SDK:
|
||||
- 3.1.301
|
||||
- 3.1.300
|
||||
- 3.1.202
|
||||
- 3.1.201
|
||||
- 3.1.200
|
||||
- 3.1.105
|
||||
- 3.1.104
|
||||
- 3.1.103
|
||||
- 3.1.102
|
||||
- 3.1.101
|
||||
- 3.1.100
|
||||
- 3.0.103
|
||||
- 3.0.102
|
||||
- 3.0.101
|
||||
- 3.0.100
|
||||
- 2.2.402
|
||||
- 2.2.401
|
||||
- 2.2.301
|
||||
- 2.2.300
|
||||
- 2.2.207
|
||||
- 2.2.206
|
||||
- 2.2.205
|
||||
- 2.2.204
|
||||
- 2.2.203
|
||||
- 2.2.202
|
||||
- 2.2.110
|
||||
- 2.2.109
|
||||
- 2.2.108
|
||||
- 2.2.107
|
||||
- 2.2.106
|
||||
- 2.2.105
|
||||
- 2.2.104
|
||||
- 2.2.103
|
||||
- 2.2.102
|
||||
- 2.2.101
|
||||
- 2.2.100
|
||||
- 2.1.807
|
||||
- 2.1.806
|
||||
- 2.1.805
|
||||
- 2.1.804
|
||||
@@ -95,6 +98,7 @@ Target: x86_64-unknown-linux-gnu
|
||||
- 2.1.801
|
||||
- 2.1.701
|
||||
- 2.1.700
|
||||
- 2.1.612
|
||||
- 2.1.611
|
||||
- 2.1.610
|
||||
- 2.1.609
|
||||
@@ -105,6 +109,7 @@ Target: x86_64-unknown-linux-gnu
|
||||
- 2.1.604
|
||||
- 2.1.603
|
||||
- 2.1.602
|
||||
- 2.1.515
|
||||
- 2.1.514
|
||||
- 2.1.513
|
||||
- 2.1.512
|
||||
@@ -125,111 +130,99 @@ Target: x86_64-unknown-linux-gnu
|
||||
- 2.1.302
|
||||
- 2.1.301
|
||||
- 2.1.300
|
||||
- Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 11.0)
|
||||
- Firefox (Mozilla Firefox 76.0.1)
|
||||
- Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 11.0.2)
|
||||
- Firefox (Mozilla Firefox 77.0.1)
|
||||
- Geckodriver (0.26.0); Gecko Driver is available via GECKOWEBDRIVER environment variable
|
||||
- GNU C++ 7.5.0
|
||||
- GNU C++ 8.4.0
|
||||
- GNU C++ 9.3.0
|
||||
- GNU Fortran 8.4.0
|
||||
- GNU Fortran 9.3.0
|
||||
- Git (2.26.2)
|
||||
- Git (2.27.0)
|
||||
- Git Large File Storage (LFS) (2.11.0)
|
||||
- Git-ftp (1.3.1)
|
||||
- Hub CLI (2.14.2)
|
||||
- Google Chrome (Google Chrome 81.0.4044.138 )
|
||||
- ChromeDriver 81.0.4044.138 (8c6c7ba89cc9453625af54f11fd83179e23450fa-refs/branch-heads/4044@{#999}); Chrome Driver is available via CHROMEWEBDRIVER environment variable
|
||||
- Google Cloud SDK (292.0.0)
|
||||
- Haskell Cabal (cabal-install version 2.0.0.1
|
||||
compiled using version 2.0.1.1 of the Cabal library )
|
||||
- Haskell Cabal (cabal-install version 2.2.0.0
|
||||
compiled using version 2.2.0.1 of the Cabal library )
|
||||
- Haskell Cabal (cabal-install version 2.4.1.0
|
||||
compiled using version 2.4.1.0 of the Cabal library )
|
||||
- Haskell Cabal (cabal-install version 3.0.1.0
|
||||
compiled using version 3.0.2.0 of the Cabal library )
|
||||
- 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 (298.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.0.2)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.2.2)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.4.4)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.2)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.3)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.4)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.6.5)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.1)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.2)
|
||||
- GHC (The Glorious Glasgow Haskell Compilation System, version 8.8.3)
|
||||
- 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.41.1 linux-x64 node-v12.16.2)
|
||||
- HHVM (HipHop VM 4.57.0 (rel))
|
||||
- Heroku (heroku/7.42.1 linux-x64 node-v12.16.2)
|
||||
- HHVM (HipHop VM 4.62.0 (rel))
|
||||
- ImageMagick
|
||||
- Azul Zulu OpenJDK:
|
||||
- 7 (openjdk version "1.7.0_262")
|
||||
- Adopt OpenJDK:
|
||||
- 8 (openjdk version "1.8.0_252") (default)
|
||||
- 11 (openjdk version "11.0.7" 2020-04-14 LTS)
|
||||
- 11 (openjdk version "11.0.7" 2020-04-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.4.1
|
||||
- Gradle 6.5
|
||||
- Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f))
|
||||
- Kind (kind v0.7.0 go1.13.6 linux/amd64)
|
||||
- kubectl (Client Version: v1.18.2)
|
||||
- helm (v3.2.1+gfe51cd1)
|
||||
- Kind (kind v0.8.1 go1.14.2 linux/amd64)
|
||||
- kubectl (Client Version: v1.18.4)
|
||||
- helm (v3.2.4+g0ad800e)
|
||||
- minikube version: v1.11.0
|
||||
- Leiningen (Leiningen 2.9.3 on Java 1.8.0_252 OpenJDK 64-Bit Server VM)
|
||||
- Mercurial (Mercurial Distributed SCM (version 4.5.3))
|
||||
- Miniconda (conda 4.8.2)
|
||||
- Miniconda (conda 4.8.3)
|
||||
- Mono (Mono JIT compiler version 6.8.0.123 (tarball Tue May 12 15:11:57 UTC 2020))
|
||||
- MySQL (mysql Ver 14.14 Distrib 5.7.30, for Linux (x86_64) using EditLine wrapper)
|
||||
- MySQL Server (user:root password:root)
|
||||
- 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.16.3)
|
||||
- Node.js (v12.18.1)
|
||||
- Grunt (grunt-cli v1.2.0)
|
||||
- Gulp (CLI version: 2.2.0
|
||||
- Gulp (CLI version: 2.3.0
|
||||
Local version: Unknown)
|
||||
- n (6.5.1)
|
||||
- Parcel (1.12.4)
|
||||
- TypeScript (Version 3.9.2)
|
||||
- TypeScript (Version 3.9.5)
|
||||
- Webpack (4.43.0)
|
||||
- Webpack CLI (3.3.11)
|
||||
- Webpack CLI (3.3.12)
|
||||
- Yarn (1.22.4)
|
||||
- Bazel (bazel 3.1.0)
|
||||
- Bazelisk (1.4.0)
|
||||
- Bazel (bazel 3.3.0)
|
||||
- Bazelisk (1.5.0)
|
||||
- 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.31-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: May 14 2020 08:27:35) ( NTS ))
|
||||
- PHP 7.3 (PHP 7.3.18-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: May 14 2020 10:34:44) ( NTS ))
|
||||
- PHP 7.4 (PHP 7.4.6 (cli) (built: May 14 2020 10:02:44) ( NTS ))
|
||||
- Composer (Composer version 1.10.6 2020-05-06 10:28:10)
|
||||
- PHP 7.3 (PHP 7.3.19-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Jun 12 2020 07:48:30) ( 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)
|
||||
- PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.)
|
||||
- Pollinate
|
||||
- psql (PostgreSQL) 10.12
|
||||
- Powershell (PowerShell 7.0.1)
|
||||
- psql (PostgreSQL) 12.3
|
||||
- Powershell (PowerShell 7.0.2)
|
||||
- ruby (2.5.1p57)
|
||||
- gem (3.1.3)
|
||||
- gem (3.1.4)
|
||||
- rustup (1.21.1)
|
||||
- rust (1.43.1)
|
||||
- cargo (1.43.0)
|
||||
- rustfmt (1.4.12-stable)
|
||||
- rust (1.44.1)
|
||||
- cargo (1.44.1)
|
||||
- rustfmt (1.4.16-stable)
|
||||
- clippy (0.0.212)
|
||||
- rustdoc (1.43.1)
|
||||
- bindgen (0.53.2)
|
||||
- cbindgen (0.14.2)
|
||||
- Julia (julia version 1.4.1)
|
||||
- sbt (1.3.10)
|
||||
- rustdoc (1.44.1)
|
||||
- bindgen (0.54.0)
|
||||
- cbindgen (0.14.3)
|
||||
- Julia (julia version 1.4.2)
|
||||
- sbt (1.3.12)
|
||||
- Selenium server standalone (available via SELENIUM_JAR_PATH environment variable)
|
||||
- Sphinx Open Source Search Server
|
||||
- Subversion (svn, version 1.9.7 (r1800392))
|
||||
- Terraform (Terraform v0.12.25)
|
||||
- Packer (1.5.6)
|
||||
- Terraform (Terraform v0.12.28)
|
||||
- Packer (1.6.0)
|
||||
- Vcpkg 2020.02.04-unknownhash
|
||||
- Zeit Now CLI (19.0.1)
|
||||
- MongoDB on Linux (2020-05-18T09:20:20.102+0000 I CONTROL [initandlisten] db version v4.2.6
|
||||
2020-05-18T09:20:20.102+0000 I CONTROL [initandlisten] git version: 20364840b8f1af16917e4c23c1b5f5efd8b352f8
|
||||
2020-05-18T09:20:20.102+0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.1.1g 21 Apr 2020)
|
||||
- Vercel CLI (19.1.1)
|
||||
- MongoDB on Linux (2020-06-25T20:52:33.253+0000 I CONTROL [initandlisten] db version v4.2.8
|
||||
2020-06-25T20:52:33.253+0000 I CONTROL [initandlisten] git version: 43d25964249164d76d5e04dd6cf38f6111e21f5f
|
||||
2020-06-25T20:52:33.253+0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.1.1g 21 Apr 2020)
|
||||
- Haveged 1.9.1-6
|
||||
- AWS SAM CLI, version 0.49.0
|
||||
- AWS SAM CLI, version 0.53.0
|
||||
- Google Repository 58
|
||||
- Google Play services 49
|
||||
- Google APIs 24
|
||||
@@ -239,7 +232,8 @@ Local version: Unknown)
|
||||
- CMake 3.10.2.4988404
|
||||
3.6.4111459
|
||||
- Android Support Repository 47.0.0
|
||||
- Android SDK Platform-Tools 30.0.1
|
||||
- Android SDK Platform-Tools 30.0.3
|
||||
- Android SDK Platform 30
|
||||
- Android SDK Platform 29
|
||||
- Android SDK Platform 28
|
||||
- Android SDK Platform 27
|
||||
@@ -252,6 +246,7 @@ Local version: Unknown)
|
||||
- Android SDK Platform 19
|
||||
- Android SDK Platform 17
|
||||
- Android SDK Patch Applier v4
|
||||
- Android SDK Build-Tools 30.0.0
|
||||
- Android SDK Build-Tools 29.0.3
|
||||
- Android SDK Build-Tools 29.0.2
|
||||
- Android SDK Build-Tools 29.0.0
|
||||
@@ -283,7 +278,7 @@ Local version: Unknown)
|
||||
- Android SDK Build-Tools 20.0.0
|
||||
- Android SDK Build-Tools 19.1.0
|
||||
- Android SDK Build-Tools 17.0.0
|
||||
- Android NDK 21.1.6352462
|
||||
- Android NDK 21.3.6528147
|
||||
- Az Module (1.0.0)
|
||||
- Az Module (1.6.0)
|
||||
- Az Module (2.3.2)
|
||||
@@ -291,15 +286,16 @@ Local version: Unknown)
|
||||
- Az Module (2.8.0)
|
||||
- Az Module (3.1.0)
|
||||
- Az Module (3.5.0)
|
||||
- Az Module (3.8.0)
|
||||
- Cached container images
|
||||
- node:10 (Digest: sha256:ce98742448dff008ff29b81816c148599e41e9cc580d17412ce7fb555bf57c6a)
|
||||
- node:12 (Digest: sha256:880673b2184fec70c7cf342452ce4cfac6c378cfa79d4529f49887bc55eb9f41)
|
||||
- jekyll/builder:latest (Digest: sha256:15d3241ba69bbc0bc62e40c30ec11d9dc4211fde0365a378bf1b9ec8c18eb57e)
|
||||
- buildpack-deps:stretch (Digest: sha256:dee4275fc056551e1f83c5a3ea024510ca63f03ceedd9a1c29cbab70644b046b)
|
||||
- debian:9 (Digest: sha256:d4de82f467cf1c7e022e95a1cb074b7d4d38f8ab2c20deeafd884c6a4531d94d)
|
||||
- debian:8 (Digest: sha256:be49b17833279f2177dbaeef87226528af8a652595afc11dd85c8cd8ad7fcd26)
|
||||
- node:12-alpine (Digest: sha256:84f5c9090cc741421b2376b2393e7d5fa2f89d36167c12eb57aef16dd64ecf6c)
|
||||
- node:10-alpine (Digest: sha256:b2db1b026f1b01a6a91f39d8204b89c5c13d2b40a017dd4d9253ab066c9cf2cb)
|
||||
- node:12-alpine (Digest: sha256:45694caf08b27f851b10f2ce30e986249d3b06590fefb7d327ba9a4fbd371d2b)
|
||||
- node:12 (Digest: sha256:2b85f4981f92ee034b51a3c8bb22dbb451d650d5c12b6439a169f8adc750e4b6)
|
||||
- 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)
|
||||
@@ -311,27 +307,29 @@ Local version: Unknown)
|
||||
- Ruby 2.5.8
|
||||
- Ruby 2.6.6
|
||||
- Ruby 2.7.1
|
||||
- PyPy:
|
||||
- PyPy 2.7.17
|
||||
- PyPy 3.6.9
|
||||
- Python (Python 2.7.17)
|
||||
- pip (pip 9.0.1 from /usr/lib/python2.7/dist-packages (python 2.7))
|
||||
- Python3 (Python 3.6.9)
|
||||
- pip3 (pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6))
|
||||
- Go 1.11.13 (go version go1.11.13 linux/amd64)
|
||||
- Go 1.12.17 (go version go1.12.17 linux/amd64)
|
||||
- Go 1.13.11 (go version go1.13.11 linux/amd64)
|
||||
- Go 1.14.3 (go version go1.14.3 linux/amd64)
|
||||
- Python:
|
||||
- Python 2.7.18
|
||||
- Python 3.5.9
|
||||
- Python 3.6.10
|
||||
- Python 3.7.7
|
||||
- Python 3.8.3
|
||||
- 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.20.1
|
||||
- node 12.16.3
|
||||
- node 14.2.0
|
||||
- Boost C++ Libraries 1.69.0
|
||||
- Boost C++ Libraries 1.72.0
|
||||
- node 10.21.0
|
||||
- node 12.18.1
|
||||
- node 14.4.0
|
||||
- go:
|
||||
- go 1.11.13
|
||||
- go 1.12.17
|
||||
- go 1.13.12
|
||||
- go 1.14.4
|
||||
- boost:
|
||||
- boost 1.69.0
|
||||
- boost 1.72.0
|
||||
|
||||
@@ -1,46 +1,65 @@
|
||||
<!--- DO NOT EDIT - This markdown file is autogenerated. -->
|
||||
# Ubuntu 20.04 LTS
|
||||
The following software is installed on machines with the 20200531.1 update.
|
||||
The following software is installed on machines with the 20200625.0 update.
|
||||
***
|
||||
- Homebrew on Linux (Homebrew 2.3.0
|
||||
Homebrew/linuxbrew-core (git revision 3d1df; last commit 2020-05-30))
|
||||
- Homebrew on Linux (Homebrew 2.4.2
|
||||
Homebrew/linuxbrew-core (git revision 58dca; last commit 2020-06-24))
|
||||
- 7-Zip 16.02
|
||||
- Ansible (ansible 2.9.6)
|
||||
- AzCopy7 (available by azcopy alias) 7.3.0
|
||||
- AzCopy10 (available by azcopy10 alias) 10.4.3
|
||||
- Azure CLI (azure-cli 2.6.0)
|
||||
- Azure CLI (azure-cli 2.8.0)
|
||||
- Azure CLI (azure-devops 0.18.0)
|
||||
- Basic CLI:
|
||||
- curl
|
||||
- Basic packages:
|
||||
- dnsutils
|
||||
- file
|
||||
- ftp
|
||||
- iproute2
|
||||
- iputils-ping
|
||||
- jq
|
||||
- libcurl4
|
||||
- libgbm-dev
|
||||
- libicu55
|
||||
- libunwind8
|
||||
- locales
|
||||
- netcat
|
||||
- openssh-client
|
||||
- tzdata
|
||||
- upx
|
||||
- zstd
|
||||
- libxkbfile-dev
|
||||
- pkg-config
|
||||
- libsecret-1-dev
|
||||
- libxss1
|
||||
- libgconf-2-4
|
||||
- dbus
|
||||
- xvfb
|
||||
- libgbm-dev
|
||||
- libgtk-3-0
|
||||
- tk
|
||||
- fakeroot
|
||||
- dpkg
|
||||
- rpm
|
||||
- xz-utils
|
||||
- xorriso
|
||||
- zsync
|
||||
- gnupg2
|
||||
- lib32z1
|
||||
- texinfo
|
||||
- curl
|
||||
- file
|
||||
- ftp
|
||||
- jq
|
||||
- netcat
|
||||
- ssh
|
||||
- parallel
|
||||
- rsync
|
||||
- shellcheck
|
||||
- sudo
|
||||
- telnet
|
||||
- time
|
||||
- tzdata
|
||||
- unzip
|
||||
- upx
|
||||
- wget
|
||||
- zip
|
||||
- zstd
|
||||
- gnupg2
|
||||
- lib32z1
|
||||
- Alibaba Cloud CLI (3.0.45)
|
||||
- AWS CLI (aws-cli/1.18.69 Python/2.7.18rc1 Linux/5.4.0-1012-azure botocore/1.16.19)
|
||||
- wget
|
||||
- m4
|
||||
- bison
|
||||
- flex
|
||||
- libcurl4
|
||||
- Alibaba Cloud CLI (3.0.48)
|
||||
- AWS CLI (aws-cli/1.18.87 Python/2.7.18rc1 Linux/5.4.0-1019-azure botocore/1.17.10)
|
||||
- build-essential
|
||||
- Clang 6.0 (6.0.1)
|
||||
- Clang 8 (8.0.1)
|
||||
@@ -51,16 +70,22 @@ Target: x86_64-unknown-linux-gnu
|
||||
- Podman (podman --version)
|
||||
Buildah (buildah --version)
|
||||
Skopeo (skopeo --version)
|
||||
- Docker Compose (docker-compose version 1.25.4, build 8d51620a)
|
||||
- Docker Compose (docker-compose version 1.26.0, build d4451659)
|
||||
- Docker-Moby (Docker version 19.03.11+azure, build dd360c7c0de8d9132a3965db6a59d3ae74f43ba7)
|
||||
- Docker-Buildx (0.4.1+azure)
|
||||
- .NET Core SDK:
|
||||
- 3.1.301
|
||||
- 3.1.300
|
||||
- 3.1.202
|
||||
- 3.1.201
|
||||
- 3.1.200
|
||||
- 3.1.105
|
||||
- 3.1.104
|
||||
- 3.1.103
|
||||
- 3.1.102
|
||||
- 3.1.101
|
||||
- 3.1.100
|
||||
- 2.1.807
|
||||
- 2.1.806
|
||||
- 2.1.805
|
||||
- 2.1.804
|
||||
@@ -69,6 +94,7 @@ Skopeo (skopeo --version)
|
||||
- 2.1.801
|
||||
- 2.1.701
|
||||
- 2.1.700
|
||||
- 2.1.612
|
||||
- 2.1.611
|
||||
- 2.1.610
|
||||
- 2.1.609
|
||||
@@ -79,6 +105,7 @@ Skopeo (skopeo --version)
|
||||
- 2.1.604
|
||||
- 2.1.603
|
||||
- 2.1.602
|
||||
- 2.1.515
|
||||
- 2.1.514
|
||||
- 2.1.513
|
||||
- 2.1.512
|
||||
@@ -100,97 +127,101 @@ Skopeo (skopeo --version)
|
||||
- 2.1.301
|
||||
- 2.1.300
|
||||
- Erlang (Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 11.0.2)
|
||||
- Firefox (Mozilla Firefox 76.0.1)
|
||||
- Firefox (Mozilla Firefox 77.0.1)
|
||||
- Geckodriver (0.26.0); Gecko Driver is available via GECKOWEBDRIVER environment variable
|
||||
- GNU C++ 7.5.0
|
||||
- GNU C++ 8.4.0
|
||||
- GNU C++ 9.3.0
|
||||
- GNU Fortran 8.4.0
|
||||
- GNU Fortran 9.3.0
|
||||
- Git (2.26.2)
|
||||
- Git (2.27.0)
|
||||
- Git Large File Storage (LFS) (2.11.0)
|
||||
- Git-ftp (1.6.0)
|
||||
- Hub CLI (2.14.2)
|
||||
- Google Chrome (Google Chrome 83.0.4103.61 )
|
||||
- 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 (294.0.0)
|
||||
- Google Cloud SDK (298.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.41.1 linux-x64 node-v12.16.2)
|
||||
- HHVM (HipHop VM 4.59.0 (rel))
|
||||
- Heroku (heroku/7.42.1 linux-x64 node-v12.16.2)
|
||||
- HHVM (HipHop VM 4.62.0 (rel))
|
||||
- ImageMagick
|
||||
- Azul Zulu OpenJDK:
|
||||
- Adopt OpenJDK:
|
||||
- 8 (openjdk version "1.8.0_252")
|
||||
- 11 (openjdk version "11.0.7" 2020-04-14 LTS) (default)
|
||||
- 12 (openjdk version "12.0.2" 2019-07-16)
|
||||
- 11 (openjdk version "11.0.7" 2020-04-14) (default)
|
||||
- Ant (Apache Ant(TM) version 1.10.7 compiled on October 24 2019)
|
||||
- Gradle 6.4.1
|
||||
- Gradle 6.5
|
||||
- Maven (Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f))
|
||||
- Kind (kind v0.8.1 go1.14.2 linux/amd64)
|
||||
- kubectl (Client Version: v1.18.3)
|
||||
- helm (v3.2.1+gfe51cd1)
|
||||
- kubectl (Client Version: v1.18.4)
|
||||
- helm (v3.2.4+g0ad800e)
|
||||
- minikube version: v1.11.0
|
||||
- Leiningen (Leiningen 2.9.3 on Java 1.8.0_252 OpenJDK 64-Bit Server VM)
|
||||
- Leiningen (Leiningen 2.9.3 on Java 11.0.7 OpenJDK 64-Bit Server VM)
|
||||
- Mercurial (Mercurial Distributed SCM (version 5.3.1))
|
||||
- Miniconda (conda 4.8.2)
|
||||
- Miniconda (conda 4.8.3)
|
||||
- Mono (Mono JIT compiler version 6.8.0.123 (tarball Tue May 12 15:14:32 UTC 2020))
|
||||
- MySQL (mysql Ver 8.0.20-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu)))
|
||||
- MySQL Server (user:root password:root)
|
||||
- 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.17.0)
|
||||
- Node.js (v12.18.1)
|
||||
- Grunt (grunt-cli v1.2.0)
|
||||
- Gulp (CLI version: 2.2.1
|
||||
- Gulp (CLI version: 2.3.0
|
||||
Local version: Unknown)
|
||||
- n (6.5.1)
|
||||
- Parcel (1.12.4)
|
||||
- TypeScript (Version 3.9.3)
|
||||
- TypeScript (Version 3.9.5)
|
||||
- Webpack (4.43.0)
|
||||
- Webpack CLI (3.3.11)
|
||||
- Webpack CLI (3.3.12)
|
||||
- Yarn (1.22.4)
|
||||
- Bazel (bazel 3.2.0)
|
||||
- Bazelisk (1.4.0)
|
||||
- Bazel (bazel 3.3.0)
|
||||
- Bazelisk (1.5.0)
|
||||
- PhantomJS (2.1.1)
|
||||
- Composer (Composer version 1.10.6 2020-05-06 10:28:10)
|
||||
- PHP 7.4 (PHP 7.4.7 (cli) (built: Jun 12 2020 07:44:38) ( NTS ))
|
||||
- Composer (Composer version 1.10.8 2020-06-24 21:23:30)
|
||||
- PHPUnit (PHPUnit 7.5.20 by Sebastian Bergmann and contributors.)
|
||||
- Pollinate
|
||||
- psql (PostgreSQL) 12.2
|
||||
- Powershell (PowerShell 7.0.0)
|
||||
- psql (PostgreSQL) 12.3
|
||||
- Powershell (PowerShell 7.0.2)
|
||||
- ruby (2.7.0p0)
|
||||
- gem (3.1.3)
|
||||
- gem (3.1.2)
|
||||
- rustup (1.21.1)
|
||||
- rust (1.43.1)
|
||||
- cargo (1.43.0)
|
||||
- rustfmt (1.4.12-stable)
|
||||
- rust (1.44.1)
|
||||
- cargo (1.44.1)
|
||||
- rustfmt (1.4.16-stable)
|
||||
- clippy (0.0.212)
|
||||
- rustdoc (1.43.1)
|
||||
- rustdoc (1.44.1)
|
||||
- bindgen (0.54.0)
|
||||
- cbindgen (0.14.2)
|
||||
- cbindgen (0.14.3)
|
||||
- Julia (julia version 1.4.2)
|
||||
- sbt (copying runtime jar...
|
||||
1.3.12)
|
||||
- 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.26)
|
||||
- Packer (1.5.6)
|
||||
- Terraform (Terraform v0.12.28)
|
||||
- Packer (1.6.0)
|
||||
- Vcpkg 2020.02.04-unknownhash
|
||||
- Zeit Vercel CLI (19.0.1)
|
||||
- Vercel CLI (19.1.1)
|
||||
- Haveged 1.9.1-6ubuntu1
|
||||
- AWS SAM CLI, version 0.52.0
|
||||
- Go 1.14.3 (go version go1.14.3 linux/amd64)
|
||||
- AWS SAM CLI, version 0.53.0
|
||||
- Google Repository 58
|
||||
- Google Play services 49
|
||||
- CMake 3.10.2.4988404
|
||||
- Android Support Repository 47.0.0
|
||||
- Android SDK Platform-Tools 30.0.1
|
||||
- Android SDK Platform-Tools 30.0.3
|
||||
- Android SDK Platform 30
|
||||
- Android SDK Platform 29
|
||||
- Android SDK Platform 28
|
||||
- Android SDK Platform 27
|
||||
- Android SDK Patch Applier v4
|
||||
- Android SDK Build-Tools 30.0.0
|
||||
- Android SDK Build-Tools 29.0.3
|
||||
- Android SDK Build-Tools 29.0.2
|
||||
- Android SDK Build-Tools 29.0.0
|
||||
@@ -202,9 +233,44 @@ Local version: Unknown)
|
||||
- Android SDK Build-Tools 27.0.2
|
||||
- Android SDK Build-Tools 27.0.1
|
||||
- Android SDK Build-Tools 27.0.0
|
||||
- Android NDK 21.2.6472646
|
||||
- Az Module (4.1.0)
|
||||
- Android NDK 21.3.6528147
|
||||
- Az Module (4.3.0)
|
||||
- Cached container images
|
||||
- node:12-alpine (Digest: sha256:45694caf08b27f851b10f2ce30e986249d3b06590fefb7d327ba9a4fbd371d2b)
|
||||
- node:12 (Digest: sha256:2b85f4981f92ee034b51a3c8bb22dbb451d650d5c12b6439a169f8adc750e4b6)
|
||||
- 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)
|
||||
- ubuntu:14.04 (Digest: sha256:ffc76f71dd8be8c9e222d420dc96901a07b61616689a44c7b3ef6a10b7213de4)
|
||||
- alpine:3.7 (Digest: sha256:8421d9a84432575381bfabd248f1eb56f3aa21d9d7cd2511583c68c9b7511d10)
|
||||
- mcr.microsoft.com/azure-pipelines/node8-typescript:latest (Digest: sha256:e52e60b9f71183969830a3664279b5d8c799b4b0ec2c25a0686f7c02f6a9669a)
|
||||
- Ruby:
|
||||
- Ruby 2.5.8
|
||||
- Ruby 2.6.6
|
||||
- Ruby 2.7.1
|
||||
- Python (Python 2.7.18rc1)
|
||||
- pip (pip 20.1.1 from /usr/local/lib/python2.7/dist-packages/pip (python 2.7))
|
||||
- Python3 (Python 3.8.2)
|
||||
- pip3 (pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8))
|
||||
- Python:
|
||||
- Python 2.7.18
|
||||
- Python 3.5.9
|
||||
- Python 3.6.10
|
||||
- Python 3.7.7
|
||||
- Python 3.8.3
|
||||
- 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.1
|
||||
- node 14.4.0
|
||||
- go:
|
||||
- go 1.14.4
|
||||
|
||||
9
images/linux/scripts/base/apt.sh
Normal file
9
images/linux/scripts/base/apt.sh
Normal file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
apt-get -yqq update
|
||||
apt-get -yqq dist-upgrade
|
||||
systemctl disable apt-daily.service
|
||||
systemctl disable apt-daily.timer
|
||||
systemctl disable apt-daily-upgrade.timer
|
||||
systemctl disable apt-daily-upgrade.service
|
||||
7
images/linux/scripts/base/limits.sh
Normal file
7
images/linux/scripts/base/limits.sh
Normal file
@@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo '* soft nofile 65536' >> /etc/security/limits.conf
|
||||
echo '* hard nofile 65536' >> /etc/security/limits.conf
|
||||
echo 'session required pam_limits.so' >> /etc/pam.d/common-session
|
||||
echo 'session required pam_limits.so' >> /etc/pam.d/common-session-noninteractive
|
||||
echo 'DefaultLimitNOFILE=65536' >> /etc/systemd/system.conf
|
||||
@@ -11,13 +11,19 @@ download_with_retries() {
|
||||
local URL="$1"
|
||||
local DEST="${2:-.}"
|
||||
local NAME="${3:-${URL##*/}}"
|
||||
local COMPRESSED="$4"
|
||||
|
||||
if [ $COMPRESSED == "compressed" ]; then
|
||||
COMMAND="curl $URL -4 -s --compressed -o '$DEST/$NAME'"
|
||||
else
|
||||
COMMAND="curl $URL -4 -s -o '$DEST/$NAME'"
|
||||
fi
|
||||
|
||||
echo "Downloading $URL..."
|
||||
i=20
|
||||
while [ $i -gt 0 ]; do
|
||||
((i--))
|
||||
wget $URL --output-document="$DEST/$NAME" \
|
||||
--no-verbose
|
||||
eval $COMMAND
|
||||
if [ $? != 0 ]; then
|
||||
sleep 30
|
||||
else
|
||||
|
||||
@@ -44,6 +44,7 @@ chmod -R a+X ${ANDROID_SDK_ROOT}
|
||||
echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \
|
||||
"ndk-bundle" \
|
||||
"platform-tools" \
|
||||
"platforms;android-30" \
|
||||
"platforms;android-29" \
|
||||
"platforms;android-28" \
|
||||
"platforms;android-27" \
|
||||
@@ -57,6 +58,7 @@ echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \
|
||||
"platforms;android-17" \
|
||||
"platforms;android-15" \
|
||||
"platforms;android-10" \
|
||||
"build-tools;30.0.0" \
|
||||
"build-tools;29.0.3" \
|
||||
"build-tools;29.0.2" \
|
||||
"build-tools;29.0.0" \
|
||||
@@ -116,6 +118,7 @@ DocumentInstalledItem "Android Support Repository 47.0.0"
|
||||
DocumentInstalledItem "Android Solver for ConstraintLayout 1.0.2"
|
||||
DocumentInstalledItem "Android Solver for ConstraintLayout 1.0.1"
|
||||
DocumentInstalledItem "Android SDK Platform-Tools $(cat ${ANDROID_SDK_ROOT}/platform-tools/source.properties 2>&1 | grep Pkg.Revision | cut -d '=' -f 2)"
|
||||
DocumentInstalledItem "Android SDK Platform 30"
|
||||
DocumentInstalledItem "Android SDK Platform 29"
|
||||
DocumentInstalledItem "Android SDK Platform 28"
|
||||
DocumentInstalledItem "Android SDK Platform 27"
|
||||
@@ -130,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.0"
|
||||
DocumentInstalledItem "Android SDK Build-Tools 29.0.3"
|
||||
DocumentInstalledItem "Android SDK Build-Tools 29.0.2"
|
||||
DocumentInstalledItem "Android SDK Build-Tools 29.0.0"
|
||||
|
||||
@@ -10,60 +10,67 @@ source $HELPER_SCRIPTS/apt.sh
|
||||
|
||||
set -e
|
||||
|
||||
# Install basic command-line utilities
|
||||
apt-fast install -y --no-install-recommends \
|
||||
curl \
|
||||
dnsutils \
|
||||
file \
|
||||
ftp \
|
||||
iproute2 \
|
||||
iputils-ping \
|
||||
jq \
|
||||
libc++-dev \
|
||||
libc++abi-dev \
|
||||
libcurl3 \
|
||||
libicu55 \
|
||||
libunwind8 \
|
||||
locales \
|
||||
netcat \
|
||||
openssh-client \
|
||||
parallel \
|
||||
rsync \
|
||||
shellcheck \
|
||||
sudo \
|
||||
telnet \
|
||||
time \
|
||||
tzdata \
|
||||
unzip \
|
||||
upx \
|
||||
wget \
|
||||
zip \
|
||||
zstd \
|
||||
lib32z1
|
||||
common_packages="dnsutils
|
||||
iproute2
|
||||
iputils-ping
|
||||
libc++-dev
|
||||
libc++abi-dev
|
||||
libcurl3
|
||||
libicu55
|
||||
libunwind8
|
||||
locales
|
||||
openssh-client
|
||||
tzdata
|
||||
zstd
|
||||
lib32z1
|
||||
libxkbfile-dev
|
||||
pkg-config
|
||||
libsecret-1-dev
|
||||
libxss1
|
||||
libgconf-2-4
|
||||
dbus
|
||||
xvfb
|
||||
libgbm-dev
|
||||
libgtk-3-0
|
||||
tk
|
||||
fakeroot
|
||||
dpkg
|
||||
rpm
|
||||
xz-utils
|
||||
xorriso
|
||||
zsync
|
||||
gnupg2
|
||||
texinfo"
|
||||
|
||||
# Electron / VSCode / GitHub Desktop / kubectl prereqs
|
||||
apt-fast install -y --no-install-recommends \
|
||||
libxkbfile-dev \
|
||||
pkg-config \
|
||||
libsecret-1-dev \
|
||||
libxss1 \
|
||||
libgconf-2-4 \
|
||||
dbus \
|
||||
xvfb \
|
||||
libgbm-dev \
|
||||
libgtk-3-0 \
|
||||
tk \
|
||||
fakeroot \
|
||||
dpkg \
|
||||
rpm \
|
||||
xz-utils \
|
||||
xorriso \
|
||||
zsync \
|
||||
gnupg2
|
||||
cmd_packages="curl
|
||||
file
|
||||
ftp
|
||||
jq
|
||||
netcat
|
||||
ssh
|
||||
parallel
|
||||
rsync
|
||||
shellcheck
|
||||
sudo
|
||||
telnet
|
||||
time
|
||||
unzip
|
||||
zip
|
||||
wget
|
||||
upx
|
||||
m4
|
||||
bison
|
||||
flex"
|
||||
|
||||
# Install basic command-line utilities
|
||||
for package in $common_packages $cmd_packages; do
|
||||
echo "Install $package"
|
||||
apt-fast install -y --no-install-recommends $package
|
||||
done
|
||||
|
||||
# Run tests to determine that the software installed as expected
|
||||
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
||||
for cmd in curl file ftp jq netcat ssh parallel rsync shellcheck sudo telnet time unzip upx wget zip; do
|
||||
for cmd in $cmd_packages; do
|
||||
if ! command -v $cmd; then
|
||||
echo "$cmd was not installed"
|
||||
exit 1
|
||||
@@ -72,34 +79,7 @@ done
|
||||
|
||||
# Document what was added to the image
|
||||
echo "Lastly, documenting what we added to the metadata file"
|
||||
DocumentInstalledItem "Basic CLI:"
|
||||
DocumentInstalledItemIndent "curl"
|
||||
DocumentInstalledItemIndent "dnsutils"
|
||||
DocumentInstalledItemIndent "file"
|
||||
DocumentInstalledItemIndent "ftp"
|
||||
DocumentInstalledItemIndent "iproute2"
|
||||
DocumentInstalledItemIndent "iputils-ping"
|
||||
DocumentInstalledItemIndent "jq"
|
||||
DocumentInstalledItemIndent "libc++-dev"
|
||||
DocumentInstalledItemIndent "libc++abi-dev"
|
||||
DocumentInstalledItemIndent "libcurl3"
|
||||
DocumentInstalledItemIndent "libgbm-dev"
|
||||
DocumentInstalledItemIndent "libicu55"
|
||||
DocumentInstalledItemIndent "libunwind8"
|
||||
DocumentInstalledItemIndent "locales"
|
||||
DocumentInstalledItemIndent "netcat"
|
||||
DocumentInstalledItemIndent "openssh-client"
|
||||
DocumentInstalledItemIndent "parallel"
|
||||
DocumentInstalledItemIndent "rsync"
|
||||
DocumentInstalledItemIndent "shellcheck"
|
||||
DocumentInstalledItemIndent "sudo"
|
||||
DocumentInstalledItemIndent "telnet"
|
||||
DocumentInstalledItemIndent "time"
|
||||
DocumentInstalledItemIndent "tzdata"
|
||||
DocumentInstalledItemIndent "unzip"
|
||||
DocumentInstalledItemIndent "upx"
|
||||
DocumentInstalledItemIndent "wget"
|
||||
DocumentInstalledItemIndent "zip"
|
||||
DocumentInstalledItemIndent "zstd"
|
||||
DocumentInstalledItemIndent "gnupg2"
|
||||
DocumentInstalledItemIndent "lib32z1"
|
||||
DocumentInstalledItem "Basic packages:"
|
||||
for package in $common_packages $cmd_packages; do
|
||||
DocumentInstalledItemIndent $package
|
||||
done
|
||||
|
||||
@@ -44,6 +44,7 @@ fi
|
||||
echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \
|
||||
"ndk-bundle" \
|
||||
"platform-tools" \
|
||||
"platforms;android-30" \
|
||||
"platforms;android-29" \
|
||||
"platforms;android-28" \
|
||||
"platforms;android-27" \
|
||||
@@ -55,6 +56,7 @@ echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \
|
||||
"platforms;android-21" \
|
||||
"platforms;android-19" \
|
||||
"platforms;android-17" \
|
||||
"build-tools;30.0.0" \
|
||||
"build-tools;29.0.3" \
|
||||
"build-tools;29.0.2" \
|
||||
"build-tools;29.0.0" \
|
||||
@@ -108,6 +110,7 @@ DocumentInstalledItem "Google APIs 21"
|
||||
DocumentInstalledItem "CMake $(ls ${ANDROID_SDK_ROOT}/cmake 2>&1)"
|
||||
DocumentInstalledItem "Android Support Repository 47.0.0"
|
||||
DocumentInstalledItem "Android SDK Platform-Tools $(cat ${ANDROID_SDK_ROOT}/platform-tools/source.properties 2>&1 | grep Pkg.Revision | cut -d '=' -f 2)"
|
||||
DocumentInstalledItem "Android SDK Platform 30"
|
||||
DocumentInstalledItem "Android SDK Platform 29"
|
||||
DocumentInstalledItem "Android SDK Platform 28"
|
||||
DocumentInstalledItem "Android SDK Platform 27"
|
||||
@@ -120,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.0"
|
||||
DocumentInstalledItem "Android SDK Build-Tools 29.0.3"
|
||||
DocumentInstalledItem "Android SDK Build-Tools 29.0.2"
|
||||
DocumentInstalledItem "Android SDK Build-Tools 29.0.0"
|
||||
|
||||
@@ -49,9 +49,11 @@ fi
|
||||
echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager \
|
||||
"ndk-bundle" \
|
||||
"platform-tools" \
|
||||
"platforms;android-30" \
|
||||
"platforms;android-29" \
|
||||
"platforms;android-28" \
|
||||
"platforms;android-27" \
|
||||
"build-tools;30.0.0" \
|
||||
"build-tools;29.0.3" \
|
||||
"build-tools;29.0.2" \
|
||||
"build-tools;29.0.0" \
|
||||
@@ -76,10 +78,12 @@ DocumentInstalledItem "Google Play services $(cat ${ANDROID_SDK_ROOT}/extras/goo
|
||||
DocumentInstalledItem "CMake $(ls ${ANDROID_SDK_ROOT}/cmake 2>&1)"
|
||||
DocumentInstalledItem "Android Support Repository 47.0.0"
|
||||
DocumentInstalledItem "Android SDK Platform-Tools $(cat ${ANDROID_SDK_ROOT}/platform-tools/source.properties 2>&1 | grep Pkg.Revision | cut -d '=' -f 2)"
|
||||
DocumentInstalledItem "Android SDK Platform 30"
|
||||
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.0"
|
||||
DocumentInstalledItem "Android SDK Build-Tools 29.0.3"
|
||||
DocumentInstalledItem "Android SDK Build-Tools 29.0.2"
|
||||
DocumentInstalledItem "Android SDK Build-Tools 29.0.0"
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
#!/bin/bash
|
||||
################################################################################
|
||||
## File: containers.sh
|
||||
## Desc: Installs container tools: podman, buildah and skopeo onto the image
|
||||
################################################################################
|
||||
|
||||
source $HELPER_SCRIPTS/apt.sh
|
||||
source $HELPER_SCRIPTS/document.sh
|
||||
|
||||
source /etc/os-release
|
||||
sh -c "echo 'deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/x${NAME}_${VERSION_ID}/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list"
|
||||
wget -nv https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/x${NAME}_${VERSION_ID}/Release.key -O Release.key
|
||||
apt-key add - < Release.key
|
||||
apt-get update -qq
|
||||
apt-get -qq -y install podman buildah skopeo
|
||||
mkdir -p /etc/containers
|
||||
echo -e "[registries.search]\nregistries = ['docker.io', 'quay.io']" | tee /etc/containers/registries.conf
|
||||
|
||||
## Add version information to the metadata file
|
||||
echo "Documenting container tools version"
|
||||
PODMAN_VERSION='podman --version'
|
||||
BUILDAH_VERSION='buildah --version'
|
||||
SKOPEO_VERSION='skopeo --version'
|
||||
DocumentInstalledItem "Podman ($PODMAN_VERSION)\nBuildah ($BUILDAH_VERSION)\nSkopeo ($SKOPEO_VERSION)"
|
||||
95
images/linux/scripts/installers/Configure-Toolset.ps1
Normal file
95
images/linux/scripts/installers/Configure-Toolset.ps1
Normal file
@@ -0,0 +1,95 @@
|
||||
################################################################################
|
||||
## File: Configure-Toolset.ps1
|
||||
## Team: CI-Build
|
||||
## Desc: Configure toolset
|
||||
################################################################################
|
||||
|
||||
function Get-ToolsetToolFullPath
|
||||
{
|
||||
param
|
||||
(
|
||||
[Parameter(Mandatory)] [string] $ToolName,
|
||||
[Parameter(Mandatory)] [string] $ToolVersion,
|
||||
[Parameter(Mandatory)] [string] $ToolArchitecture
|
||||
)
|
||||
|
||||
$toolPath = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath $toolName
|
||||
$toolPathVersion = Join-Path -Path $toolPath -ChildPath $toolVersion
|
||||
$foundVersion = Get-Item $toolPathVersion | Sort-Object -Property {[version]$_.name} -Descending | Select-Object -First 1
|
||||
$installationDir = Join-Path -Path $foundVersion -ChildPath $toolArchitecture
|
||||
return $installationDir
|
||||
}
|
||||
|
||||
function Add-EnvironmentVariable
|
||||
{
|
||||
param
|
||||
(
|
||||
[Parameter(Mandatory)] [string] $Name,
|
||||
[Parameter(Mandatory)] [string] $Value,
|
||||
[string] $FilePath = "/etc/environment"
|
||||
)
|
||||
|
||||
$envVar = "{0}={1}" -f $name, $value
|
||||
Tee-Object -InputObject $envVar -FilePath $filePath -Append
|
||||
}
|
||||
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
Write-Host "Configure toolset tools environment..."
|
||||
$toolsEnvironment = @{
|
||||
boost = @{
|
||||
variableTemplate = "BOOST_ROOT_{0}_{1}_{2}"
|
||||
}
|
||||
go = @{
|
||||
command = "ln -s {0}/bin/* /usr/bin/"
|
||||
defaultVariable = "GOROOT"
|
||||
variableTemplate = "GOROOT_{0}_{1}_X64"
|
||||
}
|
||||
}
|
||||
|
||||
$toolset = Get-Content -Path "$env:INSTALLER_SCRIPT_FOLDER/toolset.json" -Raw | ConvertFrom-Json
|
||||
|
||||
foreach ($tool in $toolset.toolcache)
|
||||
{
|
||||
$toolName = $tool.name
|
||||
$toolArch = $tool.arch
|
||||
$toolEnvironment = $toolsEnvironment[$toolName]
|
||||
|
||||
if (-not $toolEnvironment)
|
||||
{
|
||||
continue
|
||||
}
|
||||
|
||||
foreach ($toolVersion in $tool.versions)
|
||||
{
|
||||
Write-Host "Set $toolName $toolVersion environment variable..."
|
||||
$toolPath = Get-ToolsetToolFullPath -ToolName $toolName -ToolVersion $toolVersion -ToolArchitecture $toolArch
|
||||
$envName = $toolEnvironment.variableTemplate -f $toolVersion.split(".")
|
||||
|
||||
# Add environment variable name=value
|
||||
Add-EnvironmentVariable -Name $envName -Value $toolPath
|
||||
}
|
||||
|
||||
# Invoke command and add env variable for the default tool version
|
||||
$toolDefVersion = $tool.default
|
||||
if (-not $toolDefVersion)
|
||||
{
|
||||
continue
|
||||
}
|
||||
|
||||
$envDefName = $toolEnvironment.defaultVariable
|
||||
$toolPath = Get-ToolsetToolFullPath -ToolName $toolName -ToolVersion $toolDefVersion -ToolArchitecture $toolArch
|
||||
|
||||
if ($envDefName)
|
||||
{
|
||||
Write-Host "Set default $envDefName for $toolName $toolDefVersion environment variable..."
|
||||
Add-EnvironmentVariable -Name $envDefName -Value $toolPath
|
||||
}
|
||||
|
||||
if ($toolEnvironment.command)
|
||||
{
|
||||
$command = $toolEnvironment.command -f $toolPath
|
||||
Write-Host "Invoke $command command for default $toolName $toolDefVersion..."
|
||||
Invoke-Expression -Command $command
|
||||
}
|
||||
}
|
||||
@@ -28,8 +28,9 @@ $ErrorActionPreference = "Stop"
|
||||
|
||||
# Get toolset content
|
||||
$toolsetJson = Get-Content -Path "$env:INSTALLER_SCRIPT_FOLDER/toolset.json" -Raw
|
||||
$toolsToInstall = @("Python", "Node")
|
||||
$tools = ConvertFrom-Json -InputObject $toolsetJson | Select-Object -ExpandProperty toolcache | Where {$ToolsToInstall -contains $_.Name}
|
||||
$toolsToInstall = @("Python", "Node", "Boost", "Go")
|
||||
|
||||
$tools = ConvertFrom-Json -InputObject $toolsetJson | Select-Object -ExpandProperty toolcache | Where-Object {$ToolsToInstall -contains $_.Name}
|
||||
|
||||
foreach ($tool in $tools) {
|
||||
# Get versions manifest for current tool
|
||||
@@ -43,10 +44,9 @@ foreach ($tool in $tools) {
|
||||
| Select-Object -First 1
|
||||
|
||||
Write-Host "Installing $($tool.name) $toolVersion $($tool.arch)..."
|
||||
if ($asset -ne $null) {
|
||||
if ($null -ne $asset) {
|
||||
Install-Asset -ReleaseAsset $asset
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
Write-Host "Asset was not found in versions manifest"
|
||||
exit 1
|
||||
}
|
||||
@@ -55,3 +55,4 @@ foreach ($tool in $tools) {
|
||||
|
||||
chown -R "$($env:SUDO_USER):$($env:SUDO_USER)" /opt/hostedtoolcache/Python
|
||||
chown -R "$($env:SUDO_USER):$($env:SUDO_USER)" /opt/hostedtoolcache/node
|
||||
chown -R "$($env:SUDO_USER):$($env:SUDO_USER)" /opt/hostedtoolcache/go
|
||||
@@ -9,13 +9,13 @@ function Run-ExecutableTests {
|
||||
[Parameter(Mandatory)] [string[]] $Executables,
|
||||
[Parameter(Mandatory)] [string] $ToolPath
|
||||
)
|
||||
$versionCommand = $Executables["command"]
|
||||
|
||||
foreach ($executable in $Executables) {
|
||||
foreach ($executable in $Executables["tools"]) {
|
||||
$executablePath = Join-Path $ToolPath $executable
|
||||
|
||||
Write-Host "Check $executable..."
|
||||
if (Test-Path $executablePath) {
|
||||
Write-Host "$executable is successfully installed: $(& $executablePath --version)"
|
||||
Write-Host "$executable is successfully installed: $(& $executablePath $versionCommand)"
|
||||
} else {
|
||||
Write-Host "$executablePath is not installed!"
|
||||
exit 1
|
||||
@@ -27,9 +27,22 @@ $ErrorActionPreference = "Stop"
|
||||
|
||||
# Define executables for cached tools
|
||||
$toolsExecutables = @{
|
||||
Python = @("python", "bin/pip")
|
||||
node = @("bin/node", "bin/npm")
|
||||
PyPy = @("bin/python", "bin/pip")
|
||||
Python = @{
|
||||
tools = @("python", "bin/pip")
|
||||
command = "--version"
|
||||
}
|
||||
node = @{
|
||||
tools = @("bin/node", "bin/npm")
|
||||
command = "--version"
|
||||
}
|
||||
PyPy = @{
|
||||
tools = @("bin/python", "bin/pip")
|
||||
command = "--version"
|
||||
}
|
||||
go = @{
|
||||
tools = @("bin/go")
|
||||
command = "version"
|
||||
}
|
||||
}
|
||||
|
||||
# Get toolset content
|
||||
@@ -45,8 +58,8 @@ foreach($tool in $tools) {
|
||||
|
||||
foreach ($version in $tool.versions) {
|
||||
# Add wildcard if missing
|
||||
if (-not $version.Contains('*')) {
|
||||
$version += '.*'
|
||||
if ($version.Split(".").Length -lt 3) {
|
||||
$version += ".*"
|
||||
}
|
||||
|
||||
# Check if version folder exists
|
||||
@@ -62,9 +75,10 @@ foreach($tool in $tools) {
|
||||
| Select-Object -First 1
|
||||
$foundVersionPath = Join-Path $foundVersion $tool.arch
|
||||
|
||||
Write-Host "Run validation test for $($tool.name)($($tool.arch)) $($foundVersion.name) executables..."
|
||||
Run-ExecutableTests -Executables $toolExecs -ToolPath $foundVersionPath
|
||||
|
||||
if ($toolExecs) {
|
||||
Write-Host "Run validation test for $($tool.name)($($tool.arch)) $($foundVersion.name) executables..."
|
||||
Run-ExecutableTests -Executables $toolExecs -ToolPath $foundVersionPath
|
||||
}
|
||||
$foundVersionName = $foundVersion.name
|
||||
if ($tool.name -eq 'PyPy')
|
||||
{
|
||||
|
||||
@@ -2,15 +2,26 @@
|
||||
################################################################################
|
||||
## File: aws-sam-cli.sh
|
||||
## Desc: Installs AWS SAM CLI
|
||||
## Must be run as non-root user after homebrew and clang
|
||||
## Requires Python >=3.6, must be run as non-root user after toolset installation
|
||||
################################################################################
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/document.sh
|
||||
|
||||
# Install aws sam cli
|
||||
brew tap aws/tap
|
||||
brew install aws-sam-cli
|
||||
# Download latest aws sam cli sources
|
||||
TarballUrl=$(curl -s https://api.github.com/repos/awslabs/aws-sam-cli/releases/latest | jq -r '.tarball_url')
|
||||
TarballPath="/tmp/aws-sam-cli.tar.gz"
|
||||
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)
|
||||
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
|
||||
|
||||
# Run tests to determine that the software installed as expected
|
||||
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
||||
|
||||
@@ -6,13 +6,24 @@
|
||||
|
||||
# Source the helpers
|
||||
source $HELPER_SCRIPTS/document.sh
|
||||
source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
# Install the AWS CLI
|
||||
curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
|
||||
unzip awscli-bundle.zip
|
||||
./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
|
||||
rm awscli-bundle.zip
|
||||
rm -rf awscli-bundle
|
||||
# Install the AWS CLI v1 on Ubuntu16 and Ubuntu18, and AWS CLI v2 on Ubuntu20
|
||||
if isUbuntu20 ; then
|
||||
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
|
||||
unzip awscliv2.zip
|
||||
./aws/install -i /usr/local/aws-cli -b /usr/local/bin
|
||||
rm awscliv2.zip
|
||||
rm -rf aws
|
||||
fi
|
||||
|
||||
if isUbuntu16 || isUbuntu18 ; then
|
||||
curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
|
||||
unzip awscli-bundle.zip
|
||||
./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
|
||||
rm awscli-bundle.zip
|
||||
rm -rf awscli-bundle
|
||||
fi
|
||||
|
||||
# Validate the installation
|
||||
echo "Validate the installation"
|
||||
|
||||
@@ -12,7 +12,8 @@ source $HELPER_SCRIPTS/os.sh
|
||||
if isUbuntu20 ; then
|
||||
versions=$(pwsh -Command '(Find-Module -Name Az).Version')
|
||||
else
|
||||
versions=(1.0.0 1.6.0 2.3.2 2.6.0 2.8.0 3.1.0 3.5.0 3.8.0)
|
||||
toolsetJson="$INSTALLER_SCRIPT_FOLDER/toolset.json"
|
||||
versions=$(cat $toolsetJson | jq -r '.azureModules[] | select(.name | contains("az")) | .versions[]')
|
||||
fi
|
||||
|
||||
# Install Azure CLI (instructions taken from https://docs.microsoft.com/en-us/cli/azure/install-azure-cli)
|
||||
|
||||
@@ -6,16 +6,9 @@
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/document.sh
|
||||
source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
# Install Azure CLI (instructions taken from https://docs.microsoft.com/en-us/cli/azure/install-azure-cli)
|
||||
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
|
||||
# Temporary downgrade to 2.5.1 installation until version 2.7.0 with the fix for the issue is not released https://github.com/actions/virtual-environments/issues/948
|
||||
# There is no 2.5.1 version for Ubuntu20
|
||||
if isUbuntu16 || isUbuntu18 ; then
|
||||
label=$(getOSVersionLabel)
|
||||
apt-get install -y --allow-downgrades azure-cli=2.5.1-1~$label
|
||||
fi
|
||||
|
||||
# Run tests to determine that the software installed as expected
|
||||
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
||||
|
||||
@@ -11,29 +11,59 @@ source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
set -e
|
||||
|
||||
common_packages="dnsutils
|
||||
iproute2
|
||||
iputils-ping
|
||||
libunwind8
|
||||
locales
|
||||
openssh-client
|
||||
tzdata
|
||||
upx
|
||||
zstd
|
||||
libxkbfile-dev
|
||||
pkg-config
|
||||
libsecret-1-dev
|
||||
libxss1
|
||||
libgconf-2-4
|
||||
dbus
|
||||
xvfb
|
||||
libgbm-dev
|
||||
libgtk-3-0
|
||||
tk
|
||||
fakeroot
|
||||
dpkg
|
||||
rpm
|
||||
xz-utils
|
||||
xorriso
|
||||
zsync
|
||||
gnupg2
|
||||
lib32z1
|
||||
texinfo"
|
||||
|
||||
cmd_packages="curl
|
||||
file
|
||||
ftp
|
||||
jq
|
||||
netcat
|
||||
ssh
|
||||
parallel
|
||||
rsync
|
||||
shellcheck
|
||||
sudo
|
||||
telnet
|
||||
time
|
||||
unzip
|
||||
zip
|
||||
wget
|
||||
m4
|
||||
bison
|
||||
flex"
|
||||
|
||||
if isUbuntu20 ; then
|
||||
echo "Install python2"
|
||||
apt-get install -y --no-install-recommends python-is-python2
|
||||
fi
|
||||
|
||||
echo "Install dnsutils"
|
||||
apt-get install -y --no-install-recommends dnsutils
|
||||
|
||||
echo "Install file"
|
||||
apt-get install -y --no-install-recommends file
|
||||
|
||||
echo "Install ftp"
|
||||
apt-get install -y --no-install-recommends ftp
|
||||
|
||||
echo "Install iproute2"
|
||||
apt-get install -y --no-install-recommends iproute2
|
||||
|
||||
echo "Install iputils-ping"
|
||||
apt-get install -y --no-install-recommends iputils-ping
|
||||
|
||||
echo "Install jq"
|
||||
apt-get install -y --no-install-recommends jq
|
||||
|
||||
echo "Install libcurl"
|
||||
if isUbuntu18 ; then
|
||||
libcurelVer="libcurl3"
|
||||
@@ -45,114 +75,15 @@ fi
|
||||
|
||||
apt-get install -y --no-install-recommends $libcurelVer
|
||||
|
||||
echo "Install libunwind8"
|
||||
apt-get install -y --no-install-recommends libunwind8
|
||||
for package in $common_packages $cmd_packages; do
|
||||
echo "Install $package"
|
||||
apt-get install -y --no-install-recommends $package
|
||||
done
|
||||
|
||||
echo "Install locales"
|
||||
apt-get install -y --no-install-recommends locales
|
||||
|
||||
echo "Install netcat"
|
||||
apt-get install -y --no-install-recommends netcat
|
||||
|
||||
echo "Install openssh-client"
|
||||
apt-get install -y --no-install-recommends openssh-client
|
||||
|
||||
echo "Install rsync"
|
||||
apt-get install -y --no-install-recommends rsync
|
||||
|
||||
echo "Install shellcheck"
|
||||
apt-get install -y --no-install-recommends shellcheck
|
||||
|
||||
echo "Install sudo"
|
||||
apt-get install -y --no-install-recommends sudo
|
||||
|
||||
echo "Install telnet"
|
||||
apt-get install -y --no-install-recommends telnet
|
||||
|
||||
echo "Install time"
|
||||
apt-get install -y --no-install-recommends time
|
||||
|
||||
echo "Install tzdata"
|
||||
apt-get install -y --no-install-recommends tzdata
|
||||
|
||||
echo "Install unzip"
|
||||
apt-get install -y --no-install-recommends unzip
|
||||
|
||||
echo "Install upx"
|
||||
apt-get install -y --no-install-recommends upx
|
||||
|
||||
echo "Install wget"
|
||||
apt-get install -y --no-install-recommends wget
|
||||
|
||||
echo "Install zip"
|
||||
apt-get install -y --no-install-recommends zip
|
||||
|
||||
echo "Install zstd"
|
||||
apt-get install -y --no-install-recommends zstd
|
||||
|
||||
echo "Install libxkbfile"
|
||||
apt-get install -y --no-install-recommends libxkbfile-dev
|
||||
|
||||
echo "Install pkg-config"
|
||||
apt-get install -y --no-install-recommends pkg-config
|
||||
|
||||
echo "Install libsecret-1-dev"
|
||||
apt-get install -y --no-install-recommends libsecret-1-dev
|
||||
|
||||
echo "Install libxss1"
|
||||
apt-get install -y --no-install-recommends libxss1
|
||||
|
||||
echo "Install libgconf-2-4"
|
||||
apt-get install -y --no-install-recommends libgconf-2-4
|
||||
|
||||
echo "Install dbus"
|
||||
apt-get install -y --no-install-recommends dbus
|
||||
|
||||
echo "Install xvfb"
|
||||
apt-get install -y --no-install-recommends xvfb
|
||||
|
||||
echo "Install libgbm-dev"
|
||||
apt-get install -y --no-install-recommends libgbm-dev
|
||||
|
||||
echo "Install libgtk"
|
||||
apt-get install -y --no-install-recommends libgtk-3-0
|
||||
|
||||
echo "Install tk"
|
||||
apt install -y tk
|
||||
|
||||
echo "Install fakeroot"
|
||||
apt-get install -y --no-install-recommends fakeroot
|
||||
|
||||
echo "Install dpkg"
|
||||
apt-get install -y --no-install-recommends dpkg
|
||||
|
||||
echo "Install rpm"
|
||||
apt-get install -y --no-install-recommends rpm
|
||||
|
||||
echo "Install xz-utils"
|
||||
apt-get install -y --no-install-recommends xz-utils
|
||||
|
||||
echo "Install xorriso"
|
||||
apt-get install -y --no-install-recommends xorriso
|
||||
|
||||
echo "Install zsync"
|
||||
apt-get install -y --no-install-recommends zsync
|
||||
|
||||
echo "Install curl"
|
||||
apt-get install -y --no-install-recommends curl
|
||||
|
||||
echo "Install parallel"
|
||||
apt-get install -y --no-install-recommends parallel
|
||||
|
||||
echo "Install gnupg2"
|
||||
apt-get install -y --no-install-recommends gnupg2
|
||||
|
||||
echo "Install lib32z1"
|
||||
apt-get install -y --no-install-recommends lib32z1
|
||||
|
||||
# Run tests to determine that the software installed as expected
|
||||
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
||||
for cmd in curl file ftp jq netcat ssh parallel rsync shellcheck sudo telnet time unzip wget zip; do
|
||||
for cmd in $cmd_packages; do
|
||||
if ! command -v $cmd; then
|
||||
echo "$cmd was not installed"
|
||||
exit 1
|
||||
@@ -161,32 +92,9 @@ done
|
||||
|
||||
# Document what was added to the image
|
||||
echo "Lastly, documenting what we added to the metadata file"
|
||||
DocumentInstalledItem "Basic CLI:"
|
||||
DocumentInstalledItemIndent "curl"
|
||||
DocumentInstalledItemIndent "dnsutils"
|
||||
DocumentInstalledItemIndent "file"
|
||||
DocumentInstalledItemIndent "ftp"
|
||||
DocumentInstalledItemIndent "iproute2"
|
||||
DocumentInstalledItemIndent "iputils-ping"
|
||||
DocumentInstalledItemIndent "jq"
|
||||
DocumentInstalledItem "Basic packages:"
|
||||
for package in $common_packages $cmd_packages; do
|
||||
DocumentInstalledItemIndent $package
|
||||
done
|
||||
|
||||
DocumentInstalledItemIndent "$libcurelVer"
|
||||
DocumentInstalledItemIndent "libgbm-dev"
|
||||
DocumentInstalledItemIndent "libicu55"
|
||||
DocumentInstalledItemIndent "libunwind8"
|
||||
DocumentInstalledItemIndent "locales"
|
||||
DocumentInstalledItemIndent "netcat"
|
||||
DocumentInstalledItemIndent "openssh-client"
|
||||
DocumentInstalledItemIndent "parallel"
|
||||
DocumentInstalledItemIndent "rsync"
|
||||
DocumentInstalledItemIndent "shellcheck"
|
||||
DocumentInstalledItemIndent "sudo"
|
||||
DocumentInstalledItemIndent "telnet"
|
||||
DocumentInstalledItemIndent "time"
|
||||
DocumentInstalledItemIndent "tzdata"
|
||||
DocumentInstalledItemIndent "unzip"
|
||||
DocumentInstalledItemIndent "upx"
|
||||
DocumentInstalledItemIndent "wget"
|
||||
DocumentInstalledItemIndent "zip"
|
||||
DocumentInstalledItemIndent "zstd"
|
||||
DocumentInstalledItemIndent "gnupg2"
|
||||
DocumentInstalledItemIndent "lib32z1"
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
#!/bin/bash
|
||||
################################################################################
|
||||
## File: boost.sh
|
||||
## Desc: Installs Boost C++ Libraries
|
||||
################################################################################
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/document.sh
|
||||
|
||||
TOOLSET_PATH="$INSTALLER_SCRIPT_FOLDER/toolcache.json"
|
||||
BOOST_LIB=/usr/local/share/boost
|
||||
BOOST_VERSIONS=$(cat $TOOLSET_PATH | jq -r 'to_entries[] | select(.key | match("boost")) | .value[] +".0"')
|
||||
|
||||
# Install Boost
|
||||
for BOOST_VERSION in ${BOOST_VERSIONS}
|
||||
do
|
||||
BOOST_SYMLINK_VER=$(echo "${BOOST_VERSION//[.]/_}")
|
||||
BOOST_ROOT_VERSION="BOOST_ROOT_$BOOST_SYMLINK_VER"
|
||||
|
||||
echo "$BOOST_ROOT_VERSION=$BOOST_LIB/$BOOST_VERSION" | tee -a /etc/environment
|
||||
DocumentInstalledItem "Boost C++ Libraries $BOOST_VERSION"
|
||||
done
|
||||
@@ -5,3 +5,17 @@ echo ImageOS=$IMAGE_OS | tee -a /etc/environment
|
||||
# This directory is supposed to be created in $HOME and owned by user(https://github.com/actions/virtual-environments/issues/491)
|
||||
mkdir -p /etc/skel/.config/configstore
|
||||
echo 'export XDG_CONFIG_HOME=$HOME/.config' | tee -a /etc/skel/.bashrc
|
||||
|
||||
# Change waagent entries to use /mnt for swapfile
|
||||
sed -i 's/ResourceDisk.Format=n/ResourceDisk.Format=y/g' /etc/waagent.conf
|
||||
sed -i 's/ResourceDisk.EnableSwap=n/ResourceDisk.EnableSwap=y/g' /etc/waagent.conf
|
||||
sed -i 's/ResourceDisk.SwapSizeMB=0/ResourceDisk.SwapSizeMB=4096/g' /etc/waagent.conf
|
||||
|
||||
# Add localhost alias to ::1 IPv6
|
||||
sed -i 's/::1 ip6-localhost ip6-loopback/::1 localhost ip6-localhost ip6-loopback/g' /etc/hosts
|
||||
|
||||
# Prepare directory and env variable for toolcache
|
||||
AGENT_TOOLSDIRECTORY=/opt/hostedtoolcache
|
||||
mkdir $AGENT_TOOLSDIRECTORY
|
||||
echo "AGENT_TOOLSDIRECTORY=$AGENT_TOOLSDIRECTORY" | tee -a /etc/environment
|
||||
chmod -R 777 $AGENT_TOOLSDIRECTORY
|
||||
|
||||
@@ -6,9 +6,15 @@
|
||||
|
||||
source $HELPER_SCRIPTS/apt.sh
|
||||
source $HELPER_SCRIPTS/document.sh
|
||||
source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
docker_package=moby
|
||||
|
||||
# There is no stable docker-moby for Ubuntu 20 at the moment
|
||||
if isUbuntu20 ; then
|
||||
add-apt-repository "deb [arch=amd64,armhf,arm64] https://packages.microsoft.com/ubuntu/20.04/prod testing main"
|
||||
fi
|
||||
|
||||
## Check to see if docker is already installed
|
||||
echo "Determing if Docker ($docker_package) is installed"
|
||||
if ! IsInstalled $docker_package; then
|
||||
@@ -21,6 +27,10 @@ else
|
||||
echo "Docker ($docker_package) is already installed"
|
||||
fi
|
||||
|
||||
# Enable docker.service
|
||||
systemctl is-active --quiet docker.service || systemctl start docker.service
|
||||
systemctl is-enabled --quiet docker.service || systemctl enable docker.service
|
||||
|
||||
# Run tests to determine that the software installed as expected
|
||||
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
||||
echo "Checking the docker-moby and moby-buildx"
|
||||
|
||||
@@ -16,7 +16,7 @@ fi
|
||||
|
||||
if isUbuntu16 || isUbuntu18 ; then
|
||||
LATEST_DOTNET_PACKAGES=("dotnet-sdk-3.0" "dotnet-sdk-3.1")
|
||||
release_urls=("https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/2.1/releases.json" "https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/2.2/releases.json" "https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/3.0/releases.json" "https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/3.1/releases.json")
|
||||
release_urls=("https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/2.1/releases.json" "https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/3.0/releases.json" "https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/3.1/releases.json")
|
||||
fi
|
||||
|
||||
mksamples()
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
#!/bin/bash
|
||||
################################################################################
|
||||
## File: dotnetcore.sh
|
||||
## Desc: Installs .NET Core onto the image for running the provisioner
|
||||
################################################################################
|
||||
|
||||
source $HELPER_SCRIPTS/apt.sh
|
||||
source $HELPER_SCRIPTS/document.sh
|
||||
|
||||
DOTNET_PACKAGE=dotnet-dev-1.0.4
|
||||
|
||||
echo "Determing if .NET Core ($DOTNET_PACKAGE) is installed"
|
||||
if ! IsInstalled $DOTNET_PACKAGE; then
|
||||
echo "Could not find .NET Core ($DOTNET_PACKAGE), installing..."
|
||||
echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ xenial main" > /etc/apt/sources.list.d/dotnetdev.list
|
||||
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893
|
||||
apt-get update
|
||||
apt-get install $DOTNET_PACKAGE -y
|
||||
else
|
||||
echo ".NET Core ($DOTNET_PACKAGE) is already installed"
|
||||
fi
|
||||
|
||||
echo "Testing .NET Core ($DOTNET_PACKAGE)"
|
||||
echo "Pulling down initial dependencies"
|
||||
dotnet help
|
||||
|
||||
echo "Documenting .NET Core ($DOTNET_PACKAGE)"
|
||||
DOTNET_VERSION=`dotnet --version`
|
||||
DocumentInstalledItem ".NET Core $DOTNET_VERSION"
|
||||
@@ -1,58 +0,0 @@
|
||||
#!/bin/bash
|
||||
################################################################################
|
||||
## File: go.sh
|
||||
## Desc: Installs go, configures GOROOT, and adds go to the path
|
||||
################################################################################
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/document.sh
|
||||
golangTags="/tmp/golang_tags.json"
|
||||
|
||||
# This function installs Go using the specified arguments:
|
||||
# $1=MajorVersion (1.11)
|
||||
# $2=IsDefaultVersion (true or false)
|
||||
function InstallGo () {
|
||||
version=$( getFullGoVersion $1 )
|
||||
downloadVersion="go$version.linux-amd64.tar.gz"
|
||||
goFolder="$AGENT_TOOLSDIRECTORY/go/$version/x64"
|
||||
|
||||
echo "Install Go $version"
|
||||
curl -sL https://dl.google.com/go/${downloadVersion} -o ${downloadVersion}
|
||||
mkdir -p $goFolder
|
||||
tar -C $goFolder -xzf $downloadVersion --strip-components=1 go
|
||||
rm $downloadVersion
|
||||
echo "GOROOT_${1//./_}_X64=$goFolder" | tee -a /etc/environment
|
||||
DocumentInstalledItem "Go $version ($($goFolder/bin/go version))"
|
||||
|
||||
# Create symlink in old location /usr/local/go<version> to new location
|
||||
ln -s $goFolder /usr/local/go$version
|
||||
|
||||
# If this version of Go is to be the default version,
|
||||
# symlink it into the path and point GOROOT to it.
|
||||
if [ $2 = true ]
|
||||
then
|
||||
ln -s $goFolder/bin/* /usr/bin/
|
||||
echo "GOROOT=$goFolder" | tee -a /etc/environment
|
||||
fi
|
||||
}
|
||||
|
||||
function getFullGoVersion () {
|
||||
local pattern="refs/tags/go$1([.0-9]{0,3})$"
|
||||
local query='[.[] | select( .ref | test($pattern))] | .[-1] | .ref'
|
||||
refValue=$(jq --arg pattern "$pattern" "$query" $golangTags)
|
||||
version=$(echo "$refValue" | cut -d '/' -f 3 | awk -F 'go' '{print $2}')
|
||||
version=$(echo "${version//\"}") # 1.12.17
|
||||
echo $version
|
||||
}
|
||||
|
||||
# load golang_tags.json file
|
||||
curl -s 'https://api.github.com/repos/golang/go/git/refs/tags' > $golangTags
|
||||
# Install Go versions
|
||||
for go in ${GO_VERSIONS}; do
|
||||
echo "Installing Go ${go}"
|
||||
if [[ $go == $GO_DEFAULT ]]; then
|
||||
InstallGo $go true
|
||||
else
|
||||
InstallGo $go false
|
||||
fi
|
||||
done
|
||||
@@ -8,7 +8,7 @@
|
||||
echo "Validate the Homebrew can run after reboot"
|
||||
|
||||
if ! command -v brew; then
|
||||
echo "brew cat not run after reboot"
|
||||
echo "brew executable not found after reboot"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
################################################################################
|
||||
## File: homebrew.sh
|
||||
## Desc: Installs the Homebrew on Linux
|
||||
## Caveat: Brew MUST NOT be used to install any tool during the image build to avoid dependencies, which may come along with the tool
|
||||
################################################################################
|
||||
|
||||
# Source the helpers
|
||||
@@ -20,7 +21,7 @@ sudo chmod -R o+w $HOMEBREW_PREFIX
|
||||
brew shellenv|grep 'export HOMEBREW'|sed -E 's/^export (.*);$/\1/' | sudo tee -a /etc/environment
|
||||
# add brew executables locations to PATH
|
||||
brew_path=$(brew shellenv|grep '^export PATH' |sed -E 's/^export PATH="([^$]+)\$.*/\1/')
|
||||
appendEtcEnvironmentPath "$brew_path"
|
||||
prependEtcEnvironmentPath "$brew_path"
|
||||
|
||||
# Validate the installation ad hoc
|
||||
echo "Validate the installation reloading /etc/environment"
|
||||
|
||||
@@ -12,11 +12,6 @@ set -e
|
||||
|
||||
TOOLCACHE_REGISTRY="npm.pkg.github.com"
|
||||
|
||||
AGENT_TOOLSDIRECTORY=/opt/hostedtoolcache
|
||||
mkdir $AGENT_TOOLSDIRECTORY
|
||||
echo "AGENT_TOOLSDIRECTORY=$AGENT_TOOLSDIRECTORY" | tee -a /etc/environment
|
||||
chmod -R 777 $AGENT_TOOLSDIRECTORY
|
||||
|
||||
echo "Configure npm to use github package registry for '@actions' scope"
|
||||
npm config set @actions:registry "https://${TOOLCACHE_REGISTRY}"
|
||||
|
||||
|
||||
@@ -10,14 +10,18 @@ source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
set -e
|
||||
|
||||
# Install the Azul Systems Zulu JDKs
|
||||
# See https://www.azul.com/downloads/azure-only/zulu/
|
||||
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0xB1998361219BD9C9
|
||||
apt-add-repository "deb http://repos.azul.com/azure-only/zulu/apt stable main"
|
||||
apt-get -q update
|
||||
# Install GPG Key for Adopt Open JDK. See https://adoptopenjdk.net/installation.html
|
||||
wget -qO - "https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public" | apt-key add -
|
||||
add-apt-repository --yes https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/
|
||||
|
||||
if isUbuntu16 || isUbuntu18 ; then
|
||||
# Install GPG Key for Azul Open JDK. See https://www.azul.com/downloads/azure-only/zulu/
|
||||
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0xB1998361219BD9C9
|
||||
apt-add-repository "deb http://repos.azul.com/azure-only/zulu/apt stable main"
|
||||
apt-get update
|
||||
apt-get -y install zulu-7-azure-jdk=\*
|
||||
# Open JDP Adopt does not exist for Ubuntu 20
|
||||
apt-get -y install adoptopenjdk-12-hotspot=\*
|
||||
echo "JAVA_HOME_7_X64=/usr/lib/jvm/zulu-7-azure-amd64" | tee -a /etc/environment
|
||||
DEFAULT_JDK_VERSION=8
|
||||
defaultLabel8="(default)"
|
||||
@@ -26,17 +30,22 @@ fi
|
||||
if isUbuntu20 ; then
|
||||
DEFAULT_JDK_VERSION=11
|
||||
defaultLabel11="(default)"
|
||||
apt-get update
|
||||
fi
|
||||
|
||||
apt-get -y install zulu-8-azure-jdk=\*
|
||||
apt-get -y install zulu-11-azure-jdk=\*
|
||||
apt-get -y install zulu-12-azure-jdk=\*
|
||||
update-java-alternatives -s /usr/lib/jvm/zulu-8-azure-amd64
|
||||
# Install only LTS versions.
|
||||
apt-get -y install adoptopenjdk-8-hotspot=\*
|
||||
apt-get -y install adoptopenjdk-11-hotspot=\*
|
||||
|
||||
echo "JAVA_HOME_8_X64=/usr/lib/jvm/zulu-8-azure-amd64" | tee -a /etc/environment
|
||||
echo "JAVA_HOME_11_X64=/usr/lib/jvm/zulu-11-azure-amd64" | tee -a /etc/environment
|
||||
echo "JAVA_HOME_12_X64=/usr/lib/jvm/zulu-12-azure-amd64" | tee -a /etc/environment
|
||||
echo "JAVA_HOME=/usr/lib/jvm/zulu-${DEFAULT_JDK_VERSION}-azure-amd64" | tee -a /etc/environment
|
||||
# Set Default Java version.
|
||||
update-java-alternatives -s /usr/lib/jvm/adoptopenjdk-${DEFAULT_JDK_VERSION}-hotspot-amd64
|
||||
|
||||
echo "JAVA_HOME_8_X64=/usr/lib/jvm/adoptopenjdk-8-hotspot-amd64" | tee -a /etc/environment
|
||||
echo "JAVA_HOME_11_X64=/usr/lib/jvm/adoptopenjdk-11-hotspot-amd64" | tee -a /etc/environment
|
||||
if isUbuntu16 || isUbuntu18 ; then
|
||||
echo "JAVA_HOME_12_X64=/usr/lib/jvm/adoptopenjdk-12-hotspot-amd64" | tee -a /etc/environment
|
||||
fi
|
||||
echo "JAVA_HOME=/usr/lib/jvm/adoptopenjdk-${DEFAULT_JDK_VERSION}-hotspot-amd64" | tee -a /etc/environment
|
||||
echo "JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8" | tee -a /etc/environment
|
||||
|
||||
# Install Ant
|
||||
@@ -79,13 +88,16 @@ done
|
||||
|
||||
# Document what was added to the image
|
||||
echo "Lastly, documenting what we added to the metadata file"
|
||||
DocumentInstalledItem "Azul Zulu OpenJDK:"
|
||||
if isUbuntu16 || isUbuntu18 ; then
|
||||
DocumentInstalledItem "Azul Zulu OpenJDK:"
|
||||
DocumentInstalledItemIndent "7 ($(/usr/lib/jvm/zulu-7-azure-amd64/bin/java -showversion |& head -n 1))"
|
||||
fi
|
||||
DocumentInstalledItemIndent "8 ($(/usr/lib/jvm/zulu-8-azure-amd64/bin/java -showversion |& head -n 1)) $defaultLabel8"
|
||||
DocumentInstalledItemIndent "11 ($(/usr/lib/jvm/zulu-11-azure-amd64/bin/java -showversion |& head -n 1)) $defaultLabel11"
|
||||
DocumentInstalledItemIndent "12 ($(/usr/lib/jvm/zulu-12-azure-amd64/bin/java -showversion |& head -n 1))"
|
||||
DocumentInstalledItem "Adopt OpenJDK:"
|
||||
DocumentInstalledItemIndent "8 ($(/usr/lib/jvm/adoptopenjdk-8-hotspot-amd64/bin/java -showversion |& head -n 1)) $defaultLabel8"
|
||||
DocumentInstalledItemIndent "11 ($(/usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/bin/java -showversion |& head -n 1)) $defaultLabel11"
|
||||
if isUbuntu16 || isUbuntu18 ; then
|
||||
DocumentInstalledItemIndent "12 ($(/usr/lib/jvm/adoptopenjdk-12-hotspot-amd64/bin/java -showversion |& head -n 1))"
|
||||
fi
|
||||
DocumentInstalledItem "Ant ($(ant -version))"
|
||||
DocumentInstalledItem "Gradle ${gradleVersion}"
|
||||
DocumentInstalledItem "Maven ($(mvn -version | head -n 1))"
|
||||
|
||||
@@ -9,19 +9,31 @@ source $HELPER_SCRIPTS/document.sh
|
||||
|
||||
export ACCEPT_EULA=Y
|
||||
|
||||
# Install MySQL Client
|
||||
apt-get install mysql-client -y
|
||||
if isUbuntu16 || isUbuntu18 ; then
|
||||
apt-get install mysql-client -y
|
||||
fi
|
||||
|
||||
# InstallMySQL database development files
|
||||
apt-get install libmysqlclient-dev -y
|
||||
if isUbuntu20 ; then
|
||||
# Install mysql 8 for Ubuntu 20.
|
||||
|
||||
# Install MySQL Server
|
||||
debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-server select mysql-8.0'
|
||||
package_version=$(curl https://dev.mysql.com/downloads/repo/apt/ 2> /dev/null | grep "\.deb" | awk -F "[()]" '{print $2}')
|
||||
wget https://dev.mysql.com/get/$package_version
|
||||
dpkg -i $package_version
|
||||
apt update
|
||||
fi
|
||||
|
||||
# Mysql setting up root password
|
||||
MYSQL_ROOT_PASSWORD=root
|
||||
echo "mysql-server mysql-server/root_password password $MYSQL_ROOT_PASSWORD" | debconf-set-selections
|
||||
echo "mysql-server mysql-server/root_password_again password $MYSQL_ROOT_PASSWORD" | debconf-set-selections
|
||||
|
||||
# Install MySQL Server
|
||||
apt-get install -y mysql-server
|
||||
|
||||
#Install MySQL Dev tools
|
||||
apt install libmysqlclient-dev -y
|
||||
|
||||
# Install MS SQL Server client tools (https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools?view=sql-server-2017)
|
||||
apt-get install -y mssql-tools unixodbc-dev
|
||||
apt-get -f install
|
||||
|
||||
@@ -10,7 +10,7 @@ source $HELPER_SCRIPTS/document.sh
|
||||
# Install LTS Node.js and related build tools
|
||||
curl -sL https://raw.githubusercontent.com/mklement0/n-install/stable/bin/n-install | bash -s -- -ny -
|
||||
~/n/bin/n lts
|
||||
npm install -g grunt gulp n parcel-bundler typescript
|
||||
npm install -g grunt gulp n parcel-bundler typescript newman
|
||||
npm install -g --save-dev webpack webpack-cli
|
||||
npm install -g npm
|
||||
rm -rf ~/n
|
||||
@@ -25,7 +25,7 @@ apt-get install -y --no-install-recommends yarn
|
||||
|
||||
# Run tests to determine that the software installed as expected
|
||||
echo "Testing to make sure that script performed as expected, and basic scenarios work"
|
||||
for cmd in node grunt gulp webpack parcel yarn; do
|
||||
for cmd in node grunt gulp webpack parcel yarn newman; do
|
||||
if ! command -v $cmd; then
|
||||
echo "$cmd was not installed"
|
||||
exit 1
|
||||
@@ -43,3 +43,4 @@ DocumentInstalledItem "TypeScript ($(tsc --version))"
|
||||
DocumentInstalledItem "Webpack ($(webpack --version))"
|
||||
DocumentInstalledItem "Webpack CLI ($(webpack-cli --version))"
|
||||
DocumentInstalledItem "Yarn ($(yarn --version))"
|
||||
DocumentInstalledItem "Newman ($(newman --version))"
|
||||
|
||||
@@ -19,4 +19,7 @@ if ! command -v nvm; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# set system node.js as default one
|
||||
nvm alias default system
|
||||
|
||||
DocumentInstalledItem "nvm ($(nvm --version))"
|
||||
@@ -7,6 +7,7 @@
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/etc-environment.sh
|
||||
source $HELPER_SCRIPTS/document.sh
|
||||
source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
set -e
|
||||
|
||||
@@ -50,20 +51,20 @@ for version in $php_versions; do
|
||||
php$version-ldap \
|
||||
php$version-mbstring \
|
||||
php$version-mysql \
|
||||
php$version-odbc \
|
||||
php$version-opcache \
|
||||
php$version-odbc \
|
||||
php$version-opcache \
|
||||
php$version-pgsql \
|
||||
php$version-phpdbg \
|
||||
php$version-pspell \
|
||||
php$version-readline \
|
||||
php$version-snmp \
|
||||
php$version-soap \
|
||||
php$version-phpdbg \
|
||||
php$version-pspell \
|
||||
php$version-readline \
|
||||
php$version-snmp \
|
||||
php$version-soap \
|
||||
php$version-sqlite3 \
|
||||
php$version-sybase \
|
||||
php$version-tidy \
|
||||
php$version-xml \
|
||||
php$version-xmlrpc \
|
||||
php$version-xsl \
|
||||
php$version-sybase \
|
||||
php$version-tidy \
|
||||
php$version-xml \
|
||||
php$version-xmlrpc \
|
||||
php$version-xsl \
|
||||
php$version-zip
|
||||
|
||||
if [[ $version == "5.6" || $version == "7.0" || $version == "7.1" ]]; then
|
||||
@@ -131,7 +132,7 @@ echo "Lastly, documenting what we added to the metadata file"
|
||||
|
||||
for version in $php_versions; do
|
||||
DocumentInstalledItem "PHP $version ($(php$version --version | head -n 1))"
|
||||
done;
|
||||
done
|
||||
|
||||
DocumentInstalledItem "Composer ($(composer --version))"
|
||||
DocumentInstalledItem "PHPUnit ($(phpunit --version))"
|
||||
|
||||
@@ -72,7 +72,7 @@ function InstallPyPy
|
||||
|
||||
# Installation PyPy
|
||||
uri="https://downloads.python.org/pypy/"
|
||||
download_with_retries $uri "/tmp" "pypyUrls.html"
|
||||
download_with_retries $uri "/tmp" "pypyUrls.html" compressed
|
||||
pypyVersions="$(cat /tmp/pypyUrls.html | grep 'linux64' | awk -v uri="$uri" -F'>|<' '{print uri$5}')"
|
||||
|
||||
toolsetJson="$INSTALLER_SCRIPT_FOLDER/toolset.json"
|
||||
|
||||
@@ -1,31 +1,31 @@
|
||||
#!/bin/bash
|
||||
################################################################################
|
||||
## File: zeit-now.sh
|
||||
## Desc: Installs the Zeit Now CLI
|
||||
## File: vercel.sh
|
||||
## Desc: Installs the Vercel CLI
|
||||
################################################################################
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/document.sh
|
||||
|
||||
# Install the Zeit Vercel CLI
|
||||
# Install the Vercel CLI
|
||||
npm i -g vercel
|
||||
|
||||
# Validate the installation
|
||||
echo "Validate the installation"
|
||||
if ! command -v vercel; then
|
||||
echo "Zeit Vercel CLI was not installed"
|
||||
echo "Vercel CLI was not installed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Creating the symlink now to vercel"
|
||||
echo "Creating the symlink for [now] command to vercel CLI"
|
||||
ln -s /usr/local/bin/vercel /usr/local/bin/now
|
||||
|
||||
echo "Validate the link"
|
||||
if ! command -v now; then
|
||||
echo "Now link to Zeit Vercel CLI was not created"
|
||||
echo "[Now] symlink to Vercel CLI was not created"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Document the installed version
|
||||
echo "Document the installed version"
|
||||
DocumentInstalledItem "Zeit Vercel CLI ($(vercel --version))"
|
||||
DocumentInstalledItem "Vercel CLI ($(vercel --version))"
|
||||
@@ -1,39 +0,0 @@
|
||||
{
|
||||
"toolcache": [
|
||||
{
|
||||
"name": "Python",
|
||||
"url" : "https://raw.githubusercontent.com/actions/python-versions/master/versions-manifest.json",
|
||||
"platform" : "linux",
|
||||
"platform_version": "18.04",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"2.7.*",
|
||||
"3.5.*",
|
||||
"3.6.*",
|
||||
"3.7.*",
|
||||
"3.8.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "PyPy",
|
||||
"arch": "x64",
|
||||
"platform" : "linux",
|
||||
"versions": [
|
||||
"2.7",
|
||||
"3.6"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "node",
|
||||
"url" : "https://raw.githubusercontent.com/actions/node-versions/master/versions-manifest.json",
|
||||
"platform" : "linux",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"8.*",
|
||||
"10.*",
|
||||
"12.*",
|
||||
"14.*"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,8 +1,5 @@
|
||||
{
|
||||
"@actions/toolcache-ruby-ubuntu-1604-x64": [
|
||||
"2.4", "2.5", "2.6", "2.7"
|
||||
],
|
||||
"@actions/toolcache-boost-ubuntu-1604-x64": [
|
||||
"1.69", "1.72"
|
||||
]
|
||||
}
|
||||
@@ -1,8 +1,5 @@
|
||||
{
|
||||
"@actions/toolcache-ruby-ubuntu-1804-x64": [
|
||||
"2.4", "2.5", "2.6", "2.7"
|
||||
],
|
||||
"@actions/toolcache-boost-ubuntu-1804-x64": [
|
||||
"1.69", "1.72"
|
||||
]
|
||||
}
|
||||
5
images/linux/toolsets/toolcache-2004.json
Normal file
5
images/linux/toolsets/toolcache-2004.json
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"@actions/toolcache-ruby-ubuntu-2004-x64": [
|
||||
"2.5", "2.6", "2.7"
|
||||
]
|
||||
}
|
||||
79
images/linux/toolsets/toolset-1604.json
Normal file
79
images/linux/toolsets/toolset-1604.json
Normal file
@@ -0,0 +1,79 @@
|
||||
{
|
||||
"toolcache": [
|
||||
{
|
||||
"name": "Python",
|
||||
"url" : "https://raw.githubusercontent.com/actions/python-versions/master/versions-manifest.json",
|
||||
"platform" : "linux",
|
||||
"platform_version": "16.04",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"2.7.*",
|
||||
"3.5.*",
|
||||
"3.6.*",
|
||||
"3.7.*",
|
||||
"3.8.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "PyPy",
|
||||
"arch": "x64",
|
||||
"platform" : "linux",
|
||||
"versions": [
|
||||
"2.7",
|
||||
"3.6"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "node",
|
||||
"url" : "https://raw.githubusercontent.com/actions/node-versions/master/versions-manifest.json",
|
||||
"platform" : "linux",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"8.*",
|
||||
"10.*",
|
||||
"12.*",
|
||||
"14.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "go",
|
||||
"url" : "https://raw.githubusercontent.com/actions/go-versions/master/versions-manifest.json",
|
||||
"arch": "x64",
|
||||
"platform" : "linux",
|
||||
"versions": [
|
||||
"1.11.*",
|
||||
"1.12.*",
|
||||
"1.13.*",
|
||||
"1.14.*"
|
||||
],
|
||||
"default": "1.14.*"
|
||||
},
|
||||
{
|
||||
"name": "boost",
|
||||
"url" : "https://raw.githubusercontent.com/actions/boost-versions/master/versions-manifest.json",
|
||||
"platform" : "linux",
|
||||
"platform_version": "16.04",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"1.69.0",
|
||||
"1.72.0"
|
||||
]
|
||||
}
|
||||
],
|
||||
"azureModules": [
|
||||
{
|
||||
"name": "az",
|
||||
"versions": [
|
||||
"1.0.0",
|
||||
"1.6.0",
|
||||
"2.3.2",
|
||||
"2.6.0",
|
||||
"2.8.0",
|
||||
"3.1.0",
|
||||
"3.5.0",
|
||||
"3.8.0",
|
||||
"4.3.0"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
79
images/linux/toolsets/toolset-1804.json
Normal file
79
images/linux/toolsets/toolset-1804.json
Normal file
@@ -0,0 +1,79 @@
|
||||
{
|
||||
"toolcache": [
|
||||
{
|
||||
"name": "Python",
|
||||
"url" : "https://raw.githubusercontent.com/actions/python-versions/master/versions-manifest.json",
|
||||
"platform" : "linux",
|
||||
"platform_version": "18.04",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"2.7.*",
|
||||
"3.5.*",
|
||||
"3.6.*",
|
||||
"3.7.*",
|
||||
"3.8.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "PyPy",
|
||||
"arch": "x64",
|
||||
"platform" : "linux",
|
||||
"versions": [
|
||||
"2.7",
|
||||
"3.6"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "node",
|
||||
"url" : "https://raw.githubusercontent.com/actions/node-versions/master/versions-manifest.json",
|
||||
"platform" : "linux",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"8.*",
|
||||
"10.*",
|
||||
"12.*",
|
||||
"14.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "go",
|
||||
"url" : "https://raw.githubusercontent.com/actions/go-versions/master/versions-manifest.json",
|
||||
"arch": "x64",
|
||||
"platform" : "linux",
|
||||
"versions": [
|
||||
"1.11.*",
|
||||
"1.12.*",
|
||||
"1.13.*",
|
||||
"1.14.*"
|
||||
],
|
||||
"default": "1.14.*"
|
||||
},
|
||||
{
|
||||
"name": "boost",
|
||||
"url" : "https://raw.githubusercontent.com/actions/boost-versions/master/versions-manifest.json",
|
||||
"platform" : "linux",
|
||||
"platform_version": "18.04",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"1.69.0",
|
||||
"1.72.0"
|
||||
]
|
||||
}
|
||||
],
|
||||
"azureModules": [
|
||||
{
|
||||
"name": "az",
|
||||
"versions": [
|
||||
"1.0.0",
|
||||
"1.6.0",
|
||||
"2.3.2",
|
||||
"2.6.0",
|
||||
"2.8.0",
|
||||
"3.1.0",
|
||||
"3.5.0",
|
||||
"3.8.0",
|
||||
"4.3.0"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -4,7 +4,7 @@
|
||||
"name": "Python",
|
||||
"url" : "https://raw.githubusercontent.com/actions/python-versions/master/versions-manifest.json",
|
||||
"platform" : "linux",
|
||||
"platform_version": "16.04",
|
||||
"platform_version": "20.04",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"2.7.*",
|
||||
@@ -34,6 +34,16 @@
|
||||
"12.*",
|
||||
"14.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "go",
|
||||
"url" : "https://raw.githubusercontent.com/actions/go-versions/master/versions-manifest.json",
|
||||
"arch": "x64",
|
||||
"platform" : "linux",
|
||||
"versions": [
|
||||
"1.14.*"
|
||||
],
|
||||
"default": "1.14.*"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -24,9 +24,7 @@
|
||||
"image_version": "dev",
|
||||
"image_os": "ubuntu16",
|
||||
"github_feed_token": null,
|
||||
"run_validation_diskspace": "false",
|
||||
"go_default": "1.14",
|
||||
"go_versions": "1.11 1.12 1.13 1.14"
|
||||
"run_validation_diskspace": "false"
|
||||
},
|
||||
"sensitive-variables": ["client_secret", "github_feed_token"],
|
||||
"builders": [
|
||||
@@ -75,18 +73,12 @@
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"inline": [
|
||||
"apt-get update",
|
||||
"apt-get dist-upgrade -y",
|
||||
"systemctl disable apt-daily.service",
|
||||
"systemctl disable apt-daily.timer",
|
||||
"systemctl disable apt-daily-upgrade.timer",
|
||||
"systemctl disable apt-daily-upgrade.service",
|
||||
"echo '* soft nofile 65536 \n* hard nofile 65536' >> /etc/security/limits.conf",
|
||||
"echo 'session required pam_limits.so' >> /etc/pam.d/common-session",
|
||||
"echo 'session required pam_limits.so' >> /etc/pam.d/common-session-noninteractive",
|
||||
"echo 'DefaultLimitNOFILE=65536' >> /etc/systemd/system.conf"
|
||||
],
|
||||
"script": "{{template_dir}}/scripts/base/apt.sh",
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"script": "{{template_dir}}/scripts/base/limits.sh",
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
@@ -143,36 +135,6 @@
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"DEBIAN_FRONTEND=noninteractive"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"expect_disconnect": true,
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/base/reboot.sh"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"pause_before": "30s",
|
||||
"timeout": "10m",
|
||||
"start_retry_timeout": "10s",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew-validate.sh"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
@@ -230,7 +192,7 @@
|
||||
"{{template_dir}}/scripts/installers/terraform.sh",
|
||||
"{{template_dir}}/scripts/installers/packer.sh",
|
||||
"{{template_dir}}/scripts/installers/vcpkg.sh",
|
||||
"{{template_dir}}/scripts/installers/zeit-vercel.sh",
|
||||
"{{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"
|
||||
@@ -242,26 +204,14 @@
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/aws-sam-cli.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"DEBIAN_FRONTEND=noninteractive"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/toolcache-1604.json",
|
||||
"source": "{{template_dir}}/toolsets/toolcache-1604.json",
|
||||
"destination": "{{user `installer_script_folder`}}/toolcache.json"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/toolset-1604.json",
|
||||
"source": "{{template_dir}}/toolsets/toolset-1604.json",
|
||||
"destination": "{{user `installer_script_folder`}}/toolset.json"
|
||||
},
|
||||
{
|
||||
@@ -283,23 +233,11 @@
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/go.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"GO_VERSIONS={{user `go_versions`}}",
|
||||
"GO_DEFAULT={{user `go_default`}}"
|
||||
],
|
||||
"execute_command": "chmod +x {{ .Path }}; sudo {{ .Vars }} {{ .Path }}"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts":[
|
||||
"{{template_dir}}/scripts/installers/Install-Toolset.ps1",
|
||||
"{{template_dir}}/scripts/installers/Configure-Toolset.ps1",
|
||||
"{{template_dir}}/scripts/installers/Validate-Toolset.ps1"
|
||||
],
|
||||
"environment_vars": [
|
||||
@@ -311,15 +249,44 @@
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts":[
|
||||
"{{template_dir}}/scripts/installers/boost.sh"
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/aws-sam-cli.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}"
|
||||
"DEBIAN_FRONTEND=noninteractive"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"expect_disconnect": true,
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/base/reboot.sh"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"pause_before": "30s",
|
||||
"timeout": "10m",
|
||||
"start_retry_timeout": "10s",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew-validate.sh"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
|
||||
@@ -24,9 +24,7 @@
|
||||
"image_version": "dev",
|
||||
"image_os": "ubuntu18",
|
||||
"github_feed_token": null,
|
||||
"run_validation_diskspace": "false",
|
||||
"go_default": "1.14",
|
||||
"go_versions": "1.11 1.12 1.13 1.14"
|
||||
"run_validation_diskspace": "false"
|
||||
},
|
||||
"sensitive-variables": ["client_secret", "github_feed_token"],
|
||||
"builders": [
|
||||
@@ -78,18 +76,12 @@
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"inline": [
|
||||
"apt-get update",
|
||||
"apt-get dist-upgrade -y",
|
||||
"systemctl disable apt-daily.service",
|
||||
"systemctl disable apt-daily.timer",
|
||||
"systemctl disable apt-daily-upgrade.timer",
|
||||
"systemctl disable apt-daily-upgrade.service",
|
||||
"echo '* soft nofile 65536 \n* hard nofile 65536' >> /etc/security/limits.conf",
|
||||
"echo 'session required pam_limits.so' >> /etc/pam.d/common-session",
|
||||
"echo 'session required pam_limits.so' >> /etc/pam.d/common-session-noninteractive",
|
||||
"echo 'DefaultLimitNOFILE=65536' >> /etc/systemd/system.conf"
|
||||
],
|
||||
"script": "{{template_dir}}/scripts/base/apt.sh",
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"script": "{{template_dir}}/scripts/base/limits.sh",
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
@@ -146,36 +138,6 @@
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"DEBIAN_FRONTEND=noninteractive"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"expect_disconnect": true,
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/base/reboot.sh"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"pause_before": "30s",
|
||||
"timeout": "10m",
|
||||
"start_retry_timeout": "10s",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew-validate.sh"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
@@ -191,7 +153,7 @@
|
||||
"{{template_dir}}/scripts/installers/clang.sh",
|
||||
"{{template_dir}}/scripts/installers/swift.sh",
|
||||
"{{template_dir}}/scripts/installers/cmake.sh",
|
||||
"{{template_dir}}/scripts/installers/1804/containers.sh",
|
||||
"{{template_dir}}/scripts/installers/containers.sh",
|
||||
"{{template_dir}}/scripts/installers/docker-compose.sh",
|
||||
"{{template_dir}}/scripts/installers/docker-moby.sh",
|
||||
"{{template_dir}}/scripts/installers/dotnetcore-sdk.sh",
|
||||
@@ -234,7 +196,7 @@
|
||||
"{{template_dir}}/scripts/installers/terraform.sh",
|
||||
"{{template_dir}}/scripts/installers/packer.sh",
|
||||
"{{template_dir}}/scripts/installers/vcpkg.sh",
|
||||
"{{template_dir}}/scripts/installers/zeit-vercel.sh",
|
||||
"{{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"
|
||||
@@ -246,26 +208,14 @@
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/aws-sam-cli.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"DEBIAN_FRONTEND=noninteractive"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/toolcache-1804.json",
|
||||
"source": "{{template_dir}}/toolsets/toolcache-1804.json",
|
||||
"destination": "{{user `installer_script_folder`}}/toolcache.json"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/toolset-1804.json",
|
||||
"source": "{{template_dir}}/toolsets/toolset-1804.json",
|
||||
"destination": "{{user `installer_script_folder`}}/toolset.json"
|
||||
},
|
||||
{
|
||||
@@ -287,23 +237,11 @@
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/go.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"GO_VERSIONS={{user `go_versions`}}",
|
||||
"GO_DEFAULT={{user `go_default`}}"
|
||||
],
|
||||
"execute_command": "chmod +x {{ .Path }}; sudo {{ .Vars }} {{ .Path }}"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts":[
|
||||
"{{template_dir}}/scripts/installers/Install-Toolset.ps1",
|
||||
"{{template_dir}}/scripts/installers/Configure-Toolset.ps1",
|
||||
"{{template_dir}}/scripts/installers/Validate-Toolset.ps1"
|
||||
],
|
||||
"environment_vars": [
|
||||
@@ -315,15 +253,44 @@
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts":[
|
||||
"{{template_dir}}/scripts/installers/boost.sh"
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/aws-sam-cli.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}"
|
||||
"DEBIAN_FRONTEND=noninteractive"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"expect_disconnect": true,
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/base/reboot.sh"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"pause_before": "30s",
|
||||
"timeout": "10m",
|
||||
"start_retry_timeout": "10s",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew-validate.sh"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
|
||||
@@ -78,18 +78,12 @@
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"inline": [
|
||||
"apt-get update",
|
||||
"apt-get dist-upgrade -y",
|
||||
"systemctl disable apt-daily.service",
|
||||
"systemctl disable apt-daily.timer",
|
||||
"systemctl disable apt-daily-upgrade.timer",
|
||||
"systemctl disable apt-daily-upgrade.service",
|
||||
"echo '* soft nofile 65536 \n* hard nofile 65536' >> /etc/security/limits.conf",
|
||||
"echo 'session required pam_limits.so' >> /etc/pam.d/common-session",
|
||||
"echo 'session required pam_limits.so' >> /etc/pam.d/common-session-noninteractive",
|
||||
"echo 'DefaultLimitNOFILE=65536' >> /etc/systemd/system.conf"
|
||||
],
|
||||
"script": "{{template_dir}}/scripts/base/apt.sh",
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"script": "{{template_dir}}/scripts/base/limits.sh",
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
@@ -146,36 +140,6 @@
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"DEBIAN_FRONTEND=noninteractive"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"expect_disconnect": true,
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/base/reboot.sh"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"pause_before": "30s",
|
||||
"timeout": "10m",
|
||||
"start_retry_timeout": "10s",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew-validate.sh"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
@@ -191,14 +155,16 @@
|
||||
"{{template_dir}}/scripts/installers/clang.sh",
|
||||
"{{template_dir}}/scripts/installers/swift.sh",
|
||||
"{{template_dir}}/scripts/installers/cmake.sh",
|
||||
"{{template_dir}}/scripts/installers/2004/containers.sh",
|
||||
"{{template_dir}}/scripts/installers/containers.sh",
|
||||
"{{template_dir}}/scripts/installers/docker-compose.sh",
|
||||
"{{template_dir}}/scripts/installers/docker-moby.sh",
|
||||
"{{template_dir}}/scripts/installers/dotnetcore-sdk.sh",
|
||||
"{{template_dir}}/scripts/installers/erlang.sh",
|
||||
"{{template_dir}}/scripts/installers/firefox.sh",
|
||||
"{{template_dir}}/scripts/installers/gcc.sh",
|
||||
"{{template_dir}}/scripts/installers/gfortran.sh",
|
||||
"{{template_dir}}/scripts/installers/git.sh",
|
||||
"{{template_dir}}/scripts/installers/github-cli.sh",
|
||||
"{{template_dir}}/scripts/installers/google-chrome.sh",
|
||||
"{{template_dir}}/scripts/installers/google-cloud-sdk.sh",
|
||||
"{{template_dir}}/scripts/installers/haskell.sh",
|
||||
@@ -225,13 +191,14 @@
|
||||
"{{template_dir}}/scripts/installers/ruby.sh",
|
||||
"{{template_dir}}/scripts/installers/rust.sh",
|
||||
"{{template_dir}}/scripts/installers/julia.sh",
|
||||
"{{template_dir}}/scripts/installers/sbt.sh",
|
||||
"{{template_dir}}/scripts/installers/selenium.sh",
|
||||
"{{template_dir}}/scripts/installers/sphinx.sh",
|
||||
"{{template_dir}}/scripts/installers/subversion.sh",
|
||||
"{{template_dir}}/scripts/installers/terraform.sh",
|
||||
"{{template_dir}}/scripts/installers/packer.sh",
|
||||
"{{template_dir}}/scripts/installers/vcpkg.sh",
|
||||
"{{template_dir}}/scripts/installers/zeit-vercel.sh",
|
||||
"{{template_dir}}/scripts/installers/vercel.sh",
|
||||
"{{template_dir}}/scripts/installers/dpkg-config.sh",
|
||||
"{{template_dir}}/scripts/installers/rndgenerator.sh"
|
||||
],
|
||||
@@ -242,11 +209,65 @@
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/toolsets/toolcache-2004.json",
|
||||
"destination": "{{user `installer_script_folder`}}/toolcache.json"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/toolsets/toolset-2004.json",
|
||||
"destination": "{{user `installer_script_folder`}}/toolset.json"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts":[
|
||||
"{{template_dir}}/scripts/installers/2004/android.sh",
|
||||
"{{template_dir}}/scripts/installers/azpowershell.sh",
|
||||
"{{template_dir}}/scripts/helpers/containercache.sh",
|
||||
"{{template_dir}}/scripts/installers/hosted-tool-cache.sh",
|
||||
"{{template_dir}}/scripts/installers/pypy.sh",
|
||||
"{{template_dir}}/scripts/installers/python.sh",
|
||||
"{{template_dir}}/scripts/installers/test-toolcache.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}",
|
||||
"GITHUB_FEED_TOKEN={{user `github_feed_token`}}"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts":[
|
||||
"{{template_dir}}/scripts/installers/Install-Toolset.ps1",
|
||||
"{{template_dir}}/scripts/installers/Configure-Toolset.ps1",
|
||||
"{{template_dir}}/scripts/installers/Validate-Toolset.ps1"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} pwsh -f {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/aws-sam-cli.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
@@ -256,31 +277,21 @@
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"expect_disconnect": true,
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/go.sh"
|
||||
"{{template_dir}}/scripts/base/reboot.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"GO_VERSIONS={{user `go_versions`}}",
|
||||
"GO_DEFAULT={{user `go_default`}}"
|
||||
],
|
||||
"execute_command": "chmod +x {{ .Path }}; sudo {{ .Vars }} {{ .Path }}"
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts":[
|
||||
"{{template_dir}}/scripts/installers/2004/android.sh",
|
||||
"{{template_dir}}/scripts/installers/azpowershell.sh",
|
||||
"{{template_dir}}/scripts/installers/python.sh"
|
||||
"pause_before": "30s",
|
||||
"timeout": "10m",
|
||||
"start_retry_timeout": "10s",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew-validate.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"METADATA_FILE={{user `metadata_file`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}",
|
||||
"GITHUB_FEED_TOKEN={{user `github_feed_token`}}"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
|
||||
@@ -1,64 +1,64 @@
|
||||
# macOS info
|
||||
- System Version: macOS 10.15.4 (19E287)
|
||||
- Kernel Version: Darwin 19.4.0
|
||||
- System Version: macOS 10.15.5 (19F101)
|
||||
- Kernel Version: Darwin 19.5.0
|
||||
- System Integrity Protection: Enabled
|
||||
- Image Version: 20200518.2
|
||||
- Image Version: 20200625.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: (Zulu 8.46.0.19-CA-macosx) (build 1.8.0_252-b14) (default)
|
||||
- Java 11: Zulu11.39+15-CA (build 11.0.7+10-LTS)
|
||||
- Java 12: Zulu12.3+11-CA (build 12.0.2+3)
|
||||
- Java 13: Zulu13.31+11-CA (build 13.0.3+3-MTS)
|
||||
- Java 14: Zulu14.28+21-CA (build 14.0.1+8)
|
||||
- Rust 1.43.1
|
||||
- Java 1.8: (AdoptOpenJDK)(build 1.8.0_252-b09) (default)
|
||||
- Java 11: AdoptOpenJDK (build 11.0.7+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
|
||||
- Clang/LLVM 10.0.0
|
||||
- gcc-8 (Homebrew GCC 8.4.0_1) 8.4.0
|
||||
- gcc-9 (Homebrew GCC 9.3.0_1) 9.3.0
|
||||
- GNU Fortran (Homebrew GCC 8.4.0_1) 8.4.0
|
||||
- GNU Fortran (Homebrew GCC 9.3.0_1) 9.3.0
|
||||
- Node.js v12.16.3
|
||||
- Node.js v12.18.1
|
||||
- NVM 0.35.3
|
||||
- NVM - Cached node versions: v6.17.1 v8.17.0 v10.20.1 v12.16.3 v13.14.0 v14.2.0
|
||||
- PowerShell 7.0.1
|
||||
- NVM - Cached node versions: v6.17.1 v8.17.0 v10.21.0 v12.18.1 v13.14.0 v14.4.0
|
||||
- PowerShell 7.0.2
|
||||
- Python 2.7.17
|
||||
- Python 3.7.7
|
||||
- Ruby 2.6.6p146
|
||||
- .NET SDK 2.0.0 3.0.100 3.0.101 3.0.102 3.0.103 3.1.100 3.1.101 3.1.200 3.1.201 3.1.202
|
||||
- Go 1.14.3
|
||||
- PHP 7.4.6
|
||||
- julia 1.4.1
|
||||
- .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
|
||||
- julia 1.4.2
|
||||
|
||||
### Package Management
|
||||
- Rustup 1.21.1
|
||||
- Vcpkg 2020.02.04
|
||||
- Bundler version 2.1.4
|
||||
- Carthage 0.34.0
|
||||
- CocoaPods 1.9.1
|
||||
- Homebrew 2.2.17
|
||||
- NPM 6.14.4
|
||||
- Carthage 0.35.0
|
||||
- CocoaPods 1.9.3
|
||||
- Homebrew 2.4.2
|
||||
- NPM 6.14.5
|
||||
- Yarn 1.22.4
|
||||
- NuGet 5.5.0.6382
|
||||
- NuGet 5.6.0.6489
|
||||
- Pip 19.3.1 (python 2.7)
|
||||
- Pip 20.0.2 (python 3.7)
|
||||
- Miniconda 4.8.2
|
||||
- RubyGems 3.1.3
|
||||
- Miniconda 4.8.3
|
||||
- RubyGems 3.1.4
|
||||
|
||||
### Project Management
|
||||
- Apache Maven 3.6.3
|
||||
- Gradle 6.4.1
|
||||
- Gradle 6.5
|
||||
|
||||
### Utilities
|
||||
- Curl 7.70.0
|
||||
- Git: 2.26.2
|
||||
- Curl 7.71.0
|
||||
- Git: 2.27.0
|
||||
- Git LFS: 2.11.0
|
||||
- GitHub CLI: 0.8.0
|
||||
- GitHub CLI: 0.10.1
|
||||
- Hub CLI: 2.14.2
|
||||
- GNU Wget 1.20.3
|
||||
- Subversion (SVN) 1.13.0
|
||||
- Packer 1.5.6
|
||||
- GNU parallel 20200422
|
||||
- Subversion (SVN) 1.14.0
|
||||
- Packer 1.6.0
|
||||
- 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
|
||||
@@ -66,35 +66,40 @@
|
||||
- PostgreSQL 12.3
|
||||
- aria2 1.35.0
|
||||
- azcopy 10.4.3
|
||||
- zstd 1.4.4
|
||||
- bazel 3.1.0
|
||||
- bazelisk v1.4.0
|
||||
- helm v3.2.1+gfe51cd1
|
||||
- virtualbox 6.1.8r137981
|
||||
- mongo v4.2.6
|
||||
- mongod v4.2.6
|
||||
- zstd 1.4.5
|
||||
- bazel 3.3.0
|
||||
- bazelisk v1.5.0
|
||||
- helm v3.2.4+g0ad800e
|
||||
- virtualbox 6.1.10r138449
|
||||
- mongo v4.2.8
|
||||
- mongod v4.2.8
|
||||
- Vagrant 2.2.9
|
||||
- 7-Zip 16.02
|
||||
|
||||
### Tools
|
||||
- Fastlane 2.148.1
|
||||
- Cmake 3.17.2
|
||||
- App Center CLI 2.5.2
|
||||
- Azure CLI 2.5.1
|
||||
- AWS CLI 2.0.10
|
||||
- AWS SAM CLI 0.49.0
|
||||
- Aliyun CLI 3.0.42
|
||||
- Fastlane 2.149.1
|
||||
- Cmake 3.17.3
|
||||
- App Center CLI 2.6.0
|
||||
- Azure CLI 2.8.0
|
||||
- AWS CLI 2.0.25
|
||||
- AWS SAM CLI 0.53.0
|
||||
- Aliyun CLI 3.0.48
|
||||
- GHCup v0.1.5-p2
|
||||
- GHC 8.10.1
|
||||
- Cabal 3.2.0.0
|
||||
- Stack 2.3.1
|
||||
|
||||
### Browsers
|
||||
- Safari 13.1 (15609.1.20.111.8)
|
||||
- SafariDriver 13.1 (15609.1.20.111.8)
|
||||
- Google Chrome 81.0.4044.138
|
||||
- ChromeDriver 81.0.4044.138
|
||||
- Microsoft Edge 81.0.416.72
|
||||
- MSEdgeDriver 81.0.416.72
|
||||
- Mozilla Firefox 76.0.1
|
||||
- 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.56
|
||||
- MSEdgeDriver 83.0.478.56
|
||||
- Mozilla Firefox 77.0.1
|
||||
- geckodriver 0.26.0
|
||||
|
||||
### Toolcache
|
||||
### Cached Tools
|
||||
#### Ruby
|
||||
- 2.4.10
|
||||
- 2.5.8
|
||||
@@ -109,19 +114,33 @@
|
||||
- 3.8.3
|
||||
|
||||
#### PyPy
|
||||
- 2.7.17
|
||||
- 3.6.9
|
||||
- 2.7.13 [PyPy 7.3.1]
|
||||
- 3.6.9 [PyPy 7.3.1]
|
||||
|
||||
#### Node.js
|
||||
- 8.17.0
|
||||
- 10.21.0
|
||||
- 12.18.1
|
||||
- 14.4.0
|
||||
|
||||
#### Go
|
||||
- 1.11.13
|
||||
- 1.12.17
|
||||
- 1.13.12
|
||||
- 1.14.4
|
||||
|
||||
### Xamarin
|
||||
#### Visual Studio for Mac
|
||||
- 8.5.5.7
|
||||
- 8.6.5.23
|
||||
|
||||
#### Mono
|
||||
- 6.10.0.104
|
||||
- 6.8.0.123
|
||||
- 6.6.0.166
|
||||
- 6.4.0.208
|
||||
|
||||
#### Xamarin.iOS
|
||||
- 13.18.2.1
|
||||
- 13.16.0.13
|
||||
- 13.14.1.39
|
||||
- 13.10.0.21
|
||||
@@ -131,6 +150,7 @@
|
||||
- 13.2.0.47
|
||||
|
||||
#### Xamarin.Mac
|
||||
- 6.18.2.1
|
||||
- 6.16.0.13
|
||||
- 6.14.1.39
|
||||
- 6.10.0.21
|
||||
@@ -140,6 +160,7 @@
|
||||
- 6.2.0.47
|
||||
|
||||
#### Xamarin.Android
|
||||
- 10.3.1
|
||||
- 10.2.0
|
||||
- 10.1.3
|
||||
- 10.0.6
|
||||
@@ -148,78 +169,94 @@
|
||||
- NUnit 3.6.1
|
||||
|
||||
### Xcode
|
||||
| Version | Build | Path |
|
||||
| ---------------- | ------- | ------------------------------ |
|
||||
| 11.5 | 11E608c | /Applications/Xcode_11.5.app |
|
||||
| 11.4.1 (default) | 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) | 12A6159 | /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 |
|
||||
|
||||
#### Xcode Support Tools
|
||||
- Nomad CLI 3.1.3
|
||||
- Nomad CLI 3.1.4
|
||||
- Nomad CLI IPA ipa 0.14.3
|
||||
- xcpretty 0.3.0
|
||||
- xctool 0.3.7
|
||||
- xcversion 2.6.4
|
||||
- xcversion 2.6.6
|
||||
|
||||
#### Installed SDKs
|
||||
| SDK | SDK Name | Xcode Version |
|
||||
| ----------------------- | -------------------- | ---------------------------------------------- |
|
||||
| macOS 10.14 | macosx10.14 | 10.3 |
|
||||
| macOS 10.15 | macosx10.15 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5 |
|
||||
| iOS 12.4 | iphoneos12.4 | 10.3 |
|
||||
| iOS 13.0 | iphoneos13.0 | 11.0 |
|
||||
| iOS 13.1 | iphoneos13.1 | 11.1 |
|
||||
| iOS 13.2 | iphoneos13.2 | 11.2.1, 11.3.1 |
|
||||
| iOS 13.4 | iphoneos13.4 | 11.4, 11.4.1 |
|
||||
| iOS 13.5 | iphoneos13.5 | 11.5 |
|
||||
| Simulator - iOS 12.4 | iphonesimulator12.4 | 10.3 |
|
||||
| Simulator - iOS 13.0 | iphonesimulator13.0 | 11.0 |
|
||||
| Simulator - iOS 13.1 | iphonesimulator13.1 | 11.1 |
|
||||
| Simulator - iOS 13.2 | iphonesimulator13.2 | 11.2.1, 11.3.1 |
|
||||
| Simulator - iOS 13.4 | iphonesimulator13.4 | 11.4, 11.4.1 |
|
||||
| Simulator - iOS 13.5 | iphonesimulator13.5 | 11.5 |
|
||||
| tvOS 12.4 | appletvos12.4 | 10.3 |
|
||||
| tvOS 13.0 | appletvos13.0 | 11.0, 11.1 |
|
||||
| tvOS 13.2 | appletvos13.2 | 11.2.1, 11.3.1 |
|
||||
| tvOS 13.4 | appletvos13.4 | 11.4, 11.4.1, 11.5 |
|
||||
| Simulator - tvOS 12.4 | appletvsimulator12.4 | 10.3 |
|
||||
| Simulator - tvOS 13.0 | appletvsimulator13.0 | 11.0, 11.1 |
|
||||
| Simulator - tvOS 13.2 | appletvsimulator13.2 | 11.2.1, 11.3.1 |
|
||||
| Simulator - tvOS 13.4 | appletvsimulator13.4 | 11.4, 11.4.1, 11.5 |
|
||||
| watchOS 5.3 | watchos5.3 | 10.3 |
|
||||
| watchOS 6.0 | watchos6.0 | 11.0, 11.1 |
|
||||
| watchOS 6.1 | watchos6.1 | 11.2.1, 11.3.1 |
|
||||
| watchOS 6.2 | watchos6.2 | 11.4, 11.4.1, 11.5 |
|
||||
| Simulator - watchOS 5.3 | watchsimulator5.3 | 10.3 |
|
||||
| Simulator - watchOS 6.0 | watchsimulator6.0 | 11.0, 11.1 |
|
||||
| Simulator - watchOS 6.1 | watchsimulator6.1 | 11.2.1, 11.3.1 |
|
||||
| Simulator - watchOS 6.2 | watchsimulator6.2 | 11.4, 11.4.1, 11.5 |
|
||||
| DriverKit 19.0 | driverkit.macosx19.0 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5 |
|
||||
| SDK | SDK Name | Xcode Version |
|
||||
| ----------------------- | -------------------- | ---------------------------------------------------- |
|
||||
| macOS 10.14 | macosx10.14 | 10.3 |
|
||||
| macOS 10.15 | macosx10.15 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5, 11.6 |
|
||||
| macOS 10.16 | macosx10.16 | 12.0 |
|
||||
| iOS 12.4 | iphoneos12.4 | 10.3 |
|
||||
| iOS 13.0 | iphoneos13.0 | 11.0 |
|
||||
| iOS 13.1 | iphoneos13.1 | 11.1 |
|
||||
| iOS 13.2 | iphoneos13.2 | 11.2.1, 11.3.1 |
|
||||
| iOS 13.4 | iphoneos13.4 | 11.4, 11.4.1 |
|
||||
| iOS 13.5 | iphoneos13.5 | 11.5 |
|
||||
| iOS 13.6 | iphoneos13.6 | 11.6 |
|
||||
| iOS 14.0 | iphoneos14.0 | 12.0 |
|
||||
| Simulator - iOS 12.4 | iphonesimulator12.4 | 10.3 |
|
||||
| Simulator - iOS 13.0 | iphonesimulator13.0 | 11.0 |
|
||||
| Simulator - iOS 13.1 | iphonesimulator13.1 | 11.1 |
|
||||
| Simulator - iOS 13.2 | iphonesimulator13.2 | 11.2.1, 11.3.1 |
|
||||
| Simulator - iOS 13.4 | iphonesimulator13.4 | 11.4, 11.4.1 |
|
||||
| Simulator - iOS 13.5 | iphonesimulator13.5 | 11.5 |
|
||||
| Simulator - iOS 13.6 | iphonesimulator13.6 | 11.6 |
|
||||
| Simulator - iOS 14.0 | iphonesimulator14.0 | 12.0 |
|
||||
| tvOS 12.4 | appletvos12.4 | 10.3 |
|
||||
| tvOS 13.0 | appletvos13.0 | 11.0, 11.1 |
|
||||
| tvOS 13.2 | appletvos13.2 | 11.2.1, 11.3.1 |
|
||||
| tvOS 13.4 | appletvos13.4 | 11.4, 11.4.1, 11.5, 11.6 |
|
||||
| tvOS 14.0 | appletvos14.0 | 12.0 |
|
||||
| Simulator - tvOS 12.4 | appletvsimulator12.4 | 10.3 |
|
||||
| Simulator - tvOS 13.0 | appletvsimulator13.0 | 11.0, 11.1 |
|
||||
| Simulator - tvOS 13.2 | appletvsimulator13.2 | 11.2.1, 11.3.1 |
|
||||
| Simulator - tvOS 13.4 | appletvsimulator13.4 | 11.4, 11.4.1, 11.5, 11.6 |
|
||||
| Simulator - tvOS 14.0 | appletvsimulator14.0 | 12.0 |
|
||||
| watchOS 5.3 | watchos5.3 | 10.3 |
|
||||
| watchOS 6.0 | watchos6.0 | 11.0, 11.1 |
|
||||
| watchOS 6.1 | watchos6.1 | 11.2.1, 11.3.1 |
|
||||
| watchOS 6.2 | watchos6.2 | 11.4, 11.4.1, 11.5, 11.6 |
|
||||
| watchOS 7.0 | watchos7.0 | 12.0 |
|
||||
| Simulator - watchOS 5.3 | watchsimulator5.3 | 10.3 |
|
||||
| Simulator - watchOS 6.0 | watchsimulator6.0 | 11.0, 11.1 |
|
||||
| Simulator - watchOS 6.1 | watchsimulator6.1 | 11.2.1, 11.3.1 |
|
||||
| Simulator - watchOS 6.2 | watchsimulator6.2 | 11.4, 11.4.1, 11.5, 11.6 |
|
||||
| Simulator - watchOS 7.0 | watchsimulator7.0 | 12.0 |
|
||||
| DriverKit 19.0 | driverkit.macosx19.0 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5, 11.6 |
|
||||
| DriverKit 20.0 | driverkit.macosx20.0 | 12.0 |
|
||||
|
||||
#### Installed Simulators
|
||||
| OS | Xcode Version | Simulators |
|
||||
| ----------- | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| iOS 12.4 | 10.3 | iPhone 5s<br>iPhone 6 Plus<br>iPhone 6<br>iPhone 6s<br>iPhone 6s Plus<br>iPhone SE<br>iPhone 7<br>iPhone 7 Plus<br>iPhone 8<br>iPhone 8 Plus<br>iPhone X<br>iPhone Xs<br>iPhone Xs Max<br>iPhone Xʀ<br>iPad Air<br>iPad Air 2<br>iPad Pro (9.7-inch)<br>iPad Pro (12.9-inch)<br>iPad (5th generation)<br>iPad Pro (12.9-inch) (2nd generation)<br>iPad Pro (10.5-inch)<br>iPad (6th generation)<br>iPad Pro (11-inch)<br>iPad Pro (12.9-inch) (3rd generation)<br>iPad Air (3rd generation) |
|
||||
| iOS 13.0 | 11.0 | 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.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>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) |
|
||||
| tvOS 12.4 | 10.3 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| tvOS 13.0 | 11.0<br>11.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| tvOS 13.2 | 11.2.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| tvOS 13.3 | 11.3.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| tvOS 13.4 | 11.4<br>11.4.1<br>11.5 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| watchOS 5.3 | 10.3 | Apple Watch Series 2 - 38mm<br>Apple Watch Series 2 - 42mm<br>Apple Watch Series 3 - 38mm<br>Apple Watch Series 3 - 42mm<br>Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm |
|
||||
| watchOS 6.0 | 11.0<br>11.1 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
||||
| watchOS 6.1 | 11.2.1<br>11.3.1 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
||||
| watchOS 6.2 | 11.4<br>11.4.1<br>11.5 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
||||
| OS | Xcode Version | Simulators |
|
||||
| ----------- | ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| iOS 12.4 | 10.3 | iPhone 5s<br>iPhone 6 Plus<br>iPhone 6<br>iPhone 6s<br>iPhone 6s Plus<br>iPhone SE<br>iPhone 7<br>iPhone 7 Plus<br>iPhone 8<br>iPhone 8 Plus<br>iPhone X<br>iPhone Xs<br>iPhone Xs Max<br>iPhone Xʀ<br>iPad Air<br>iPad Air 2<br>iPad Pro (9.7-inch)<br>iPad Pro (12.9-inch)<br>iPad (5th generation)<br>iPad Pro (12.9-inch) (2nd generation)<br>iPad Pro (10.5-inch)<br>iPad (6th generation)<br>iPad Pro (11-inch)<br>iPad Pro (12.9-inch) (3rd generation)<br>iPad Air (3rd generation) |
|
||||
| iOS 13.0 | 11.0 | 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.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.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) |
|
||||
| tvOS 12.4 | 10.3 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| tvOS 13.0 | 11.0<br>11.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| tvOS 13.2 | 11.2.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| tvOS 13.3 | 11.3.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| tvOS 13.4 | 11.4<br>11.4.1<br>11.5<br>11.6 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| tvOS 14.0 | 12.0 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||
| watchOS 5.3 | 10.3 | Apple Watch Series 2 - 38mm<br>Apple Watch Series 2 - 42mm<br>Apple Watch Series 3 - 38mm<br>Apple Watch Series 3 - 42mm<br>Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm |
|
||||
| watchOS 6.0 | 11.0<br>11.1 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
||||
| watchOS 6.1 | 11.2.1<br>11.3.1 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
||||
| watchOS 6.2 | 11.4<br>11.4.1<br>11.5<br>11.6 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
||||
| watchOS 7.0 | 12.0 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
||||
|
||||
### Android
|
||||
#### Android SDK Tools
|
||||
@@ -230,7 +267,7 @@
|
||||
#### Android SDK Platform-Tools
|
||||
| Package Name | Description |
|
||||
| -------------- | ------------------------------------------- |
|
||||
| platform-tools | Android SDK Platform-Tools, Revision 30.0.1 |
|
||||
| platform-tools | Android SDK Platform-Tools, Revision 30.0.3 |
|
||||
|
||||
#### Android SDK Platforms
|
||||
| Package Name | Description |
|
||||
@@ -241,42 +278,43 @@
|
||||
| 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 SDK Build-Tools
|
||||
| Package Name | Description |
|
||||
| ---------------------- | -------------------------------------------- |
|
||||
| build-tools-24.0.0 | Android SDK Build-Tools, Revision 24.0.0 |
|
||||
| build-tools-24.0.1 | Android SDK Build-Tools, Revision 24.0.1 |
|
||||
| build-tools-24.0.2 | Android SDK Build-Tools, Revision 24.0.2 |
|
||||
| build-tools-24.0.3 | Android SDK Build-Tools, Revision 24.0.3 |
|
||||
| build-tools-25.0.0 | Android SDK Build-Tools, Revision 25.0.0 |
|
||||
| build-tools-25.0.1 | Android SDK Build-Tools, Revision 25.0.1 |
|
||||
| build-tools-25.0.2 | Android SDK Build-Tools, Revision 25.0.2 |
|
||||
| build-tools-25.0.3 | Android SDK Build-Tools, Revision 25.0.3 |
|
||||
| build-tools-26.0.0 | Android SDK Build-Tools, Revision 26.0.0 |
|
||||
| build-tools-26.0.1 | Android SDK Build-Tools, Revision 26.0.1 |
|
||||
| build-tools-26.0.2 | Android SDK Build-Tools, Revision 26.0.2 |
|
||||
| build-tools-26.0.3 | Android SDK Build-Tools, Revision 26.0.3 |
|
||||
| build-tools-27.0.0 | Android SDK Build-Tools, Revision 27.0.0 |
|
||||
| build-tools-27.0.1 | Android SDK Build-Tools, Revision 27.0.1 |
|
||||
| build-tools-27.0.2 | Android SDK Build-Tools, Revision 27.0.2 |
|
||||
| build-tools-27.0.3 | Android SDK Build-Tools, Revision 27.0.3 |
|
||||
| build-tools-28.0.0 | Android SDK Build-Tools, Revision 28.0.0 |
|
||||
| build-tools-28.0.1 | Android SDK Build-Tools, Revision 28.0.1 |
|
||||
| build-tools-28.0.2 | Android SDK Build-Tools, Revision 28.0.2 |
|
||||
| build-tools-28.0.3 | Android SDK Build-Tools, Revision 28.0.3 |
|
||||
| build-tools-29.0.0 | Android SDK Build-Tools, Revision 29.0.0 |
|
||||
| build-tools-29.0.1 | Android SDK Build-Tools, Revision 29.0.1 |
|
||||
| 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-rc4 | Android SDK Build-Tools, Revision 30.0.0 rc4 |
|
||||
| Package Name | Description |
|
||||
| ------------------ | ---------------------------------------- |
|
||||
| build-tools-24.0.0 | Android SDK Build-Tools, Revision 24.0.0 |
|
||||
| build-tools-24.0.1 | Android SDK Build-Tools, Revision 24.0.1 |
|
||||
| build-tools-24.0.2 | Android SDK Build-Tools, Revision 24.0.2 |
|
||||
| build-tools-24.0.3 | Android SDK Build-Tools, Revision 24.0.3 |
|
||||
| build-tools-25.0.0 | Android SDK Build-Tools, Revision 25.0.0 |
|
||||
| build-tools-25.0.1 | Android SDK Build-Tools, Revision 25.0.1 |
|
||||
| build-tools-25.0.2 | Android SDK Build-Tools, Revision 25.0.2 |
|
||||
| build-tools-25.0.3 | Android SDK Build-Tools, Revision 25.0.3 |
|
||||
| build-tools-26.0.0 | Android SDK Build-Tools, Revision 26.0.0 |
|
||||
| build-tools-26.0.1 | Android SDK Build-Tools, Revision 26.0.1 |
|
||||
| build-tools-26.0.2 | Android SDK Build-Tools, Revision 26.0.2 |
|
||||
| build-tools-26.0.3 | Android SDK Build-Tools, Revision 26.0.3 |
|
||||
| build-tools-27.0.0 | Android SDK Build-Tools, Revision 27.0.0 |
|
||||
| build-tools-27.0.1 | Android SDK Build-Tools, Revision 27.0.1 |
|
||||
| build-tools-27.0.2 | Android SDK Build-Tools, Revision 27.0.2 |
|
||||
| build-tools-27.0.3 | Android SDK Build-Tools, Revision 27.0.3 |
|
||||
| build-tools-28.0.0 | Android SDK Build-Tools, Revision 28.0.0 |
|
||||
| build-tools-28.0.1 | Android SDK Build-Tools, Revision 28.0.1 |
|
||||
| build-tools-28.0.2 | Android SDK Build-Tools, Revision 28.0.2 |
|
||||
| build-tools-28.0.3 | Android SDK Build-Tools, Revision 28.0.3 |
|
||||
| build-tools-29.0.0 | Android SDK Build-Tools, Revision 29.0.0 |
|
||||
| build-tools-29.0.1 | Android SDK Build-Tools, Revision 29.0.1 |
|
||||
| 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 |
|
||||
|
||||
#### Android NDKs
|
||||
| Version | Path |
|
||||
| ------------ | ------------------------------------------ |
|
||||
| 15.2.4203891 | $HOME/Library/Android/sdk/android-ndk-r15c |
|
||||
| 18.1.5063045 | $HOME/Library/Android/sdk/ndk/18.1.5063045 |
|
||||
| 21.1.6352462 | $HOME/Library/Android/sdk/ndk-bundle |
|
||||
| 21.3.6528147 | $HOME/Library/Android/sdk/ndk-bundle |
|
||||
|
||||
#### Android Utils
|
||||
| Package Name | Version |
|
||||
|
||||
@@ -24,15 +24,14 @@
|
||||
"imagedata_file": "C:\\imagedata.json",
|
||||
"metadata_file": "C:\\image\\metadata.txt",
|
||||
"helper_script_folder": "C:\\Program Files\\WindowsPowerShell\\Modules\\",
|
||||
"psmodules_root_folder": "C:\\Modules",
|
||||
"commit_url": "LATEST",
|
||||
"install_user": "installer",
|
||||
"install_password": null,
|
||||
"capture_name_prefix": "packer",
|
||||
"image_version": "dev",
|
||||
"image_os": "win16",
|
||||
"github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}",
|
||||
"go_versions": "1.9, 1.10, 1.11, 1.12, 1.13, 1.14",
|
||||
"go_default": "1.14"
|
||||
"github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}"
|
||||
},
|
||||
"sensitive-variables": ["install_password", "ssh_password", "client_secret", "github_feed_token"],
|
||||
"builders": [
|
||||
@@ -193,6 +192,12 @@
|
||||
"elevated_user": "{{user `install_user`}}",
|
||||
"elevated_password": "{{user `install_password`}}"
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-Nuget.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "windows-restart",
|
||||
"restart_timeout": "30m"
|
||||
@@ -289,6 +294,12 @@
|
||||
"{{ template_dir }}/scripts/Installers/Install-AzureDevOpsCli.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-AzCopy.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
@@ -327,12 +338,12 @@
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/toolcache-2016.json",
|
||||
"source": "{{template_dir}}/toolsets/toolcache-2016.json",
|
||||
"destination": "{{user `root_folder`}}/toolcache.json"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/toolset-2016.json",
|
||||
"source": "{{template_dir}}/toolsets/toolset-2016.json",
|
||||
"destination": "{{user `toolset_json_path`}}"
|
||||
},
|
||||
{
|
||||
@@ -360,7 +371,8 @@
|
||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-Toolset.ps1"
|
||||
"{{ template_dir }}/scripts/Installers/Install-Toolset.ps1",
|
||||
"{{ template_dir }}/scripts/Installers/Configure-Toolset.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -387,16 +399,6 @@
|
||||
"{{ template_dir }}/scripts/Installers/Install-GitHub-CLI.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"environment_vars": [
|
||||
"GO_VERSIONS={{user `go_versions`}}",
|
||||
"GO_DEFAULT={{user `go_default`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-Go.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
@@ -543,18 +545,16 @@
|
||||
"{{ template_dir }}/scripts/Installers/Install-DotnetSDK.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-WindowsUpdates.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "windows-shell",
|
||||
"inline": ["wmic product where \"name like '%%microsoft azure powershell%%'\" call uninstall /nointeractive"]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"environment_vars":[
|
||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
||||
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-AzureModules.ps1"
|
||||
]
|
||||
@@ -603,15 +603,6 @@
|
||||
"{{ template_dir }}/scripts/Installers/Install-AzureCosmosDbEmulator.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"environment_vars": [
|
||||
"ROOT_FOLDER={{user `root_folder`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-Boost.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
@@ -678,12 +669,22 @@
|
||||
"{{ template_dir }}/scripts/Installers/Install-MongoDB.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-GoogleCloudSDK.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"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"
|
||||
]
|
||||
@@ -712,6 +713,12 @@
|
||||
"{{ template_dir }}/scripts/Installers/Validate-AzureDevOpsCli.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Validate-AzCopy.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
@@ -760,25 +767,6 @@
|
||||
"{{ template_dir }}/scripts/Installers/Validate-GitHub-CLI.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"environment_vars": [
|
||||
"GO_VERSIONS={{user `go_versions`}}",
|
||||
"GO_DEFAULT={{ user `go_default`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Validate-Go.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"environment_vars": [
|
||||
"ROOT_FOLDER={{user `root_folder`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Validate-Boost.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
@@ -1007,12 +995,30 @@
|
||||
"{{ template_dir }}/scripts/Installers/Validate-MongoDB.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Validate-GoogleCloudSDK.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Validate-DiskSpace.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-WindowsUpdates.ps1"
|
||||
],
|
||||
"elevated_user": "{{user `install_user`}}",
|
||||
"elevated_password": "{{user `install_password`}}"
|
||||
},
|
||||
{
|
||||
"type": "windows-restart",
|
||||
"restart_timeout": "10m"
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"inline": [
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -24,15 +24,14 @@
|
||||
"imagedata_file": "C:\\imagedata.json",
|
||||
"metadata_file": "C:\\image\\metadata.txt",
|
||||
"helper_script_folder": "C:\\Program Files\\WindowsPowerShell\\Modules\\",
|
||||
"psmodules_root_folder": "C:\\Modules",
|
||||
"commit_id": "LATEST",
|
||||
"install_user": "installer",
|
||||
"install_password": null,
|
||||
"capture_name_prefix": "packer",
|
||||
"image_version": "dev",
|
||||
"image_os": "win19",
|
||||
"github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}",
|
||||
"go_versions": "1.9, 1.10, 1.11, 1.12, 1.13, 1.14",
|
||||
"go_default": "1.14"
|
||||
"github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}"
|
||||
},
|
||||
"sensitive-variables": ["install_password", "ssh_password", "client_secret", "github_feed_token"],
|
||||
"builders": [
|
||||
@@ -193,6 +192,12 @@
|
||||
"elevated_user": "{{user `install_user`}}",
|
||||
"elevated_password": "{{user `install_password`}}"
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-Nuget.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
@@ -274,6 +279,12 @@
|
||||
"{{ template_dir }}/scripts/Installers/Install-AzureDevOpsCli.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-AzCopy.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
@@ -294,12 +305,12 @@
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/toolcache-2019.json",
|
||||
"source": "{{template_dir}}/toolsets/toolcache-2019.json",
|
||||
"destination": "{{user `root_folder`}}/toolcache.json"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/toolset-2019.json",
|
||||
"source": "{{template_dir}}/toolsets/toolset-2019.json",
|
||||
"destination": "{{user `toolset_json_path`}}"
|
||||
},
|
||||
{
|
||||
@@ -327,7 +338,8 @@
|
||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-Toolset.ps1"
|
||||
"{{ template_dir }}/scripts/Installers/Install-Toolset.ps1",
|
||||
"{{ template_dir }}/scripts/Installers/Configure-Toolset.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -353,16 +365,6 @@
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-GitHub-CLI.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"environment_vars": [
|
||||
"GO_VERSIONS={{user `go_versions`}}",
|
||||
"GO_DEFAULT={{user `go_default`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-Go.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
@@ -504,18 +506,16 @@
|
||||
"{{ template_dir }}/scripts/Installers/Install-DotnetSDK.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-WindowsUpdates.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "windows-shell",
|
||||
"inline": ["wmic product where \"name like '%%microsoft azure powershell%%'\" call uninstall /nointeractive"]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"environment_vars":[
|
||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
||||
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-AzureModules.ps1"
|
||||
]
|
||||
@@ -564,15 +564,6 @@
|
||||
"{{ template_dir }}/scripts/Installers/Install-AzureCosmosDbEmulator.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"environment_vars": [
|
||||
"ROOT_FOLDER={{user `root_folder`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-Boost.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
@@ -663,12 +654,22 @@
|
||||
"{{ template_dir }}/scripts/Installers/Install-MongoDB.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-GoogleCloudSDK.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"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"
|
||||
]
|
||||
@@ -697,6 +698,12 @@
|
||||
"{{ template_dir }}/scripts/Installers/Validate-AzureDevOpsCli.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Validate-AzCopy.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
@@ -745,25 +752,6 @@
|
||||
"{{ template_dir }}/scripts/Installers/Validate-GitHub-CLI.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"environment_vars": [
|
||||
"GO_VERSIONS={{user `go_versions`}}",
|
||||
"GO_DEFAULT={{user `go_default`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Validate-Go.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"environment_vars": [
|
||||
"ROOT_FOLDER={{user `root_folder`}}"
|
||||
],
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Validate-Boost.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
@@ -998,12 +986,30 @@
|
||||
"{{ template_dir }}/scripts/Installers/Validate-AliyunCli.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Validate-GoogleCloudSDK.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Validate-DiskSpace.ps1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"scripts":[
|
||||
"{{ template_dir }}/scripts/Installers/Install-WindowsUpdates.ps1"
|
||||
],
|
||||
"elevated_user": "{{user `install_user`}}",
|
||||
"elevated_password": "{{user `install_password`}}"
|
||||
},
|
||||
{
|
||||
"type": "windows-restart",
|
||||
"restart_timeout": "10m"
|
||||
},
|
||||
{
|
||||
"type": "powershell",
|
||||
"inline": [
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -16,6 +16,7 @@ Export-ModuleMember -Function @(
|
||||
'Install-VisualStudio'
|
||||
'Get-ToolcachePackages'
|
||||
'Get-ToolsetContent'
|
||||
'Get-ToolsetToolFullPath'
|
||||
'Get-ToolsByName'
|
||||
'Stop-SvcWithErrHandling'
|
||||
'Set-SvcWithErrHandling'
|
||||
|
||||
@@ -137,7 +137,7 @@ function Stop-SvcWithErrHandling
|
||||
.PARAMETER StopOnError
|
||||
Switch for stopping the script and exit from PowerShell if one service is absent
|
||||
#>
|
||||
param
|
||||
Param
|
||||
(
|
||||
[Parameter(Mandatory, ValueFromPipeLine = $true)]
|
||||
[string] $ServiceName,
|
||||
@@ -187,7 +187,7 @@ function Set-SvcWithErrHandling
|
||||
Hashtable for service arguments
|
||||
#>
|
||||
|
||||
param
|
||||
Param
|
||||
(
|
||||
[Parameter(Mandatory, ValueFromPipeLine = $true)]
|
||||
[string] $ServiceName,
|
||||
@@ -217,7 +217,7 @@ function Set-SvcWithErrHandling
|
||||
|
||||
function Start-DownloadWithRetry
|
||||
{
|
||||
param
|
||||
Param
|
||||
(
|
||||
[Parameter(Mandatory)]
|
||||
[string] $Url,
|
||||
@@ -348,17 +348,74 @@ function Get-VSExtensionVersion
|
||||
return $packageVersion
|
||||
}
|
||||
|
||||
function Get-ToolcachePackages {
|
||||
function Get-ToolcachePackages
|
||||
{
|
||||
$toolcachePath = Join-Path $env:ROOT_FOLDER "toolcache.json"
|
||||
Get-Content -Raw $toolcachePath | ConvertFrom-Json
|
||||
}
|
||||
|
||||
function Get-ToolsetContent {
|
||||
function Get-ToolsetContent
|
||||
{
|
||||
$toolsetJson = Get-Content -Path $env:TOOLSET_JSON_PATH -Raw
|
||||
ConvertFrom-Json -InputObject $toolsetJson
|
||||
}
|
||||
|
||||
function Get-ToolsByName {
|
||||
function Get-ToolsetToolFullPath
|
||||
{
|
||||
<#
|
||||
.DESCRIPTION
|
||||
Function that return full path to specified toolset tool.
|
||||
|
||||
.PARAMETER Name
|
||||
The name of required tool.
|
||||
|
||||
.PARAMETER Version
|
||||
The version of required tool.
|
||||
|
||||
.PARAMETER Arch
|
||||
The architecture of required tool.
|
||||
#>
|
||||
|
||||
Param
|
||||
(
|
||||
[Parameter(Mandatory=$true)]
|
||||
[string] $Name,
|
||||
[Parameter(Mandatory=$true)]
|
||||
[string] $Version,
|
||||
[string] $Arch = "x64"
|
||||
)
|
||||
|
||||
$ToolPath = Join-Path $env:AGENT_TOOLSDIRECTORY $Name
|
||||
|
||||
# Add wildcard if missing
|
||||
if ($Version.Split(".").Length -lt 3) {
|
||||
$Version += ".*"
|
||||
}
|
||||
|
||||
# Check if version folder exists
|
||||
$expectedVersionPath = Join-Path $ToolPath $Version
|
||||
if (-not (Test-Path $expectedVersionPath)) {
|
||||
Write-Host "Expected ${Name} ${Version} folder is not found!"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Take latest installed version in case if toolset version contains wildcards
|
||||
$foundVersion = Get-Item $expectedVersionPath `
|
||||
| Sort-Object -Property {[version]$_.name} -Descending `
|
||||
| Select-Object -First 1
|
||||
|
||||
# Check for required architecture folder
|
||||
$foundVersionArchPath = Join-Path $foundVersion $Arch
|
||||
if (-not (Test-Path $foundVersionArchPath)) {
|
||||
Write-Host "Expected ${Name}(${Arch}) $($foundVersion.name) architecture folder is not found!"
|
||||
exit 1
|
||||
}
|
||||
|
||||
return $foundVersionArchPath
|
||||
}
|
||||
|
||||
function Get-ToolsByName
|
||||
{
|
||||
Param
|
||||
(
|
||||
[Parameter(Mandatory = $True)]
|
||||
@@ -391,7 +448,7 @@ function Test-IsWin16
|
||||
}
|
||||
|
||||
function Extract-7Zip {
|
||||
param
|
||||
Param
|
||||
(
|
||||
[Parameter(Mandatory=$true)]
|
||||
[string]$Path,
|
||||
|
||||
84
images/win/scripts/Installers/Configure-Toolset.ps1
Normal file
84
images/win/scripts/Installers/Configure-Toolset.ps1
Normal file
@@ -0,0 +1,84 @@
|
||||
################################################################################
|
||||
## File: Configure-Toolset.ps1
|
||||
## Team: CI-Build
|
||||
## Desc: Configure Toolset
|
||||
################################################################################
|
||||
|
||||
Function Set-DefaultVariables
|
||||
{
|
||||
param
|
||||
(
|
||||
[Parameter(Mandatory=$true)]
|
||||
[object] $EnvVars,
|
||||
[Parameter(Mandatory=$true)]
|
||||
[string] $ToolVersionPath
|
||||
)
|
||||
|
||||
$templates = $EnvVars.pathTemplates
|
||||
foreach ($template in $templates)
|
||||
{
|
||||
$toolSystemPath = $template -f $ToolVersionPath
|
||||
Add-MachinePathItem -PathItem $toolSystemPath | Out-Null
|
||||
}
|
||||
|
||||
if (-not ([string]::IsNullOrEmpty($EnvVars.defaultVariable)))
|
||||
{
|
||||
setx $toolEnvVars.defaultVariable $ToolVersionPath /M | Out-Null
|
||||
}
|
||||
}
|
||||
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
Import-Module -Name ImageHelpers -Force -DisableNameChecking
|
||||
|
||||
# Define executables for cached tools
|
||||
$toolsEnvironmentVariables = @{
|
||||
Python = @{
|
||||
pathTemplates = @(
|
||||
"{0}",
|
||||
"{0}\Scripts"
|
||||
)
|
||||
}
|
||||
Boost = @{
|
||||
variableTemplate = "BOOST_ROOT_{0}_{1}_{2}"
|
||||
}
|
||||
go = @{
|
||||
pathTemplates = @(
|
||||
"{0}\bin"
|
||||
)
|
||||
defaultVariable = "GOROOT"
|
||||
variableTemplate = "GOROOT_{0}_{1}_X64"
|
||||
}
|
||||
}
|
||||
|
||||
$toolsToConfigure = @("Python", "Boost", "Go")
|
||||
$tools = Get-ToolsetContent | Select-Object -ExpandProperty toolcache `
|
||||
| Where-Object { $toolsToConfigure -contains $_.name }
|
||||
|
||||
Write-Host "Configure toolset tools environment..."
|
||||
foreach ($tool in $tools)
|
||||
{
|
||||
$toolEnvVars = $toolsEnvironmentVariables[$tool.name]
|
||||
|
||||
if (-not ([string]::IsNullOrEmpty($toolEnvVars.variableTemplate)))
|
||||
{
|
||||
foreach ($version in $tool.versions)
|
||||
{
|
||||
Write-Host "Set $($tool.name) $version environment variable..."
|
||||
|
||||
$foundVersionArchPath = Get-ToolsetToolFullPath -Name $tool.name -Version $version -Arch $tool.arch
|
||||
$envName = $toolEnvVars.variableTemplate -f $version.Split(".")
|
||||
|
||||
setx $envName $foundVersionArchPath /M | Out-Null
|
||||
}
|
||||
}
|
||||
|
||||
if (-not ([string]::IsNullOrEmpty($tool.default)))
|
||||
{
|
||||
Write-Host "Use $($tool.name) $($tool.default) as a system $($tool.name)..."
|
||||
|
||||
$toolVersionPath = Get-ToolsetToolFullPath -Name $tool.name -Version $tool.default -Arch $tool.arch
|
||||
|
||||
Set-DefaultVariables -ToolVersionPath $toolVersionPath -EnvVars $toolEnvVars
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
################################################################################
|
||||
## File: Finalize-VM.ps1
|
||||
## Desc: Clean up folders temp folders after installs to save space
|
||||
## Desc: Clean up temp folders after installs to save space
|
||||
################################################################################
|
||||
|
||||
Write-Host "Cleanup WinSxS"
|
||||
@@ -19,7 +19,7 @@ Write-Host "Clean up various directories"
|
||||
if (Test-Path $_) {
|
||||
Write-Host "Removing $_"
|
||||
try {
|
||||
Takeown /d Y /R /f $_
|
||||
Takeown /d Y /R /f $_ | Out-Null
|
||||
Icacls $_ /GRANT:r administrators:F /T /c /q 2>&1 | Out-Null
|
||||
Remove-Item $_ -Recurse -Force | Out-Null
|
||||
}
|
||||
|
||||
6
images/win/scripts/Installers/Install-AzCopy.ps1
Normal file
6
images/win/scripts/Installers/Install-AzCopy.ps1
Normal file
@@ -0,0 +1,6 @@
|
||||
################################################################################
|
||||
## File: Install-AzCopy.ps1
|
||||
## Desc: Install AzCopy10
|
||||
################################################################################
|
||||
|
||||
Choco-Install -PackageName azcopy10
|
||||
@@ -3,8 +3,7 @@
|
||||
## Desc: Install Azure CLI
|
||||
################################################################################
|
||||
|
||||
# Temporary hardcode 2.5.1 installation until version 2.7.0 with the fix for the issue is not released https://github.com/actions/virtual-environments/issues/948
|
||||
Choco-Install -PackageName azure-cli -ArgumentList "--version=2.5.1"
|
||||
Choco-Install -PackageName azure-cli
|
||||
|
||||
$AzureCliExtensionPath = Join-Path $Env:CommonProgramFiles 'AzureCliExtensionDirectory'
|
||||
New-Item -ItemType "directory" -Path $AzureCliExtensionPath
|
||||
|
||||
@@ -3,58 +3,35 @@
|
||||
## Desc: Install Azure PowerShell modules
|
||||
################################################################################
|
||||
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
Set-PSRepository -InstallationPolicy Trusted -Name PSGallery
|
||||
|
||||
#### NOW The correct Modules need to be saved in C:\Modules
|
||||
$installPSModulePath = 'C:\Modules'
|
||||
if(-not (Test-Path -LiteralPath $installPSModulePath))
|
||||
# The correct Modules need to be saved in C:\Modules
|
||||
$installPSModulePath = $env:PSMODULES_ROOT_FOLDER
|
||||
if (-not (Test-Path -LiteralPath $installPSModulePath))
|
||||
{
|
||||
Write-Host "Creating '$installPSModulePath' folder to store PowerShell Azure modules"
|
||||
Write-Host "Creating ${installPSModulePath} folder to store PowerShell Azure modules..."
|
||||
$null = New-Item -Path $installPSModulePath -ItemType Directory
|
||||
}
|
||||
|
||||
# Powershell Azure modules to install
|
||||
$psAzureModulesToInstall = @{
|
||||
"azurerm" = @(
|
||||
"2.1.0"
|
||||
"3.8.0"
|
||||
"4.2.1"
|
||||
"5.1.1"
|
||||
"6.7.0"
|
||||
"6.13.1"
|
||||
)
|
||||
# Get modules content from toolset
|
||||
$modules = (Get-ToolsetContent).azureModules
|
||||
|
||||
"azure" = @(
|
||||
"2.1.0"
|
||||
"3.8.0"
|
||||
"4.2.1"
|
||||
"5.1.1"
|
||||
"5.3.0"
|
||||
)
|
||||
$psModuleMachinePath = ""
|
||||
|
||||
"az" = @(
|
||||
"1.0.0"
|
||||
"1.6.0"
|
||||
"2.3.2"
|
||||
"2.6.0"
|
||||
"3.1.0"
|
||||
"3.5.0"
|
||||
"3.8.0"
|
||||
)
|
||||
}
|
||||
|
||||
# Download Azure PowerShell modules
|
||||
foreach($psmoduleName in $psAzureModulesToInstall.Keys)
|
||||
foreach ($module in $modules)
|
||||
{
|
||||
Write-Host "Installing '$psmoduleName' to the '$installPSModulePath' path:"
|
||||
$psmoduleVersions = $psAzureModulesToInstall[$psmoduleName]
|
||||
foreach($psmoduleVersion in $psmoduleVersions)
|
||||
$moduleName = $module.name
|
||||
|
||||
Write-Host "Installing ${moduleName} to the ${installPSModulePath} path..."
|
||||
foreach ($version in $module.versions)
|
||||
{
|
||||
$psmodulePath = Join-Path $installPSModulePath "${psmoduleName}_${psmoduleVersion}"
|
||||
Write-Host " - $psmoduleVersion [$psmodulePath]"
|
||||
$modulePath = Join-Path -Path $installPSModulePath -ChildPath "${moduleName}_${version}"
|
||||
Write-Host " - $version [$modulePath]"
|
||||
try
|
||||
{
|
||||
Save-Module -Path $psmodulePath -Name $psmoduleName -RequiredVersion $psmoduleVersion -Force -ErrorAction Stop
|
||||
Save-Module -Path $modulePath -Name $moduleName -RequiredVersion $version -Force -ErrorAction Stop
|
||||
}
|
||||
catch
|
||||
{
|
||||
@@ -62,8 +39,17 @@ foreach($psmoduleName in $psAzureModulesToInstall.Keys)
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
|
||||
# Append default tool version to machine path
|
||||
if ($null -ne $module.default)
|
||||
{
|
||||
$defaultVersion = $module.default
|
||||
|
||||
Write-Host "Use ${moduleName} ${defaultVersion} as default version..."
|
||||
$psModuleMachinePath += "${installPSModulePath}\${moduleName}_${defaultVersion};"
|
||||
}
|
||||
}
|
||||
|
||||
# Add AzureRM and Azure modules to the PSModulePath
|
||||
$finalModulePath = '{0};{1};{2}' -f "${installPSModulePath}\azurerm_2.1.0", "${installPSModulePath}\azure_2.1.0", $env:PSModulePath
|
||||
[Environment]::SetEnvironmentVariable("PSModulePath", $finalModulePath, "Machine")
|
||||
# Add modules to the PSModulePath
|
||||
$psModuleMachinePath += $env:PSModulePath
|
||||
[Environment]::SetEnvironmentVariable("PSModulePath", $psModuleMachinePath, "Machine")
|
||||
@@ -1,19 +0,0 @@
|
||||
################################################################################
|
||||
## File: Set-BoostRoot.ps1
|
||||
## Team: CI-Build
|
||||
## Desc: Install boost using tool cache
|
||||
################################################################################
|
||||
|
||||
Import-Module -Name ImageHelpers
|
||||
|
||||
$SoftwareName = "Boost"
|
||||
$BoostDirectory = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath $SoftwareName
|
||||
$BoostVersions = (Get-ToolsByName -SoftwareName $SoftwareName).Versions | Foreach-Object {"{0}.0" -f $_}
|
||||
|
||||
foreach($BoostVersion in $BoostVersions)
|
||||
{
|
||||
$BoostInstallationDir = Join-Path -Path $BoostDirectory -ChildPath $BoostVersion
|
||||
|
||||
$EnvBoostPath = "BOOST_ROOT_{0}" -f ($BoostVersion.Replace('.', '_'))
|
||||
setx $EnvBoostPath $BoostInstallationDir /M | Out-Null
|
||||
}
|
||||
@@ -59,8 +59,7 @@ function InstallAllValidSdks()
|
||||
|
||||
# Consider all channels except preview/eol channels.
|
||||
# Sort the channels in ascending order
|
||||
# HACK: Explicitly adding eol channel 2.2 for a grace period as this channel is wierdly marked as eol with no higher 2.x channel
|
||||
$dotnetChannels = $dotnetChannels.'releases-index' | Where-Object { (!$_."support-phase".Equals('preview') -and !$_."support-phase".Equals('eol')) -or ($_."channel-version" -eq "2.2") } | Sort-Object { [Version] $_."channel-version" }
|
||||
$dotnetChannels = $dotnetChannels.'releases-index' | Where-Object { (!$_."support-phase".Equals('preview') -and !$_."support-phase".Equals('eol')) } | Sort-Object { [Version] $_."channel-version" }
|
||||
|
||||
# Download installation script.
|
||||
$installationName = "dotnet-install.ps1"
|
||||
|
||||
@@ -30,6 +30,7 @@ Install-Binary -Url $downloadUrl `
|
||||
"/RESTARTAPPLICATIONS", `
|
||||
"/o:PathOption=CmdTools", `
|
||||
"/o:BashTerminalOption=ConHost", `
|
||||
"/o:EnableSymlinks=Enabled", `
|
||||
"/COMPONENTS=gitlfs")
|
||||
|
||||
Choco-Install -PackageName hub
|
||||
|
||||
@@ -1,85 +0,0 @@
|
||||
################################################################################
|
||||
## File: Install-Go.ps1
|
||||
## Desc: Install Go
|
||||
################################################################################
|
||||
|
||||
Import-Module -Name ImageHelpers -Force
|
||||
|
||||
$refsJson = Invoke-RestMethod "https://api.github.com/repos/golang/go/git/refs/tags"
|
||||
|
||||
function Install-GoVersion
|
||||
{
|
||||
Param
|
||||
(
|
||||
[String] $goVersion,
|
||||
[Switch] $addToDefaultPath
|
||||
)
|
||||
|
||||
$latestVersionObject = $refsJson | Where-Object { $_.ref -Match "refs/tags/go$goVersion[./d]*" } | Select-Object -Last 1
|
||||
$latestVersion = $latestVersionObject.ref.replace('refs/tags/go','')
|
||||
|
||||
# Download the Go zip archive.
|
||||
Write-Host "Downloading Go $latestVersion..."
|
||||
$ProgressPreference = 'SilentlyContinue'
|
||||
|
||||
$goArchName = "go${latestVersion}.windows-amd64.zip"
|
||||
$goArchUrl = "https://dl.google.com/go/${goArchName}"
|
||||
|
||||
$goArchPath = Start-DownloadWithRetry -Url $goArchUrl -Name $goArchName
|
||||
|
||||
# Extract the zip archive. It contains a single directory named "go".
|
||||
Write-Host "Extracting Go $latestVersion..."
|
||||
$toolDirectory = Join-Path $env:AGENT_TOOLSDIRECTORY "go\$latestVersion"
|
||||
Extract-7Zip -Path $goArchPath -DestinationPath $toolDirectory
|
||||
|
||||
# Rename the extracted "go" directory to "x64" for full path "C:\hostedtoolcache\windows\Go\1.14.2\x64\..."
|
||||
Rename-Item -path "$toolDirectory\go" -newName "x64"
|
||||
$fullArchPath = "$toolDirectory\x64"
|
||||
|
||||
# Delete unnecessary files to conserve space
|
||||
Write-Host "Cleaning directories of Go $latestVersion..."
|
||||
if (Test-Path "$fullArchPath\doc")
|
||||
{
|
||||
Remove-Item -Recurse -Force "$fullArchPath\doc"
|
||||
}
|
||||
if (Test-Path "$fullArchPath\blog")
|
||||
{
|
||||
Remove-Item -Recurse -Force "$fullArchPath\blog"
|
||||
}
|
||||
|
||||
# Create symlink in old location
|
||||
New-Item -Path "C:\go$latestVersion" -ItemType SymbolicLink -Value $fullArchPath
|
||||
|
||||
# Make this the default version of Go?
|
||||
if ($addToDefaultPath)
|
||||
{
|
||||
Write-Host "Adding Go $latestVersion to the path..."
|
||||
# Add the Go binaries to the path.
|
||||
Add-MachinePathItem "$fullArchPath\bin" | Out-Null
|
||||
# Set the GOROOT environment variable.
|
||||
setx GOROOT "$fullArchPath" /M | Out-Null
|
||||
}
|
||||
|
||||
# Done
|
||||
Write-Host "Done installing Go $latestVersion."
|
||||
return $fullArchPath
|
||||
}
|
||||
|
||||
# Install Go
|
||||
$goVersionsToInstall = $env:GO_VERSIONS.split(", ", [System.StringSplitOptions]::RemoveEmptyEntries)
|
||||
|
||||
foreach ($go in $goVersionsToInstall)
|
||||
{
|
||||
Write-Host "Installing Go ${go}"
|
||||
if ($go -eq $env:GO_DEFAULT)
|
||||
{
|
||||
$installDirectory = Install-GoVersion -goVersion $go -addToDefaultPath
|
||||
}
|
||||
else
|
||||
{
|
||||
$installDirectory = Install-GoVersion -goVersion $go
|
||||
}
|
||||
|
||||
$envName = "GOROOT_{0}_{1}_X64" -f $go.split(".")
|
||||
setx $envName "$installDirectory" /M
|
||||
}
|
||||
9
images/win/scripts/Installers/Install-GoogleCloudSDK.ps1
Normal file
9
images/win/scripts/Installers/Install-GoogleCloudSDK.ps1
Normal file
@@ -0,0 +1,9 @@
|
||||
################################################################################
|
||||
## File: Install-GoogleCloudSDK.ps1
|
||||
## Desc: Install Google Cloud SDK
|
||||
################################################################################
|
||||
|
||||
# https://cloud.google.com/sdk/docs/downloads-interactive
|
||||
$googleCloudSDKInstaller = "https://dl.google.com/dl/cloudsdk/channels/rapid/GoogleCloudSDKInstaller.exe"
|
||||
$argumentList = @("/S", "/allusers", "/noreporting")
|
||||
Install-Binary -Url $googleCloudSDKInstaller -Name "GoogleCloudSDKInstaller.exe" -ArgumentList $argumentList
|
||||
@@ -8,11 +8,21 @@ Import-Module -Name ImageHelpers -Force
|
||||
function Set-JavaPath {
|
||||
param (
|
||||
[string] $Version,
|
||||
[string] $JavaRootPath,
|
||||
[switch] $Default
|
||||
)
|
||||
|
||||
$filter = "*azure-jdk_${version}.*"
|
||||
$javaPath = (Get-ChildItem -Path 'C:\Program Files\Java' -Filter $filter | Sort-Object -Property Name -Descending | Select-Object -First 1).FullName
|
||||
if ($Version -eq 7) {
|
||||
$matchedString = "azure-jdk_7"
|
||||
} else {
|
||||
$matchedString = "jdk-?$Version"
|
||||
}
|
||||
$javaPath = (Get-ChildItem -Path $JavaRootPath | Where-Object { $_ -match $matchedString}).FullName
|
||||
|
||||
if ([string]::IsNullOrEmpty($javaPath)) {
|
||||
Write-Host "Not found path to Java $Version"
|
||||
exit 1
|
||||
}
|
||||
|
||||
Write-Host "Set JAVA_HOME_${Version}_X64 environmental variable as $javaPath"
|
||||
setx JAVA_HOME_${Version}_X64 $javaPath /M
|
||||
@@ -43,26 +53,49 @@ function Set-JavaPath {
|
||||
}
|
||||
}
|
||||
|
||||
# Download the Azul Systems Zulu JDKs
|
||||
# See https://www.azul.com/downloads/azure-only/zulu/
|
||||
$azulJDKURLs = @(
|
||||
'https://repos.azul.com/azure-only/zulu/packages/zulu-7/7u232/zulu-7-azure-jdk_7.31.0.5-7.0.232-win_x64.zip',
|
||||
'https://repos.azul.com/azure-only/zulu/packages/zulu-8/8u222/zulu-8-azure-jdk_8.40.0.25-8.0.222-win_x64.zip',
|
||||
'https://repos.azul.com/azure-only/zulu/packages/zulu-11/11.0.4/zulu-11-azure-jdk_11.33.15-11.0.4-win_x64.zip',
|
||||
'https://repos.azul.com/azure-only/zulu/packages/zulu-13/13.0.3/zulu-13-azure-jdk_13.31.11-13.0.3-win_x64.zip'
|
||||
)
|
||||
|
||||
foreach ($azulJDKURL in $azulJDKURLs)
|
||||
{
|
||||
$archivePath = Start-DownloadWithRetry -Url $azulJDKURL -Name $([IO.Path]::GetFileName($azulJDKURL))
|
||||
Extract-7Zip -Path $archivePath -DestinationPath "C:\Program Files\Java\"
|
||||
function Install-Java7FromAzul {
|
||||
param(
|
||||
[string] $DestinationPath
|
||||
)
|
||||
$azulJDK7URL = 'https://repos.azul.com/azure-only/zulu/packages/zulu-7/7u232/zulu-7-azure-jdk_7.31.0.5-7.0.232-win_x64.zip'
|
||||
$archivePath = Start-DownloadWithRetry -Url $azulJDK7URL -Name $([IO.Path]::GetFileName($azulJDK7URL))
|
||||
Extract-7Zip -Path $archivePath -DestinationPath $DestinationPath
|
||||
}
|
||||
|
||||
# Set PATH and env variables
|
||||
Set-JavaPath -Version 7
|
||||
Set-JavaPath -Version 8 -Default
|
||||
Set-JavaPath -Version 11
|
||||
Set-JavaPath -Version 13
|
||||
function Install-JavaFromAdoptOpenJDK {
|
||||
param(
|
||||
[string] $JDKVersion,
|
||||
[string] $DestinationPath
|
||||
)
|
||||
|
||||
$assets = Invoke-RestMethod -Uri "https://api.adoptopenjdk.net/v3/assets/latest/$JDKVersion/hotspot"
|
||||
$downloadUrl = ($assets | Where-Object {
|
||||
$_.binary.os -eq "windows" `
|
||||
-and $_.binary.architecture -eq "x64" `
|
||||
-and $_.binary.image_type -eq "jdk"
|
||||
}).binary.package.link
|
||||
|
||||
$archivePath = Start-DownloadWithRetry -Url $downloadUrl -Name $([IO.Path]::GetFileName($downloadUrl))
|
||||
Extract-7Zip -Path $archivePath -DestinationPath $DestinationPath
|
||||
}
|
||||
|
||||
$jdkVersions = @(7, 8, 11, 13)
|
||||
$defaultVersion = 8
|
||||
$javaRootPath = "C:\Program Files\Java\"
|
||||
|
||||
foreach ($jdkVersion in $jdkVersions) {
|
||||
if ($jdkVersion -eq 7) {
|
||||
Install-Java7FromAzul -DestinationPath $javaRootPath
|
||||
} else {
|
||||
Install-JavaFromAdoptOpenJDK -JDKVersion $jdkVersion -DestinationPath $javaRootPath
|
||||
}
|
||||
|
||||
if ($jdkVersion -eq $defaultVersion) {
|
||||
Set-JavaPath -Version $jdkVersion -JavaRootPath $javaRootPath -Default
|
||||
} else {
|
||||
Set-JavaPath -Version $jdkVersion -JavaRootPath $javaRootPath
|
||||
}
|
||||
}
|
||||
|
||||
# Install Java tools
|
||||
# Force chocolatey to ignore dependencies on Ant and Maven or else they will download the Oracle JDK
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
## Desc: Install MongoDB
|
||||
####################################################################################
|
||||
|
||||
choco install mongodb
|
||||
|
||||
Add-MachinePathItem "$($env:SystemDrive)\Program Files\MongoDB\Server\4.2\bin"
|
||||
Choco-Install -PackageName mongodb
|
||||
$mongoPath = (Get-CimInstance Win32_Service -Filter "Name LIKE 'mongodb'").PathName
|
||||
$mongoBin = Split-Path -Path $mongoPath.split('"')[1]
|
||||
Add-MachinePathItem "$mongoBin"
|
||||
|
||||
@@ -33,3 +33,4 @@ npm install -g --save-dev webpack webpack-cli
|
||||
npm install -g yarn
|
||||
npm install -g lerna
|
||||
npm install -g node-sass
|
||||
npm install -g newman
|
||||
|
||||
16
images/win/scripts/Installers/Install-Nuget.ps1
Normal file
16
images/win/scripts/Installers/Install-Nuget.ps1
Normal file
@@ -0,0 +1,16 @@
|
||||
################################################################################
|
||||
## File: Install-Nuget.ps1
|
||||
## Desc: Install NuGet.CommandLine
|
||||
################################################################################
|
||||
|
||||
Choco-Install -PackageName NuGet.CommandLine
|
||||
|
||||
if (Get-Command -Name 'nuget.exe')
|
||||
{
|
||||
Write-Host 'nuget on path'
|
||||
}
|
||||
else
|
||||
{
|
||||
Write-Host 'nuget is not on path'
|
||||
exit 1
|
||||
}
|
||||
@@ -1,22 +1,25 @@
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
Import-Module -Name ImageHelpers
|
||||
|
||||
#Define user and password for PostgreSQL database
|
||||
$postgresusr="postgres"
|
||||
$postgrespwd="root"
|
||||
$pgUser = "postgres"
|
||||
$pgPwd = "root"
|
||||
|
||||
#Prepare environment variable for validation
|
||||
Set-SystemVariable -SystemVariable PGUSER -Value $postgresusr
|
||||
Set-SystemVariable -SystemVariable PGPASSWORD -Value $postgrespwd
|
||||
#Install latest PostgreSQL
|
||||
Set-SystemVariable -SystemVariable PGUSER -Value $pgUser
|
||||
Set-SystemVariable -SystemVariable PGPASSWORD -Value $pgPwd
|
||||
|
||||
cinst postgresql --params "/Password:$postgrespwd" --params-global --debug --verbose
|
||||
#Install latest PostgreSQL
|
||||
Choco-Install -PackageName postgresql -ArgumentList "--params", "'/Password:$pgPwd /NoPath'", "--params-global", "--debug", "--verbose"
|
||||
|
||||
#Get Path to pg_ctl.exe
|
||||
$paths = (Get-CimInstance Win32_Service -Filter "Name LIKE 'postgresql-%'").PathName
|
||||
#Parse output of command above to obtain pure path
|
||||
$pgbin = $paths.split('"')[1].replace("\pg_ctl.exe", "")
|
||||
#Added PostgreSQL bin path into PATH variable.
|
||||
Add-MachinePathItem $pgbin
|
||||
$pgPath = (Get-CimInstance Win32_Service -Filter "Name LIKE 'postgresql-%'").PathName
|
||||
|
||||
#Parse output of command above to obtain pure path
|
||||
$pgBin = Split-Path -Path $pgPath.split('"')[1]
|
||||
$pgRoot = Split-Path -Path $pgPath.split('"')[5]
|
||||
$pgData = Join-Path $pgRoot "data"
|
||||
|
||||
#Added PostgreSQL environment variable
|
||||
Set-SystemVariable -SystemVariable PGBIN -Value $pgBin
|
||||
Set-SystemVariable -SystemVariable PGROOT -Value $pgRoot
|
||||
Set-SystemVariable -SystemVariable PGDATA -Value $pgData
|
||||
|
||||
@@ -15,7 +15,13 @@ Function Install-Asset {
|
||||
$assetArchivePath = Start-DownloadWithRetry -Url $ReleaseAsset.download_url -Name $ReleaseAsset.filename
|
||||
|
||||
Write-Host "Extract $($ReleaseAsset.filename) content..."
|
||||
7z.exe x $assetArchivePath -o"$assetFolderPath" -y | Out-Null
|
||||
if ($assetArchivePath.EndsWith(".tar.gz")) {
|
||||
$assetTarPath = $assetArchivePath.TrimEnd(".tar.gz")
|
||||
Extract-7Zip -Path $assetArchivePath -DestinationPath $assetTarPath
|
||||
Extract-7Zip -Path $assetTarPath -DestinationPath $assetFolderPath
|
||||
} else {
|
||||
Extract-7Zip -Path $assetArchivePath -DestinationPath $assetFolderPath
|
||||
}
|
||||
|
||||
Write-Host "Invoke installation script..."
|
||||
Push-Location -Path $assetFolderPath
|
||||
@@ -23,32 +29,13 @@ Function Install-Asset {
|
||||
Pop-Location
|
||||
}
|
||||
|
||||
Function Set-DefaultPythonVersion {
|
||||
param(
|
||||
[Parameter(Mandatory=$true)]
|
||||
[object[]] $Toolset
|
||||
)
|
||||
|
||||
$python = $Toolset | Where-Object { ($_.name -eq "Python") -and ($_.default -ne "") } `
|
||||
| Select-Object default, arch -First 1
|
||||
|
||||
if ($python.default -ne $null) {
|
||||
$pythonPath = Join-Path $Env:AGENT_TOOLSDIRECTORY "/Python/$($python.default)/$($python.arch)" -Resolve
|
||||
|
||||
Write-Host "Use Python $($python.default) as a system Python"
|
||||
Add-MachinePathItem -PathItem $pythonPath
|
||||
Add-MachinePathItem -PathItem "$pythonPath\Scripts"
|
||||
} else {
|
||||
Write-Host "Default Python version not found in toolset file!"
|
||||
}
|
||||
}
|
||||
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
Import-Module -Name ImageHelpers -Force
|
||||
|
||||
# Get toolcache content from toolset
|
||||
$ToolsToInstall = @("Python", "Node")
|
||||
$ToolsToInstall = @("Python", "Node", "Boost", "Go")
|
||||
|
||||
$tools = Get-ToolsetContent | Select-Object -ExpandProperty toolcache | Where {$ToolsToInstall -contains $_.Name}
|
||||
|
||||
foreach ($tool in $tools) {
|
||||
@@ -60,11 +47,11 @@ foreach ($tool in $tools) {
|
||||
$asset = $assets | Where-Object version -like $toolVersion `
|
||||
| Sort-Object -Property {[version]$_.version} -Descending `
|
||||
| Select-Object -ExpandProperty files `
|
||||
| Where-Object { ($_.platform -eq $tool.platform) -and ($_.arch -eq $tool.arch) } `
|
||||
| Where-Object { ($_.platform -eq $tool.platform) -and ($_.arch -eq $tool.arch) -and ($_.toolset -eq $tool.toolset) } `
|
||||
| Select-Object -First 1
|
||||
|
||||
Write-Host "Installing $($tool.name) $toolVersion $($tool.arch)..."
|
||||
if ($asset -ne $null) {
|
||||
if ($null -ne $asset) {
|
||||
Install-Asset -ReleaseAsset $asset
|
||||
} else {
|
||||
Write-Host "Asset was not found in versions manifest"
|
||||
@@ -72,6 +59,3 @@ foreach ($tool in $tools) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Install default python version
|
||||
Set-DefaultPythonVersion -Toolset $tools
|
||||
@@ -1,10 +1,9 @@
|
||||
################################################################################
|
||||
## File: Install-WindowsUpdates.ps1
|
||||
## Desc: Install Windows Updates.
|
||||
## Should be run at end just before Antivirus.
|
||||
## Should be run at end, just before SoftwareReport and Finalize-VM.ps1.
|
||||
################################################################################
|
||||
|
||||
Write-Host "Run windows updates"
|
||||
Install-Module -Name PSWindowsUpdate -Force -AllowClobber
|
||||
Get-WUInstall -WindowsUpdate -AcceptAll -Install -UpdateType Software -IgnoreReboot
|
||||
Get-WUInstall -MicrosoftUpdate -AcceptAll -Install -IgnoreUserInput -IgnoreReboot
|
||||
|
||||
@@ -40,6 +40,7 @@ Push-Location -Path $sdk.FullName
|
||||
|
||||
& '.\tools\bin\sdkmanager.bat' --sdk_root=$sdk_root `
|
||||
"platform-tools" `
|
||||
"platforms;android-30" `
|
||||
"platforms;android-29" `
|
||||
"platforms;android-28" `
|
||||
"platforms;android-27" `
|
||||
@@ -50,6 +51,7 @@ Push-Location -Path $sdk.FullName
|
||||
"platforms;android-22" `
|
||||
"platforms;android-21" `
|
||||
"platforms;android-19" `
|
||||
"build-tools;30.0.0" `
|
||||
"build-tools;29.0.3" `
|
||||
"build-tools;29.0.2" `
|
||||
"build-tools;29.0.1" `
|
||||
|
||||
10
images/win/scripts/Installers/Validate-AzCopy.ps1
Normal file
10
images/win/scripts/Installers/Validate-AzCopy.ps1
Normal file
@@ -0,0 +1,10 @@
|
||||
################################################################################
|
||||
## 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
|
||||
}
|
||||
@@ -3,41 +3,42 @@
|
||||
## Desc: Validate Azure PowerShell modules
|
||||
################################################################################
|
||||
|
||||
function Validate-AzureModule
|
||||
{
|
||||
param([String]$ModuleName, [String[]]$ModuleVersions)
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
foreach($moduleVersion in $moduleVersions)
|
||||
$modulesRootPath = $env:PSMODULES_ROOT_FOLDER
|
||||
|
||||
# Get modules content from toolset
|
||||
$modules = (Get-ToolsetContent).azureModules
|
||||
|
||||
foreach ($module in $modules)
|
||||
{
|
||||
foreach ($version in $module.versions)
|
||||
{
|
||||
$modulePath = "${installPSModulePath}\${moduleName}_${moduleVersion}"
|
||||
# Import each module in PowerShell session
|
||||
$job = Start-Job -ScriptBlock {
|
||||
param($modulePath, $moduleName)
|
||||
$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 = $job | Wait-Job | Foreach-Object ChildJobs | Where-Object {$_.Error}
|
||||
if($isError)
|
||||
|
||||
$isError = $testJob | Wait-Job | Foreach-Object ChildJobs | Where-Object { $_.Error }
|
||||
if ($isError)
|
||||
{
|
||||
Write-Host "Required '$moduleName' module '$moduleVersion' version is not present"
|
||||
Write-Host "Required ${moduleName} module ${version} version is not present"
|
||||
|
||||
exit 1
|
||||
}
|
||||
$job | Receive-Job | Select-Object Name,Version,Path
|
||||
Remove-Job $job
|
||||
|
||||
$testJob | Receive-Job | Select-Object Name,Version,Path
|
||||
Remove-Job $testJob
|
||||
}
|
||||
}
|
||||
|
||||
# Modules path
|
||||
$installPSModulePath = 'C:\Modules'
|
||||
|
||||
# Validate Azure modules and versions
|
||||
$azurermVersions = "2.1.0", "3.8.0", "4.2.1", "5.1.1", "6.7.0", "6.13.1"
|
||||
Validate-AzureModule -ModuleName AzureRM -ModuleVersions $azurermVersions
|
||||
|
||||
$azureVersions = "2.1.0", "3.8.0", "4.2.1", "5.1.1", "5.3.0"
|
||||
Validate-AzureModule -ModuleName Azure -ModuleVersions $azureVersions
|
||||
|
||||
$azVersions = "1.0.0", "1.6.0", "2.3.2", "2.6.0", "3.1.0", "3.5.0", "3.8.0"
|
||||
Validate-AzureModule -ModuleName Az -ModuleVersions $azVersions
|
||||
|
||||
@@ -1,39 +0,0 @@
|
||||
################################################################################
|
||||
## File: Validate-Boost.ps1
|
||||
## Desc: Validate Boost
|
||||
################################################################################
|
||||
|
||||
Import-Module -Name ImageHelpers
|
||||
|
||||
function Validate-BoostVersion
|
||||
{
|
||||
Param
|
||||
(
|
||||
[String]$BoostRootPath,
|
||||
[String]$BoostRelease
|
||||
)
|
||||
|
||||
$ReleasePath = Join-Path -Path $BoostRootPath -ChildPath $BoostRelease
|
||||
|
||||
if (Test-Path "$ReleasePath\b2.exe")
|
||||
{
|
||||
Write-Host "Boost.Build $BoostRelease is successfully installed"
|
||||
return
|
||||
}
|
||||
|
||||
Write-Host "$BoostRelease not found"
|
||||
exit 1
|
||||
}
|
||||
|
||||
$SoftwareName = 'Boost'
|
||||
$BoostRootDirectory = Join-Path -Path $env:AGENT_TOOLSDIRECTORY -ChildPath $SoftwareName
|
||||
$BoostTools = Get-ToolsByName -SoftwareName $SoftwareName
|
||||
|
||||
foreach ($BoostTool in $BoostTools)
|
||||
{
|
||||
$BoostVersionsToInstall = $BoostTool.Versions | Foreach-Object {"{0}.0" -f $_}
|
||||
foreach($BoostVersion in $BoostVersionsToInstall)
|
||||
{
|
||||
Validate-BoostVersion -BoostRootPath $BoostRootDirectory -BoostRelease $BoostVersion
|
||||
}
|
||||
}
|
||||
@@ -1,50 +0,0 @@
|
||||
################################################################################
|
||||
## File: Validate-Go.ps1
|
||||
## Desc: Validate Go
|
||||
################################################################################
|
||||
|
||||
# Function that gets the version of Go at the specified path
|
||||
function Get-GoVersion
|
||||
{
|
||||
Param
|
||||
(
|
||||
[String]$goVersion
|
||||
)
|
||||
Write-Host "Check if $goVersion is presented in the system"
|
||||
$destinationPath = "$($env:AGENT_TOOLSDIRECTORY)\go"
|
||||
$goDirectory = Get-ChildItem -Path $destinationPath -Filter "$goVersion*" | Select-Object -First 1
|
||||
$goPath = Join-Path $destinationPath "$goDirectory\x64"
|
||||
|
||||
$env:Path = "$goPath\bin;" + $env:Path
|
||||
$version = $(go version)
|
||||
|
||||
$matchVersion = $version -match $goVersion
|
||||
$semanticEquality = $version -match 'go version go(?<version>.*) win.*'
|
||||
|
||||
if($semanticEquality -And $matchVersion)
|
||||
{
|
||||
$goFullVersion = $Matches.version
|
||||
Write-Host "$goFullVersion has been found"
|
||||
}
|
||||
else
|
||||
{
|
||||
Write-Host "Unable to determine Go version at " + $goPath
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
|
||||
# Verify that go.exe is on the path
|
||||
if(Get-Command -Name 'go')
|
||||
{
|
||||
Write-Host "$(go version) is on the path."
|
||||
}
|
||||
else
|
||||
{
|
||||
Write-Host "Go is not on the path."
|
||||
exit 1
|
||||
}
|
||||
|
||||
$goVersionsToInstall = $env:GO_VERSIONS.split(", ", [System.StringSplitOptions]::RemoveEmptyEntries)
|
||||
foreach($go in $goVersionsToInstall) {
|
||||
Get-GoVersion -goVersion $go
|
||||
}
|
||||
19
images/win/scripts/Installers/Validate-GoogleCloudSDK.ps1
Normal file
19
images/win/scripts/Installers/Validate-GoogleCloudSDK.ps1
Normal file
@@ -0,0 +1,19 @@
|
||||
################################################################################
|
||||
## File: Validate-GoogleCloudSDK.ps1
|
||||
## Desc: Validate Install Google Cloud SDK for Windows
|
||||
################################################################################
|
||||
|
||||
# Simple validation gcloud, gsutil, and bq command line tools
|
||||
$validateTools = @("bq", "gcloud", "gsutil")
|
||||
foreach($tool in $validateTools)
|
||||
{
|
||||
if (Get-Command -Name $tool)
|
||||
{
|
||||
Write-Host "$tool on path"
|
||||
}
|
||||
else
|
||||
{
|
||||
Write-Host "$tool is not on path"
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
@@ -17,9 +17,20 @@ Function Validate-JavaVersion {
|
||||
# Take 7 & 8 for versions 1.7 and 1.8
|
||||
$versionNumber = $version.Split(".") | Select-Object -Last 1
|
||||
|
||||
$javaBin = [System.Environment]::GetEnvironmentVariable("JAVA_HOME_${versionNumber}_X64") + "\bin;"
|
||||
$javaPath = [System.Environment]::GetEnvironmentVariable("JAVA_HOME_${versionNumber}_X64")
|
||||
if ([string]::IsNullOrEmpty($javaPath))
|
||||
{
|
||||
Write-Host "Environment variable 'JAVA_HOME_${versionNumber}_X64' is null"
|
||||
exit 1
|
||||
}
|
||||
|
||||
$javaBin = "$javaPath\bin;"
|
||||
$env:Path = $javaBin + $env:Path
|
||||
}
|
||||
else
|
||||
{
|
||||
Validate-JavaVersion -Version $Version
|
||||
}
|
||||
|
||||
$isJavaExists = $($(& $env:comspec "/s /c java -version 2>&1") | Out-String) -match '^(?<vendor>.+) version "(?<version>.+)".*'
|
||||
|
||||
|
||||
@@ -3,10 +3,9 @@
|
||||
## Desc: Validate MongoDB
|
||||
################################################################################
|
||||
|
||||
$command = Get-Command -Name 'mongod'
|
||||
if($command)
|
||||
if (Get-Command -Name 'mongod')
|
||||
{
|
||||
Write-Host "mongod is on path"
|
||||
Write-Host 'mongod is on path'
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -14,25 +13,12 @@ else
|
||||
exit 1
|
||||
}
|
||||
|
||||
$command = Get-Command -Name 'mongo'
|
||||
if($command)
|
||||
if (Get-Command -Name 'mongo')
|
||||
{
|
||||
Write-Host "mongo is on path"
|
||||
Write-Host 'mongo is on path'
|
||||
}
|
||||
else
|
||||
{
|
||||
Write-Host 'mongo not on path'
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Adding description of the software to Markdown
|
||||
$SoftwareName = "MongoDB"
|
||||
$version = $command.Version.ToString();
|
||||
|
||||
$Description = @"
|
||||
_Version:_ $version<br/>
|
||||
_Environment:_
|
||||
* PATH: contains location of mongo.exe and mongod.exe
|
||||
"@
|
||||
|
||||
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description
|
||||
|
||||
@@ -35,3 +35,13 @@ else
|
||||
Write-Host "lerna is not on path"
|
||||
exit 1
|
||||
}
|
||||
|
||||
if (Get-Command -Name 'newman')
|
||||
{
|
||||
Write-Host "Newman $(newman --version) is on the path."
|
||||
}
|
||||
else
|
||||
{
|
||||
Write-Host "Newman is not on the path."
|
||||
exit 1
|
||||
}
|
||||
|
||||
@@ -1,35 +1,18 @@
|
||||
$PGUSER="postgres"
|
||||
function Validate-PostgreSQL {
|
||||
$pgready = Start-Process -FilePath pg_isready -Wait -PassThru
|
||||
$exitCode = $pgready.ExitCode
|
||||
if ($exitCode -eq 0)
|
||||
{
|
||||
Write-Host -Object "PostgreSQL has been successfully installed."
|
||||
}
|
||||
else
|
||||
{
|
||||
Write-Host -Object "PostgreSQL is not ready. Exitcode: $exitCode"
|
||||
exit $exitCode
|
||||
}
|
||||
$pgReadyPath = Join-Path ${env:PGBIN} "pg_isready.exe"
|
||||
$pgReady = Start-Process -FilePath $pgReadyPath -Wait -PassThru
|
||||
$exitCode = $pgReady.ExitCode
|
||||
|
||||
if ($exitCode -eq 0)
|
||||
{
|
||||
Write-Host -Object "PostgreSQL has been successfully installed."
|
||||
}
|
||||
else
|
||||
{
|
||||
Write-Host -Object "PostgreSQL is not ready. Exitcode: $exitCode"
|
||||
exit $exitCode
|
||||
}
|
||||
|
||||
$paths = (Get-CimInstance Win32_Service -Filter "Name LIKE 'postgresql-%'").PathName
|
||||
$pgservice = (Get-CimInstance Win32_Service -Filter "Name LIKE 'postgresql-%'").Name
|
||||
$pgroot = $paths.split('"')[1].replace("\bin\pg_ctl.exe", "")
|
||||
$psqlVersion = pg_config --version | Out-String
|
||||
Validate-PostgreSQL
|
||||
|
||||
# Adding description of the software to Markdown
|
||||
$SoftwareName = "PostgreSQL"
|
||||
$Description = @"
|
||||
_Version:_ $psqlVersion<br/>
|
||||
_Default Path:_ $pgroot<br/>
|
||||
_User:_ $env:PGUSER<br/>
|
||||
_Password:_ $env:PGPASSWORD
|
||||
"@
|
||||
|
||||
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description
|
||||
|
||||
#Stop and disable PostgreSQL service
|
||||
Stop-Service -Name $pgservice
|
||||
Set-Service $pgservice -StartupType Disabled
|
||||
$pgService = Get-Service -Name postgresql*
|
||||
Stop-Service -InputObject $pgService
|
||||
Set-Service -InputObject $pgService -StartupType Disabled
|
||||
|
||||
@@ -9,13 +9,13 @@ function Run-ExecutableTests {
|
||||
[Parameter(Mandatory)] [string[]] $Executables,
|
||||
[Parameter(Mandatory)] [string] $ToolPath
|
||||
)
|
||||
|
||||
foreach ($executable in $Executables) {
|
||||
$versionCommand = $Executables["command"]
|
||||
foreach ($executable in $Executables["tools"]) {
|
||||
$executablePath = Join-Path $ToolPath $executable
|
||||
|
||||
Write-Host "Check $executable..."
|
||||
if (Test-Path $executablePath) {
|
||||
Write-Host "$executable is successfully installed: $(& $executablePath --version)"
|
||||
Write-Host "$executable is successfully installed: $(& $executablePath $versionCommand)"
|
||||
} else {
|
||||
Write-Host "$executablePath is not installed!"
|
||||
exit 1
|
||||
@@ -29,11 +29,12 @@ function Validate-SystemDefaultTool {
|
||||
[Parameter(Mandatory)] [string] $ExpectedVersion
|
||||
)
|
||||
|
||||
$versionCommand = $toolsExecutables[$ToolName]["command"]
|
||||
$binName = $ToolName.ToLower()
|
||||
|
||||
# Check if tool on path
|
||||
if (Get-Command -Name $binName) {
|
||||
$versionOnPath = $(& $binName --version 2>&1) | Select-String -Pattern ".*(\d+\.\d+\.\d+)"
|
||||
$versionOnPath = $(& $binName $versionCommand 2>&1) | Select-String -Pattern ".*(\d+\.\d+[\.\d+]+)"
|
||||
|
||||
# Check if version is correct
|
||||
if ($versionOnPath.matches.Groups[1].Value -notlike $ExpectedVersion) {
|
||||
@@ -52,46 +53,38 @@ $ErrorActionPreference = "Stop"
|
||||
|
||||
# Define executables for cached tools
|
||||
$toolsExecutables = @{
|
||||
Python = @("python.exe", "Scripts\pip.exe")
|
||||
node = @("node.exe", "npm")
|
||||
PyPy = @("python.exe", "Scripts\pip.exe")
|
||||
Python = @{
|
||||
tools = @("python.exe", "Scripts\pip.exe")
|
||||
command = "--version"
|
||||
}
|
||||
node = @{
|
||||
tools = @("node.exe", "npm")
|
||||
command = "--version"
|
||||
}
|
||||
PyPy = @{
|
||||
tools = @("python.exe", "Scripts\pip.exe")
|
||||
command = "--version"
|
||||
}
|
||||
go = @{
|
||||
tools = @("bin\go.exe")
|
||||
command = "version"
|
||||
}
|
||||
}
|
||||
|
||||
# Get toolcache content from toolset
|
||||
$tools = Get-ToolsetContent | Select-Object -ExpandProperty toolcache
|
||||
|
||||
foreach($tool in $tools) {
|
||||
$toolPath = Join-Path $env:AGENT_TOOLSDIRECTORY $tool.name
|
||||
# Get executables for current tool
|
||||
$toolExecs = $toolsExecutables[$tool.name]
|
||||
|
||||
foreach ($version in $tool.versions) {
|
||||
# Add wildcard if missing
|
||||
if (-not $version.Contains('*')) {
|
||||
$version += '.*'
|
||||
$foundVersionArchPath = Get-ToolsetToolFullPath -Name $tool.name -Version $version -Arch $tool.arch
|
||||
|
||||
if ($toolExecs) {
|
||||
Write-Host "Run validation test for $($tool.name)($($tool.arch)) $($foundVersion.name) executables..."
|
||||
Run-ExecutableTests -Executables $toolExecs -ToolPath $foundVersionArchPath
|
||||
}
|
||||
|
||||
# Check if version folder exists
|
||||
$expectedVersionPath = Join-Path $toolPath $version
|
||||
if (-not (Test-Path $expectedVersionPath)) {
|
||||
Write-Host "Expected $($tool.name) $version folder is not found!"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Take latest installed version in case if toolset version contains wildcards
|
||||
$foundVersion = Get-Item $expectedVersionPath `
|
||||
| Sort-Object -Property {[version]$_.name} -Descending `
|
||||
| Select-Object -First 1
|
||||
|
||||
# Check for required architecture folder
|
||||
$foundVersionArchPath = Join-Path $foundVersion $tool.arch
|
||||
if (-not (Test-Path $foundVersionArchPath)) {
|
||||
Write-Host "Expected $($tool.name)($($tool.arch)) $($foundVersion.name) architecture folder is not found!"
|
||||
exit 1
|
||||
}
|
||||
|
||||
Write-Host "Run validation test for $($tool.name)($($tool.arch)) $($foundVersion.name) executables..."
|
||||
Run-ExecutableTests -Executables $toolExecs -ToolPath $foundVersionArchPath
|
||||
}
|
||||
|
||||
if (-not ([string]::IsNullOrEmpty($tool.default))) {
|
||||
|
||||
@@ -65,6 +65,8 @@ $WorkLoads = '--allWorkloads --includeRecommended ' + `
|
||||
'--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 ' + `
|
||||
@@ -74,6 +76,7 @@ $WorkLoads = '--allWorkloads --includeRecommended ' + `
|
||||
'--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 '
|
||||
|
||||
|
||||
@@ -35,7 +35,9 @@ $WorkLoads = '--allWorkloads --includeRecommended ' + `
|
||||
'--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 ' + `
|
||||
@@ -62,18 +64,22 @@ $WorkLoads = '--allWorkloads --includeRecommended ' + `
|
||||
'--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 ' + `
|
||||
|
||||
@@ -3,9 +3,8 @@ function Get-OSName {
|
||||
}
|
||||
|
||||
function Get-OSVersion {
|
||||
$systemInfo = Get-CimInstance -ClassName Win32_OperatingSystem
|
||||
$OSVersion = $systemInfo.Version
|
||||
$OSBuild = $systemInfo.BuildNumber
|
||||
$OSVersion = (Get-CimInstance -ClassName Win32_OperatingSystem).Version
|
||||
$OSBuild = (Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion' UBR).UBR
|
||||
return "OS Version: $OSVersion Build $OSBuild"
|
||||
}
|
||||
|
||||
@@ -127,6 +126,10 @@ function Get-ComposerVersion {
|
||||
return "Composer $composerVersion"
|
||||
}
|
||||
|
||||
function Get-NugetVersion {
|
||||
(nuget help) -match "NuGet Version" -replace "Version: "
|
||||
}
|
||||
|
||||
function Get-AntVersion {
|
||||
($(ant -version) | Out-String) -match "version (?<version>\d+\.\d+\.\d+)" | Out-Null
|
||||
$antVersion = $Matches.Version
|
||||
@@ -145,6 +148,11 @@ function Get-GradleVersion {
|
||||
return "Gradle $gradleVersion"
|
||||
}
|
||||
|
||||
function Get-SbtVersion {
|
||||
$sbtVersion = (sbt -version) -match "sbt script version:" -replace "script version: "
|
||||
return "$sbtVersion"
|
||||
}
|
||||
|
||||
function Get-DotnetSdks {
|
||||
$sdksRawList = dotnet --list-sdks
|
||||
$sdkVersions = ($sdksRawList | Foreach-Object {$_.Split()[0]}) -join ' '
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
function Get-PostgreSQLMarkdown
|
||||
{
|
||||
$name = "PostgreSQL"
|
||||
$pgService = Get-CimInstance Win32_Service -Filter "Name LIKE 'postgresql-%'"
|
||||
$pgPath = $pgService.PathName
|
||||
$pgRoot = $pgPath.split('"')[1].replace("\bin\pg_ctl.exe", "")
|
||||
$env:Path += ";${env:PGBIN}"
|
||||
$pgVersion = (postgres --version).split()[2].Trim()
|
||||
$content = [PSCustomObject]@{
|
||||
Version = $pgVersion
|
||||
UserName = $env:PGUSER
|
||||
Password = $env:PGPASSWORD
|
||||
EnvironmentVariables = "PGBIN=$env:PGBIN; <br> PGDATA=$env:PGDATA; <br> PGROOT=$env:PGROOT"
|
||||
Path = $pgRoot
|
||||
ServiceName = $pgService.Name
|
||||
ServiceStatus = $pgService.State
|
||||
ServiceStartType = $pgService.StartMode
|
||||
} | New-MDTable
|
||||
|
||||
Build-MarkdownElement -Head $name -Content $content
|
||||
}
|
||||
|
||||
function Get-MongoDBMarkdown
|
||||
{
|
||||
$name = "MongoDB"
|
||||
$mongoService = Get-Service -Name $name
|
||||
$mongoVersion = (Get-Command -Name 'mongo').Version.ToString()
|
||||
$content = [PSCustomObject]@{
|
||||
Version = $mongoVersion
|
||||
ServiceName = $name
|
||||
ServiceStatus = $mongoService.Status
|
||||
ServiceStartType = $mongoService.StartType
|
||||
} | New-MDTable
|
||||
Build-MarkdownElement -Head $name -Content $content
|
||||
}
|
||||
|
||||
function Build-DatabasesMarkdown
|
||||
{
|
||||
$markdown = ""
|
||||
$markdown += Get-PostgreSQLMarkdown
|
||||
$markdown += Get-MongoDBMarkdown
|
||||
$markdown
|
||||
}
|
||||
@@ -2,13 +2,14 @@
|
||||
Install-Module MarkdownPS -Force -Scope AllUsers
|
||||
|
||||
Import-Module MarkdownPS
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Helpers.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Common.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Tools.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Android.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Browsers.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.CachedTools.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Common.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Databases.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Helpers.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Tools.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.VisualStudio.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Android.psm1") -DisableNameChecking
|
||||
|
||||
$markdown = ""
|
||||
|
||||
@@ -44,17 +45,19 @@ $markdown += New-MDList -Style Unordered -Lines @(
|
||||
(Get-NPMVersion),
|
||||
(Get-YarnVersion),
|
||||
(Get-PipVersion),
|
||||
(Get-CondaVersion)
|
||||
(Get-CondaVersion),
|
||||
(Get-RubyGemsVersion),
|
||||
(Get-HelmVersion),
|
||||
(Get-ComposerVersion)
|
||||
(Get-ComposerVersion),
|
||||
(Get-NugetVersion)
|
||||
)
|
||||
|
||||
$markdown += New-MDHeader "Project Management" -Level 3
|
||||
$markdown += New-MDList -Style Unordered -Lines @(
|
||||
(Get-AntVersion),
|
||||
(Get-MavenVersion),
|
||||
(Get-GradleVersion)
|
||||
(Get-GradleVersion),
|
||||
(Get-SbtVersion)
|
||||
)
|
||||
|
||||
$markdown += New-MDHeader "Tools" -Level 3
|
||||
@@ -75,6 +78,7 @@ $markdown += New-MDList -Style Unordered -Lines @(
|
||||
(Get-MySQLVersion),
|
||||
(Get-MercurialVersion),
|
||||
(Get-NSISVersion),
|
||||
(Get-NewmanVersion),
|
||||
(Get-OpenSSLVersion),
|
||||
(Get-PackerVersion),
|
||||
(Get-SQLPSVersion),
|
||||
@@ -92,12 +96,14 @@ $markdown += New-MDList -Style Unordered -Lines @(
|
||||
$markdown += New-MDHeader "CLI Tools" -Level 3
|
||||
$markdown += New-MDList -Style Unordered -Lines @(
|
||||
(Get-AzureCLIVersion),
|
||||
(Get-AzCopyVersion),
|
||||
(Get-AzureDevopsExtVersion),
|
||||
(Get-AWSCLIVersion),
|
||||
(Get-AWSSAMVersion),
|
||||
(Get-AlibabaCLIVersion),
|
||||
(Get-CloudFoundryVersion),
|
||||
(Get-HubVersion)
|
||||
(Get-HubVersion),
|
||||
(Get-GoogleCloudSDKVersion)
|
||||
)
|
||||
|
||||
$markdown += New-MDHeader "Browsers and webdrivers" -Level 3
|
||||
@@ -127,6 +133,10 @@ $markdown += New-MDHeader "Cached Tools" -Level 3
|
||||
$markdown += (Build-CachedToolsMarkdown)
|
||||
$markdown += New-MDNewLine
|
||||
|
||||
$markdown += New-MDHeader "Databases" -Level 3
|
||||
$markdown += Build-DatabasesMarkdown
|
||||
$markdown += New-MDNewLine
|
||||
|
||||
$vs = Get-VisualStudioVersion
|
||||
$markdown += New-MDHeader "$($vs.Name)" -Level 3
|
||||
$markdown += $vs | New-MDTable
|
||||
@@ -134,7 +144,7 @@ $markdown += New-MDNewLine
|
||||
|
||||
$markdown += New-MDHeader "Workloads, components and extensions:" -Level 4
|
||||
$markdown += New-MDNewLine
|
||||
$markdown += ((Get-VisualStudioComponents) + (Get-VisualStudioExtenions)) | New-MDTable
|
||||
$markdown += ((Get-VisualStudioComponents) + (Get-VisualStudioExtensions)) | New-MDTable
|
||||
$markdown += New-MDNewLine
|
||||
|
||||
$markdown += New-MDHeader ".NET Core SDK" -Level 3
|
||||
@@ -147,13 +157,15 @@ $markdown += New-MDHeader ".NET Core Runtime" -Level 3
|
||||
Get-DotnetRuntimes | Foreach-Object {
|
||||
$path = $_.Path
|
||||
$versions = $_.Versions
|
||||
$markdown += "``Location $path``"
|
||||
$markdown += "``Location: $path``"
|
||||
$markdown += New-MDNewLine
|
||||
$markdown += New-MDList -Lines $versions -Style Unordered
|
||||
}
|
||||
|
||||
$markdown += New-MDHeader ".NET Framework" -Level 3
|
||||
$frameworks = Get-DotnetFrameworkTools
|
||||
$markdown += "``Type: Developer Pack``"
|
||||
$markdown += New-MDNewLine
|
||||
$markdown += "``Location $($frameworks.Path)``"
|
||||
$markdown += New-MDNewLine
|
||||
$markdown += New-MDList -Lines $frameworks.Versions -Style Unordered
|
||||
|
||||
@@ -141,6 +141,10 @@ function Get-AzureCLIVersion {
|
||||
return "Azure CLI $azureCLIVersion"
|
||||
}
|
||||
|
||||
function Get-AzCopyVersion {
|
||||
return ($(azcopy --version) -replace "version ")
|
||||
}
|
||||
|
||||
function Get-AzureDevopsExtVersion {
|
||||
$azureDevExtVersion = (az version | ConvertFrom-Json | Foreach{ $_."extensions" })."azure-devops"
|
||||
return "Azure DevOps CLI extension $azureDevExtVersion"
|
||||
@@ -199,3 +203,11 @@ function Get-StackVersion {
|
||||
$stackVersion = $Matches.Version
|
||||
return "Stack $stackVersion"
|
||||
}
|
||||
|
||||
function Get-GoogleCloudSDKVersion {
|
||||
(gcloud --version) -match "Google Cloud SDK"
|
||||
}
|
||||
|
||||
function Get-NewmanVersion {
|
||||
return "Newman $(newman --version)"
|
||||
}
|
||||
@@ -32,7 +32,7 @@ function Get-WDKVersion {
|
||||
($installedApplications | Where-Object { $_.DisplayName -eq 'Windows Driver Kit' } | Select-Object -First 1).DisplayVersion
|
||||
}
|
||||
|
||||
function Get-VisualStudioExtenions {
|
||||
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
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
{
|
||||
"@actions/toolcache-ruby-windows-x64": [
|
||||
"2.4", "2.5", "2.6", "2.7"
|
||||
],
|
||||
"@actions/toolcache-boost-windows-msvc-14.1-x32-x64": [
|
||||
"1.69", "1.72"
|
||||
]
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
{
|
||||
"@actions/toolcache-ruby-windows-x64": [
|
||||
"2.4", "2.5", "2.6", "2.7"
|
||||
],
|
||||
"@actions/toolcache-boost-windows-msvc-14.1-x32-x64": [
|
||||
"1.69"
|
||||
],
|
||||
"@actions/toolcache-boost-windows-msvc-14.2-x32-x64": [
|
||||
"1.72"
|
||||
]
|
||||
}
|
||||
@@ -1,52 +0,0 @@
|
||||
{
|
||||
"toolcache": [
|
||||
{
|
||||
"name": "Python",
|
||||
"url" : "https://raw.githubusercontent.com/actions/python-versions/master/versions-manifest.json",
|
||||
"arch": "x64",
|
||||
"platform" : "win32",
|
||||
"versions": [
|
||||
"2.7.*",
|
||||
"3.5.*",
|
||||
"3.6.*",
|
||||
"3.7.*",
|
||||
"3.8.*"
|
||||
],
|
||||
"default": "3.7.*"
|
||||
},
|
||||
{
|
||||
"name": "Python",
|
||||
"url" : "https://raw.githubusercontent.com/actions/python-versions/master/versions-manifest.json",
|
||||
"arch": "x86",
|
||||
"platform" : "win32",
|
||||
"versions": [
|
||||
"2.7.*",
|
||||
"3.5.*",
|
||||
"3.6.*",
|
||||
"3.7.*",
|
||||
"3.8.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "PyPy",
|
||||
"arch": "x86",
|
||||
"platform" : "win32",
|
||||
"versions": [
|
||||
"2.7",
|
||||
"3.6"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "node",
|
||||
"url" : "https://raw.githubusercontent.com/actions/node-versions/master/versions-manifest.json",
|
||||
"arch": "x64",
|
||||
"platform" : "win32",
|
||||
"versions": [
|
||||
"8.*",
|
||||
"10.*",
|
||||
"12.*",
|
||||
"14.*"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,52 +0,0 @@
|
||||
{
|
||||
"toolcache": [
|
||||
{
|
||||
"name": "Python",
|
||||
"url" : "https://raw.githubusercontent.com/actions/python-versions/master/versions-manifest.json",
|
||||
"arch": "x64",
|
||||
"platform" : "win32",
|
||||
"versions": [
|
||||
"2.7.*",
|
||||
"3.5.*",
|
||||
"3.6.*",
|
||||
"3.7.*",
|
||||
"3.8.*"
|
||||
],
|
||||
"default": "3.7.*"
|
||||
},
|
||||
{
|
||||
"name": "Python",
|
||||
"url" : "https://raw.githubusercontent.com/actions/python-versions/master/versions-manifest.json",
|
||||
"arch": "x86",
|
||||
"platform" : "win32",
|
||||
"versions": [
|
||||
"2.7.*",
|
||||
"3.5.*",
|
||||
"3.6.*",
|
||||
"3.7.*",
|
||||
"3.8.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "PyPy",
|
||||
"arch": "x86",
|
||||
"platform" : "win32",
|
||||
"versions": [
|
||||
"2.7",
|
||||
"3.6"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "node",
|
||||
"url" : "https://raw.githubusercontent.com/actions/node-versions/master/versions-manifest.json",
|
||||
"arch": "x64",
|
||||
"platform" : "win32",
|
||||
"versions": [
|
||||
"8.*",
|
||||
"10.*",
|
||||
"12.*",
|
||||
"14.*"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user