mirror of
https://github.com/actions/runner-images.git
synced 2025-12-10 11:07:02 +00:00
Cleanup ubuntu1804 image references (#7388)
This commit is contained in:
committed by
GitHub
parent
425daf97b4
commit
e72606ffb6
1
.github/ISSUE_TEMPLATE/announcement.yml
vendored
1
.github/ISSUE_TEMPLATE/announcement.yml
vendored
@@ -36,7 +36,6 @@ body:
|
||||
attributes:
|
||||
label: Runner images affected
|
||||
options:
|
||||
- label: Ubuntu 18.04
|
||||
- label: Ubuntu 20.04
|
||||
- label: Ubuntu 22.04
|
||||
- label: macOS 11
|
||||
|
||||
1
.github/ISSUE_TEMPLATE/bug-report.yml
vendored
1
.github/ISSUE_TEMPLATE/bug-report.yml
vendored
@@ -19,7 +19,6 @@ body:
|
||||
attributes:
|
||||
label: Runner images affected
|
||||
options:
|
||||
- label: Ubuntu 18.04
|
||||
- label: Ubuntu 20.04
|
||||
- label: Ubuntu 22.04
|
||||
- label: macOS 11
|
||||
|
||||
1
.github/ISSUE_TEMPLATE/tool-request.yml
vendored
1
.github/ISSUE_TEMPLATE/tool-request.yml
vendored
@@ -57,7 +57,6 @@ body:
|
||||
attributes:
|
||||
label: Runner images where you need the tool
|
||||
options:
|
||||
- label: Ubuntu 18.04
|
||||
- label: Ubuntu 20.04
|
||||
- label: Ubuntu 22.04
|
||||
- label: macOS 11
|
||||
|
||||
@@ -49,7 +49,7 @@ Add `Invoke-PesterTests -TestFile <testFileName> [-TestName <describeName>]` at
|
||||
Use existing scripts such as [github-cli.sh](images/linux/scripts/installers/github-cli.sh) as a starting point.
|
||||
- Use [helpers](images/linux/scripts/helpers/install.sh) to simplify installation process.
|
||||
- Validation part should `exit 1` if any issue with installation.
|
||||
- Add changes to the software report generator `images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1`. The software report generator is used to generate an image's README file, e.g. [Ubuntu1804-Readme.md](images/linux/Ubuntu1804-README.md) and it uses [MarkdownPS](https://github.com/Sarafian/MarkdownPS).
|
||||
- Add changes to the software report generator `images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1`. The software report generator is used to generate an image's README file, e.g. [Ubuntu2004-Readme.md](images/linux/Ubuntu2004-README.md) and it uses [MarkdownPS](https://github.com/Sarafian/MarkdownPS).
|
||||
|
||||
### macOS
|
||||
macOS source lives in this repository and available for everyone. However, macOS image-generation CI doesn't support external contributions yet so we are not able to accept pull-requests for now.
|
||||
|
||||
@@ -23,7 +23,6 @@ To build a VM machine from this repo's source, see the [instructions](docs/creat
|
||||
| --------------------|---------------------|--------------------|---------------------|
|
||||
| Ubuntu 22.04 | `ubuntu-latest` or `ubuntu-22.04` | [ubuntu-22.04] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=ubuntu22&redirect=1)
|
||||
| Ubuntu 20.04 | `ubuntu-20.04` | [ubuntu-20.04] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=ubuntu20&redirect=1)
|
||||
| Ubuntu 18.04 <sup>deprecated</sup> | `ubuntu-18.04` | [ubuntu-18.04] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=ubuntu18&redirect=1)
|
||||
| macOS 12 | `macos-latest` or `macos-12`| [macOS-12] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=macos-12&redirect=1)
|
||||
| macOS 11 | `macos-11`| [macOS-11] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=macos-11&redirect=1)
|
||||
| macOS 10.15 <sup>deprecated</sup> | `macos-10.15` | [macOS-10.15] | [](https://actionvirtualenvironmentsstatus.azurewebsites.net/api/status?imageName=macos-10.15&redirect=1)
|
||||
@@ -37,7 +36,6 @@ To build a VM machine from this repo's source, see the [instructions](docs/creat
|
||||
|
||||
[ubuntu-22.04]: https://github.com/actions/runner-images/blob/main/images/linux/Ubuntu2204-Readme.md
|
||||
[ubuntu-20.04]: https://github.com/actions/runner-images/blob/main/images/linux/Ubuntu2004-Readme.md
|
||||
[ubuntu-18.04]: https://github.com/actions/runner-images/blob/main/images/linux/Ubuntu1804-Readme.md
|
||||
[windows-2022]: https://github.com/actions/runner-images/blob/main/images/win/Windows2022-Readme.md
|
||||
[windows-2019]: https://github.com/actions/runner-images/blob/main/images/win/Windows2019-Readme.md
|
||||
[macOS-11]: https://github.com/actions/runner-images/blob/main/images/macos/macos-11-Readme.md
|
||||
@@ -118,7 +116,7 @@ We use third-party package managers to install software during the image generat
|
||||
|
||||
| Operating system | Package manager | Third-party repos and packages |
|
||||
| :--- | :---: | ---: |
|
||||
| Ubuntu | [APT](https://wiki.debian.org/Apt) | [Eclipse-Timurin (Adoptium)](https://packages.adoptium.net/artifactory/deb) </br> [Erlang](https://packages.erlang-solutions.com/ubuntu) </br>[Firefox](https://launchpad.net/~mozillateam/+archive/ubuntu/ppa) </br> [gcc, gfortran](https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test) </br> [git](https://launchpad.net/~git-core/+archive/ubuntu/ppa) </br> [HHvm](https://dl.hhvm.com/ubuntu) </br> [PHP](https://launchpad.net/~ondrej/+archive/ubuntu/php) (Ubuntu 18 & 20 only) </br> [Mono](https://download.mono-project.com/repo/ubuntu) </br> [PostgreSQL](https://apt.postgresql.org/pub/repos/apt) </br> [R](https://cloud.r-project.org/bin/linux/ubuntu) |
|
||||
| Ubuntu | [APT](https://wiki.debian.org/Apt) | [Eclipse-Timurin (Adoptium)](https://packages.adoptium.net/artifactory/deb) </br> [Erlang](https://packages.erlang-solutions.com/ubuntu) </br>[Firefox](https://launchpad.net/~mozillateam/+archive/ubuntu/ppa) </br> [gcc, gfortran](https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test) </br> [git](https://launchpad.net/~git-core/+archive/ubuntu/ppa) </br> [HHvm](https://dl.hhvm.com/ubuntu) </br> [PHP](https://launchpad.net/~ondrej/+archive/ubuntu/php) (Ubuntu 20 only) </br> [Mono](https://download.mono-project.com/repo/ubuntu) </br> [PostgreSQL](https://apt.postgresql.org/pub/repos/apt) </br> [R](https://cloud.r-project.org/bin/linux/ubuntu) |
|
||||
| | [pipx](https://pypa.github.io/pipx) | ansible-core </br>yamllint |
|
||||
| Windows | [Chocolatey](https://chocolatey.org) | No third-party repos installed |
|
||||
| macOS | [Homebrew](https://homebrew.sh) | [aws-cli v2](https://github.com/aws/homebrew-tap) </br> [azure/bicep](https://github.com/Azure/homebrew-bicep) </br> [graalvm-ce-java11](https://github.com/graalvm/homebrew-tap) </br> [mongodb/brew](https://github.com/mongodb/homebrew-brew) |
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# GitHub Actions Runner Images
|
||||
The runner-images project uses [Packer](https://www.packer.io/) to generate disk images for the following platforms: Windows 2019/2022, Ubuntu 18.04/20.04/22.04.
|
||||
The runner-images project uses [Packer](https://www.packer.io/) to generate disk images for the following platforms: Windows 2019/2022, Ubuntu 20.04/22.04.
|
||||
Each image is configured through a JSON template that Packer understands and which specifies where to build the image (Azure in this case), and what scripts to run to install software and prepare the disk.
|
||||
The Packer process initializes a connection to Azure subscription via Azure CLI, and automatically creates the temporary Azure resources required to build the source VM(temporary resource group, network interfaces, and VM from the "clean" image specified in the template).
|
||||
If the VM deployment succeeds, the build agent connects to the VM and starts to execute installation steps from the JSON template.
|
||||
@@ -60,13 +60,13 @@ Set-Location C:\runner-images
|
||||
|
||||
Import-Module .\helpers\GenerateResourcesAndImage.ps1
|
||||
|
||||
GenerateResourcesAndImage -SubscriptionId {YourSubscriptionId} -ResourceGroupName "myTestResourceGroup" -ImageGenerationRepositoryRoot "$pwd" -ImageType Ubuntu1804 -AzureLocation "East US"
|
||||
GenerateResourcesAndImage -SubscriptionId {YourSubscriptionId} -ResourceGroupName "myTestResourceGroup" -ImageGenerationRepositoryRoot "$pwd" -ImageType Ubuntu2004 -AzureLocation "East US"
|
||||
```
|
||||
Where:
|
||||
- `SubscriptionId` - The Azure subscription Id where resources will be created.
|
||||
- `ResourceGroupName` - The Azure resource group name where the Azure resources will be created.
|
||||
- `ImageGenerationRepositoryRoot` - The root path of the image generation repository source.
|
||||
- `ImageType` - The type of the image being generated. Valid options are: "Windows2019", "Windows2022", "Ubuntu1804", "Ubuntu2004", "Ubuntu2204".
|
||||
- `ImageType` - The type of the image being generated. Valid options are: "Windows2019", "Windows2022", "Ubuntu2004", "Ubuntu2204".
|
||||
- `AzureLocation` - The location of the resources being created in Azure. For example "East US".
|
||||
|
||||
The function automatically creates all required Azure resources and kicks off packer image generation for the selected image type.
|
||||
@@ -74,13 +74,13 @@ The function automatically creates all required Azure resources and kicks off pa
|
||||
For optional authentication via service principal make sure to provide the following params — `AzureClientId`, `AzureClientSecret`, `AzureTenantId`, so the whole command will be:
|
||||
|
||||
```
|
||||
GenerateResourcesAndImage -SubscriptionId {YourSubscriptionId} -ResourceGroupName "myTestResourceGroup" -ImageGenerationRepositoryRoot "$pwd" -ImageType Ubuntu1804 -AzureLocation "East US" -AzureClientId {AADApplicationID} -AzureClientSecret {AADApplicationSecret} -AzureTenantId {AADTenantID}
|
||||
GenerateResourcesAndImage -SubscriptionId {YourSubscriptionId} -ResourceGroupName "myTestResourceGroup" -ImageGenerationRepositoryRoot "$pwd" -ImageType Ubuntu2004 -AzureLocation "East US" -AzureClientId {AADApplicationID} -AzureClientSecret {AADApplicationSecret} -AzureTenantId {AADTenantID}
|
||||
```
|
||||
|
||||
As extra options, you can add more params for permit to add Azure Tags on resources and enable https for Storage Account. It could be helpful on some tenants with hardenning policy. Params are — `EnableHttpsTrafficOnly` (Boolean) and `tags` (HashTable), so the whole command will be:
|
||||
|
||||
```
|
||||
GenerateResourcesAndImage -SubscriptionId {YourSubscriptionId} -ResourceGroupName "myTestResourceGroup" -ImageGenerationRepositoryRoot "$pwd" -ImageType Ubuntu1804 -AzureLocation "East US" -EnableHttpsTrafficOnly $true -tags @{dept="devops";env="prod"}
|
||||
GenerateResourcesAndImage -SubscriptionId {YourSubscriptionId} -ResourceGroupName "myTestResourceGroup" -ImageGenerationRepositoryRoot "$pwd" -ImageType Ubuntu2004 -AzureLocation "East US" -EnableHttpsTrafficOnly $true -tags @{dept="devops";env="prod"}
|
||||
```
|
||||
|
||||
*Please, check synopsis of `GenerateResourcesAndImage` for details about non-mandatory parameters.*
|
||||
|
||||
@@ -3,9 +3,8 @@ $ErrorActionPreference = 'Stop'
|
||||
enum ImageType {
|
||||
Windows2019 = 1
|
||||
Windows2022 = 2
|
||||
Ubuntu1804 = 3
|
||||
Ubuntu2004 = 4
|
||||
Ubuntu2204 = 5
|
||||
Ubuntu2004 = 3
|
||||
Ubuntu2204 = 4
|
||||
}
|
||||
|
||||
Function Get-PackerTemplatePath {
|
||||
@@ -23,9 +22,6 @@ Function Get-PackerTemplatePath {
|
||||
([ImageType]::Windows2022) {
|
||||
$relativeTemplatePath = Join-Path "win" "windows2022.json"
|
||||
}
|
||||
([ImageType]::Ubuntu1804) {
|
||||
$relativeTemplatePath = Join-Path "linux" "ubuntu1804.json"
|
||||
}
|
||||
([ImageType]::Ubuntu2004) {
|
||||
$relativeTemplatePath = Join-Path "linux" "ubuntu2004.json"
|
||||
}
|
||||
@@ -67,7 +63,7 @@ Function GenerateResourcesAndImage {
|
||||
.PARAMETER ImageGenerationRepositoryRoot
|
||||
The root path of the image generation repository source.
|
||||
.PARAMETER ImageType
|
||||
The type of the image being generated. Valid options are: {"Windows2019", "Windows2022", "Ubuntu1804", "Ubuntu2004", "Ubuntu2204"}.
|
||||
The type of the image being generated. Valid options are: {"Windows2019", "Windows2022", "Ubuntu2004", "Ubuntu2204"}.
|
||||
.PARAMETER AzureLocation
|
||||
The location of the resources being created in Azure. For example "East US".
|
||||
.PARAMETER Force
|
||||
@@ -87,7 +83,7 @@ Function GenerateResourcesAndImage {
|
||||
.PARAMETER OnError
|
||||
Specify how packer handles an error during image creation.
|
||||
.EXAMPLE
|
||||
GenerateResourcesAndImage -SubscriptionId {YourSubscriptionId} -ResourceGroupName "shsamytest1" -ImageGenerationRepositoryRoot "C:\runner-images" -ImageType Ubuntu1804 -AzureLocation "East US"
|
||||
GenerateResourcesAndImage -SubscriptionId {YourSubscriptionId} -ResourceGroupName "shsamytest1" -ImageGenerationRepositoryRoot "C:\runner-images" -ImageType Ubuntu2004 -AzureLocation "East US"
|
||||
#>
|
||||
param (
|
||||
[Parameter(Mandatory = $True)]
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
schedules:
|
||||
- cron: "0 0 * * *"
|
||||
displayName: Daily
|
||||
branches:
|
||||
include:
|
||||
- main
|
||||
always: true
|
||||
|
||||
trigger: none
|
||||
pr:
|
||||
autoCancel: true
|
||||
branches:
|
||||
include:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
- template: image-generation.yml
|
||||
parameters:
|
||||
image_type: ubuntu1804
|
||||
image_readme_name: Ubuntu1804-Readme.md
|
||||
@@ -1,397 +0,0 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [[all OSs] Default Nodejs version will be set to 18 on February, 13](https://github.com/actions/runner-images/issues/7002) |
|
||||
| [The Ubuntu 18.04 Actions runner image will begin deprecation on 2022/08/08 and will be fully unsupported by 2023/04/01](https://github.com/actions/runner-images/issues/6002) |
|
||||
***
|
||||
# Ubuntu 18.04
|
||||
- OS Version: 18.04.6 LTS
|
||||
- Kernel Version: 5.4.0-1103-azure
|
||||
- Image Version: 20230217.2
|
||||
|
||||
## Installed Software
|
||||
|
||||
### Language and Runtime
|
||||
- Bash 4.4.20(1)-release
|
||||
- Clang: 9.0.0
|
||||
- Clang-format: 9.0.0
|
||||
- Clang-tidy: 9.0.0
|
||||
- Dash 0.5.8-2.10
|
||||
- Erlang 25.0.4 (Eshell 13.0.4)
|
||||
- Erlang rebar3 3.20.0
|
||||
- GNU C++: 7.5.0, 9.4.0, 10.3.0
|
||||
- GNU Fortran: 7.5.0, 9.4.0, 10.3.0
|
||||
- Julia 1.8.5
|
||||
- Kotlin 1.8.10-release-430
|
||||
- Mono 6.12.0.182
|
||||
- MSBuild 16.10.1.31701 (Mono 6.12.0.182)
|
||||
- Node.js 16.19.1
|
||||
- Perl 5.26.1
|
||||
- Python 2.7.17
|
||||
- Python3 3.6.9
|
||||
- Ruby 2.5.1p57
|
||||
- Swift 5.7.3
|
||||
|
||||
### Package Management
|
||||
- cpan 1.64
|
||||
- Helm 3.11.1
|
||||
- Homebrew 4.0.1
|
||||
- Miniconda 23.1.0
|
||||
- Npm 8.19.3
|
||||
- NuGet 6.3.1.1
|
||||
- Pip 9.0.1
|
||||
- Pip3 9.0.1
|
||||
- Pipx 1.0.0
|
||||
- RubyGems 2.7.6
|
||||
- Vcpkg (build from commit 31a159c1c)
|
||||
- Yarn 1.22.19
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
| ----------------------- | ---------------------- |
|
||||
| CONDA | /usr/share/miniconda |
|
||||
| VCPKG_INSTALLATION_ROOT | /usr/local/share/vcpkg |
|
||||
|
||||
#### Homebrew note
|
||||
```
|
||||
Location: /home/linuxbrew
|
||||
Note: Homebrew is pre-installed on image but not added to PATH.
|
||||
run the eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" command
|
||||
to accomplish this.
|
||||
```
|
||||
|
||||
### Project Management
|
||||
- Ant 1.10.5
|
||||
- Gradle 8.0.1
|
||||
- Maven 3.8.7
|
||||
- Sbt 1.8.2
|
||||
|
||||
### Tools
|
||||
- Ansible 2.11.12
|
||||
- apt-fast 1.9.12
|
||||
- AzCopy 10.17.0 - available by `azcopy` and `azcopy10` aliases
|
||||
- Bazel 6.0.0
|
||||
- Bazelisk 1.13.2
|
||||
- Bicep 0.14.46
|
||||
- Buildah 1.22.3
|
||||
- CMake 3.25.2
|
||||
- CodeQL Action Bundles 2.12.1 2.12.2
|
||||
- Docker Amazon ECR Credential Helper 0.6.0
|
||||
- Docker Compose v1 1.29.2
|
||||
- Docker Compose v2 2.16.0+azure-2
|
||||
- Docker-Buildx 0.10.3
|
||||
- Docker-Moby Client 20.10.23+azure-2
|
||||
- Docker-Moby Server 20.10.22+azure-1
|
||||
- Git 2.39.2
|
||||
- Git LFS 3.2.0
|
||||
- Git-ftp 1.3.1
|
||||
- Haveged 1.9.1
|
||||
- Heroku 7.68.1
|
||||
- HHVM (HipHop VM) 4.164.0
|
||||
- jq 1.5
|
||||
- Kind 0.17.0
|
||||
- Kubectl 1.26.1
|
||||
- Kustomize 5.0.0
|
||||
- Leiningen 2.10.0
|
||||
- MediaInfo 17.12
|
||||
- Mercurial 4.5.3
|
||||
- Minikube 1.29.0
|
||||
- n 9.0.1
|
||||
- Newman 5.3.2
|
||||
- nvm 0.39.3
|
||||
- OpenSSL 1.1.1-1ubuntu2.1~18.04.21
|
||||
- Packer 1.8.6
|
||||
- Parcel 2.8.3
|
||||
- PhantomJS 2.1.1
|
||||
- Podman 3.4.2
|
||||
- Pulumi 3.55.0
|
||||
- R 4.2.2
|
||||
- Skopeo 1.5.0
|
||||
- Sphinx Open Source Search Server 2.2.11
|
||||
- SVN 1.9.7
|
||||
- Terraform 1.3.9
|
||||
- yamllint 1.28.0
|
||||
- yq 4.30.8
|
||||
- zstd 1.5.4
|
||||
|
||||
### CLI Tools
|
||||
- Alibaba Cloud CLI 3.0.149
|
||||
- AWS CLI 2.10.1
|
||||
- AWS CLI Session Manager Plugin 1.2.398.0
|
||||
- AWS SAM CLI 1.73.0
|
||||
- Azure CLI 2.45.0
|
||||
- Azure CLI (azure-devops) 0.26.0
|
||||
- GitHub CLI 2.23.0
|
||||
- Google Cloud SDK 418.0.0
|
||||
- Hub CLI 2.14.2
|
||||
- Netlify CLI 12.13.1
|
||||
- OpenShift CLI 4.12.3
|
||||
- ORAS CLI 0.16.0
|
||||
- Vercel CLI 28.16.2
|
||||
|
||||
### Java
|
||||
| Version | Vendor | Environment Variable |
|
||||
| ------------------- | --------------- | -------------------- |
|
||||
| 8.0.362+9 (default) | Eclipse Temurin | JAVA_HOME_8_X64 |
|
||||
| 11.0.18+10 | Eclipse Temurin | JAVA_HOME_11_X64 |
|
||||
| 12.0.2+10 | Adopt OpenJDK | JAVA_HOME_12_X64 |
|
||||
| 17.0.6+10 | Eclipse Temurin | JAVA_HOME_17_X64 |
|
||||
|
||||
### PHP Tools
|
||||
- PHP: 7.2.34, 7.3.33, 7.4.33, 8.0.28, 8.1.16, 8.2.3
|
||||
- Composer 2.5.4
|
||||
- PHPUnit 8.5.32
|
||||
```
|
||||
Both Xdebug and PCOV extensions are installed, but only Xdebug is enabled.
|
||||
```
|
||||
|
||||
### Haskell Tools
|
||||
- Cabal 3.6.2.0
|
||||
- GHC 9.4.4
|
||||
- GHCup 0.1.19.0
|
||||
- Stack 2.9.3
|
||||
|
||||
### Rust Tools
|
||||
- Cargo 1.67.1
|
||||
- Rust 1.67.1
|
||||
- Rustdoc 1.67.1
|
||||
- Rustup 1.25.2
|
||||
|
||||
#### Packages
|
||||
- Bindgen 0.64.0
|
||||
- Cargo audit 0.17.4
|
||||
- Cargo clippy 0.1.67
|
||||
- Cargo outdated 0.11.2
|
||||
- Cbindgen 0.24.3
|
||||
- Rustfmt 1.5.1
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 110.0.5481.100
|
||||
- ChromeDriver 110.0.5481.77
|
||||
- Chromium 110.0.5481.0
|
||||
- Microsoft Edge 110.0.1587.50
|
||||
- Microsoft Edge WebDriver 110.0.1587.50
|
||||
- Selenium server 4.8.0
|
||||
- Mozilla Firefox 110.0
|
||||
- Geckodriver 0.32.2
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
| ----------------- | ----------------------------------- |
|
||||
| CHROMEWEBDRIVER | /usr/local/share/chrome_driver |
|
||||
| EDGEWEBDRIVER | /usr/local/share/edge_driver |
|
||||
| GECKOWEBDRIVER | /usr/local/share/gecko_driver |
|
||||
| SELENIUM_JAR_PATH | /usr/share/java/selenium-server.jar |
|
||||
|
||||
### .NET Tools
|
||||
- .NET Core SDK: 3.1.120, 3.1.202, 3.1.302, 3.1.426, 6.0.406
|
||||
- nbgv 3.5.119+5d25f54fec
|
||||
|
||||
### Databases
|
||||
- MongoDB 5.0.14
|
||||
- sqlite3 3.22.0
|
||||
|
||||
#### PostgreSQL
|
||||
- PostgreSQL 14.7
|
||||
```
|
||||
User: postgres
|
||||
PostgreSQL service is disabled by default.
|
||||
Use the following command as a part of your job to start the service: 'sudo systemctl start postgresql.service'
|
||||
```
|
||||
|
||||
#### MySQL
|
||||
- MySQL 5.7.41
|
||||
```
|
||||
User: root
|
||||
Password: root
|
||||
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'
|
||||
```
|
||||
|
||||
#### MS SQL
|
||||
- sqlcmd 17.10.0001.1
|
||||
- SqlPackage 16.1.8089.0
|
||||
|
||||
### Cached Tools
|
||||
|
||||
#### Go
|
||||
- 1.16.15
|
||||
- 1.17.13
|
||||
- 1.18.10
|
||||
|
||||
#### Node.js
|
||||
- 14.21.3
|
||||
- 16.19.1
|
||||
- 18.14.1
|
||||
|
||||
#### Python
|
||||
- 2.7.18
|
||||
- 3.6.15
|
||||
- 3.7.15
|
||||
- 3.8.16
|
||||
- 3.9.16
|
||||
- 3.10.10
|
||||
- 3.11.2
|
||||
|
||||
#### PyPy
|
||||
- 2.7.18 [PyPy 7.3.11]
|
||||
- 3.6.12 [PyPy 7.3.3]
|
||||
- 3.9.16 [PyPy 7.3.11]
|
||||
|
||||
#### Ruby
|
||||
- 2.4.10
|
||||
- 2.5.9
|
||||
- 2.6.10
|
||||
- 2.7.7
|
||||
- 3.0.5
|
||||
- 3.1.3
|
||||
|
||||
### PowerShell Tools
|
||||
- PowerShell 7.2.9
|
||||
|
||||
#### PowerShell Modules
|
||||
- Az: 9.3.0
|
||||
- Az (Cached): 3.1.0.zip, 4.4.0.zip, 5.9.0.zip, 6.6.0.zip, 7.5.0.zip
|
||||
- MarkdownPS: 1.9
|
||||
- Microsoft.Graph: 1.22.0
|
||||
- Pester: 5.4.0
|
||||
|
||||
### Web Servers
|
||||
| Name | Version | ConfigFile | ServiceStatus | ListenPort |
|
||||
| ------- | ------- | ------------------------- | ------------- | ---------- |
|
||||
| apache2 | 2.4.29 | /etc/apache2/apache2.conf | inactive | 80 |
|
||||
| nginx | 1.14.0 | /etc/nginx/nginx.conf | inactive | 80 |
|
||||
|
||||
### Android
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android Command Line Tools | 8.0 |
|
||||
| Android Emulator | 32.1.11 |
|
||||
| Android SDK Build-tools | 33.0.0 33.0.1 33.0.2<br>32.0.0<br>31.0.0<br>30.0.0 30.0.1 30.0.2 30.0.3<br>29.0.0 29.0.1 29.0.2 29.0.3<br>28.0.0 28.0.1 28.0.2 28.0.3<br>27.0.0 27.0.1 27.0.2 27.0.3<br>26.0.0 26.0.1 26.0.2 26.0.3<br>25.0.0 25.0.1 25.0.2 25.0.3<br>24.0.0 24.0.1 24.0.2 24.0.3<br>23.0.1 23.0.2 23.0.3 |
|
||||
| Android SDK Platform-Tools | 34.0.0 |
|
||||
| Android SDK Platforms | android-33-ext4 (rev 1)<br>android-33 (rev 2)<br>android-32 (rev 1)<br>android-31 (rev 1)<br>android-30 (rev 3)<br>android-29 (rev 5)<br>android-28 (rev 6)<br>android-27 (rev 3)<br>android-26 (rev 2)<br>android-25 (rev 3)<br>android-24 (rev 2)<br>android-23 (rev 3) |
|
||||
| Android SDK Tools | 26.1.1 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| CMake | 3.10.2<br>3.18.1<br>3.22.1 |
|
||||
| Google APIs | addon-google_apis-google-21<br>addon-google_apis-google-22<br>addon-google_apis-google-23<br>addon-google_apis-google-24 |
|
||||
| Google Play services | 49 |
|
||||
| Google Repository | 58 |
|
||||
| NDK | 23.2.8568313<br>24.0.8215888<br>25.2.9519653 (default) |
|
||||
| SDK Patch Applier v4 | 1 |
|
||||
|
||||
#### Environment variables
|
||||
| Name | Value |
|
||||
| ----------------------- | ------------------------------------------- |
|
||||
| ANDROID_HOME | /usr/local/lib/android/sdk |
|
||||
| ANDROID_NDK | /usr/local/lib/android/sdk/ndk/25.2.9519653 |
|
||||
| ANDROID_NDK_HOME | /usr/local/lib/android/sdk/ndk/25.2.9519653 |
|
||||
| ANDROID_NDK_LATEST_HOME | /usr/local/lib/android/sdk/ndk/25.2.9519653 |
|
||||
| ANDROID_NDK_ROOT | /usr/local/lib/android/sdk/ndk/25.2.9519653 |
|
||||
| ANDROID_SDK_ROOT | /usr/local/lib/android/sdk |
|
||||
|
||||
### Cached Docker images
|
||||
| Repository:Tag | Digest | Created |
|
||||
| ----------------------- | ------------------------------------------------------------------------ | ---------- |
|
||||
| alpine:3.12 | sha256:c75ac27b49326926b803b9ed43bf088bc220d22556de1bc5f72d742c91398f69 | 2022-04-05 |
|
||||
| alpine:3.13 | sha256:469b6e04ee185740477efa44ed5bdd64a07bbdd6c7e5f5d169e540889597b911 | 2022-08-09 |
|
||||
| alpine:3.14 | sha256:560e7a4fa5c891d1830f5591c80b8e472fa6cd386b7254cdf65ccc3249292a34 | 2023-02-11 |
|
||||
| buildpack-deps:bullseye | sha256:40b14eb195795a586ac132c9b506253bc3e4ee7f48a63b685e5bf37e80b774cf | 2023-02-09 |
|
||||
| buildpack-deps:buster | sha256:a3e4aaa53bf83302adfb9d8b9ba3996948e4605baac297921d3a173c14603748 | 2023-02-09 |
|
||||
| buildpack-deps:stretch | sha256:78e995165a5788c2f55aed6e548d8f6c1534830d4310c870408fccb2da8c5b2e | 2022-06-23 |
|
||||
| debian:10 | sha256:233c3bbc892229c82da7231980d50adceba4db56a08c0b7053a4852782703459 | 2023-02-09 |
|
||||
| debian:11 | sha256:43ef0c6c3585d5b406caa7a0f232ff5a19c1402aeb415f68bcd1cf9d10180af8 | 2023-02-09 |
|
||||
| debian:9 | sha256:c5c5200ff1e9c73ffbf188b4a67eb1c91531b644856b4aefe86a58d2f0cb05be | 2022-06-23 |
|
||||
| moby/buildkit:latest | sha256:751921dc37d2f842de38c9387f891fe6ae7d80f03d050ea98f780d7e0874ba00 | 2023-02-13 |
|
||||
| node:14 | sha256:a58436325059a278c35079034ce5c98dace7204a2a5748929ccc79087f959daa | 2023-02-17 |
|
||||
| node:14-alpine | sha256:1a1a30ee1faa7d512917e277cc8c81744e79096de3561ecda7ea17cc2ceab372 | 2023-02-17 |
|
||||
| node:16 | sha256:102e907ac88ac60cbad62b09ce003fa11618687621c45da2a2514703be1d1b1a | 2023-02-17 |
|
||||
| node:16-alpine | sha256:77f92924c9734d4acdeb5ec42de85867b10c0031f2e861d26cdae6abd56cf858 | 2023-02-17 |
|
||||
| node:18 | sha256:888e7f9ead4aa3257e9c91528b9f63a427d8a926876ef5ae27ecba2651ae211d | 2023-02-17 |
|
||||
| node:18-alpine | sha256:178bf3eb09c4245fda8c81c1063c0d55c45d7a7f4ddc5296814107b1dc610450 | 2023-02-17 |
|
||||
| ubuntu:16.04 | sha256:1f1a2d56de1d604801a9671f301190704c25d604a416f59e03c04f5c6ffee0d6 | 2021-08-31 |
|
||||
| ubuntu:18.04 | sha256:a3765b4d74747b5e9bdd03205b3fbc4fa19a02781c185f97f24c8f4f84ed7bbf | 2023-01-26 |
|
||||
| ubuntu:20.04 | sha256:4a45212e9518f35983a976eead0de5eecc555a2f047134e9dd2cfc589076a00d | 2023-02-01 |
|
||||
|
||||
### Installed apt packages
|
||||
| Name | Version |
|
||||
| ----------------- | --------------------------------- |
|
||||
| aria2 | 1.33.1-1 |
|
||||
| autoconf | 2.69-11 |
|
||||
| automake | 1:1.15.1-3ubuntu2 |
|
||||
| binutils | 2.30-21ubuntu1\~18.04.8 |
|
||||
| bison | 2:3.0.4.dfsg-1build1 |
|
||||
| brotli | 1.0.3-1ubuntu1.3 |
|
||||
| build-essential | 12.4ubuntu1 |
|
||||
| bzip2 | 1.0.6-8.1ubuntu0.2 |
|
||||
| coreutils | 8.28-1ubuntu1 |
|
||||
| curl | 7.58.0-2ubuntu3.22 |
|
||||
| dbus | 1.12.2-1ubuntu1.4 |
|
||||
| dnsutils | 1:9.11.3+dfsg-1ubuntu1.18 |
|
||||
| dpkg | 1.19.0.5ubuntu2.4 |
|
||||
| fakeroot | 1.22-2ubuntu1 |
|
||||
| file | 1:5.32-2ubuntu0.4 |
|
||||
| flex | 2.6.4-6 |
|
||||
| ftp | 0.17-34 |
|
||||
| gnupg2 | 2.2.4-1ubuntu1.6 |
|
||||
| haveged | 1.9.1-6 |
|
||||
| imagemagick | 8:6.9.7.4+dfsg-16ubuntu6.15 |
|
||||
| iproute2 | 4.15.0-2ubuntu1.3 |
|
||||
| iputils-ping | 3:20161105-1ubuntu3 |
|
||||
| jq | 1.5+dfsg-2 |
|
||||
| lib32z1 | 1:1.2.11.dfsg-0ubuntu2.2 |
|
||||
| libc++-dev | 6.0-2 |
|
||||
| libc++abi-dev | 6.0-2 |
|
||||
| libcurl3 | 7.58.0-2ubuntu3.22 |
|
||||
| libgbm-dev | 20.0.8-0ubuntu1\~18.04.1 |
|
||||
| libgconf-2-4 | 3.2.6-4ubuntu1 |
|
||||
| libgsl-dev | 2.4+dfsg-6 |
|
||||
| libgtk-3-0 | 3.22.30-1ubuntu4 |
|
||||
| libmagic-dev | 1:5.32-2ubuntu0.4 |
|
||||
| libmagickcore-dev | 8:6.9.7.4+dfsg-16ubuntu6.15 |
|
||||
| libmagickwand-dev | 8:6.9.7.4+dfsg-16ubuntu6.15 |
|
||||
| libsecret-1-dev | 0.18.6-1 |
|
||||
| libsqlite3-dev | 3.22.0-1ubuntu0.7 |
|
||||
| libtool | 2.4.6-2 |
|
||||
| libunwind8 | 1.2.1-8 |
|
||||
| libxkbfile-dev | 1:1.0.9-2 |
|
||||
| libxss1 | 1:1.2.2-1 |
|
||||
| libyaml-dev | 0.1.7-2ubuntu3 |
|
||||
| locales | 2.27-3ubuntu1.6 |
|
||||
| m4 | 1.4.18-1 |
|
||||
| mediainfo | 17.12-1 |
|
||||
| mercurial | 4.5.3-1ubuntu2.2 |
|
||||
| net-tools | 1.60+git20161116.90da8a0-1ubuntu1 |
|
||||
| netcat | 1.10-41.1 |
|
||||
| openssh-client | 1:7.6p1-4ubuntu0.7 |
|
||||
| p7zip-full | 16.02+dfsg-6 |
|
||||
| p7zip-rar | 16.02-2 |
|
||||
| parallel | 20161222-1 |
|
||||
| pass | 1.7.1-3 |
|
||||
| patchelf | 0.9-1 |
|
||||
| pkg-config | 0.29.1-0ubuntu2 |
|
||||
| pollinate | 4.33-0ubuntu1\~18.04.2 |
|
||||
| python-setuptools | 39.0.1-2ubuntu0.1 |
|
||||
| rpm | 4.14.1+dfsg1-2 |
|
||||
| rsync | 3.1.2-2.1ubuntu1.5 |
|
||||
| shellcheck | 0.4.6-1 |
|
||||
| sphinxsearch | 2.2.11-2 |
|
||||
| sqlite3 | 3.22.0-1ubuntu0.7 |
|
||||
| ssh | 1:7.6p1-4ubuntu0.7 |
|
||||
| sshpass | 1.06-1 |
|
||||
| subversion | 1.9.7-4ubuntu1.1 |
|
||||
| sudo | 1.8.21p2-3ubuntu1.5 |
|
||||
| swig | 3.0.12-1 |
|
||||
| tar | 1.29b-2ubuntu0.3 |
|
||||
| telnet | 0.17-41 |
|
||||
| texinfo | 6.5.0.dfsg.1-2 |
|
||||
| time | 1.7-25.1build1 |
|
||||
| tk | 8.6.0+9 |
|
||||
| tzdata | 2022g-0ubuntu0.18.04 |
|
||||
| unzip | 6.0-21ubuntu1.2 |
|
||||
| upx | 3.94-4 |
|
||||
| wget | 1.19.4-1ubuntu2.2 |
|
||||
| xorriso | 1.4.8-3 |
|
||||
| xvfb | 2:1.19.6-1ubuntu4.14 |
|
||||
| xz-utils | 5.2.2-1.3ubuntu0.1 |
|
||||
| zip | 3.0-11build1 |
|
||||
| zsync | 0.6.2-3ubuntu1 |
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
# Name of pool supported by this image
|
||||
POOL_NAME="Ubuntu 1804"
|
||||
@@ -15,9 +15,6 @@ function Get-SqliteVersion {
|
||||
|
||||
function Get-MySQLVersion {
|
||||
$mySQLVersion = mysqld --version | Take-OutputPart -Part 2
|
||||
if (Test-IsUbuntu18) {
|
||||
$mySQLVersion = $mySQLVersion | Take-OutputPart -Part 0 -Delimiter "-"
|
||||
}
|
||||
return $mySQLVersion
|
||||
}
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ $languageAndRuntime.AddToolVersionsListInline("Clang", $(Get-ClangToolVersions -
|
||||
$languageAndRuntime.AddToolVersionsListInline("Clang-format", $(Get-ClangToolVersions -ToolName "clang-format"), "^\d+")
|
||||
$languageAndRuntime.AddToolVersionsListInline("Clang-tidy", $(Get-ClangTidyVersions), "^\d+")
|
||||
$languageAndRuntime.AddToolVersion("Dash", $(Get-DashVersion))
|
||||
if ((Test-IsUbuntu18) -or (Test-IsUbuntu20)) {
|
||||
if (Test-IsUbuntu20) {
|
||||
$languageAndRuntime.AddToolVersion("Erlang", $(Get-ErlangVersion))
|
||||
$languageAndRuntime.AddToolVersion("Erlang rebar3", $(Get-ErlangRebar3Version))
|
||||
}
|
||||
@@ -81,7 +81,7 @@ to accomplish this.
|
||||
|
||||
# Project Management
|
||||
$projectManagement = $installedSoftware.AddHeader("Project Management")
|
||||
if ((Test-IsUbuntu18) -or (Test-IsUbuntu20)) {
|
||||
if (Test-IsUbuntu20) {
|
||||
$projectManagement.AddToolVersion("Ant", $(Get-AntVersion))
|
||||
$projectManagement.AddToolVersion("Gradle", $(Get-GradleVersion))
|
||||
}
|
||||
@@ -89,7 +89,7 @@ if ((Test-IsUbuntu20) -or (Test-IsUbuntu22)) {
|
||||
$projectManagement.AddToolVersion("Lerna", $(Get-LernaVersion))
|
||||
}
|
||||
$projectManagement.AddToolVersion("Maven", $(Get-MavenVersion))
|
||||
if ((Test-IsUbuntu18) -or (Test-IsUbuntu20)) {
|
||||
if (Test-IsUbuntu20) {
|
||||
$projectManagement.AddToolVersion("Sbt", $(Get-SbtVersion))
|
||||
}
|
||||
|
||||
@@ -118,7 +118,7 @@ $tools.AddToolVersion("Git LFS", $(Get-GitLFSVersion))
|
||||
$tools.AddToolVersion("Git-ftp", $(Get-GitFTPVersion))
|
||||
$tools.AddToolVersion("Haveged", $(Get-HavegedVersion))
|
||||
$tools.AddToolVersion("Heroku", $(Get-HerokuVersion))
|
||||
if ((Test-IsUbuntu18) -or (Test-IsUbuntu20)) {
|
||||
if (Test-IsUbuntu20) {
|
||||
$tools.AddToolVersion("HHVM (HipHop VM)", $(Get-HHVMVersion))
|
||||
}
|
||||
$tools.AddToolVersion("jq", $(Get-JqVersion))
|
||||
@@ -135,7 +135,7 @@ $tools.AddToolVersion("nvm", $(Get-NvmVersion))
|
||||
$tools.AddToolVersion("OpenSSL", $(Get-OpensslVersion))
|
||||
$tools.AddToolVersion("Packer", $(Get-PackerVersion))
|
||||
$tools.AddToolVersion("Parcel", $(Get-ParcelVersion))
|
||||
if ((Test-IsUbuntu18) -or (Test-IsUbuntu20)) {
|
||||
if (Test-IsUbuntu20) {
|
||||
$tools.AddToolVersion("PhantomJS", $(Get-PhantomJSVersion))
|
||||
}
|
||||
$tools.AddToolVersion("Podman", $(Get-PodManVersion))
|
||||
@@ -213,7 +213,7 @@ $netCoreTools.AddToolVersionsListInline(".NET Core SDK", $(Get-DotNetCoreSdkVers
|
||||
$netCoreTools.AddNodes($(Get-DotnetTools))
|
||||
|
||||
$databasesTools = $installedSoftware.AddHeader("Databases")
|
||||
if ((Test-IsUbuntu18) -or (Test-IsUbuntu20)) {
|
||||
if (Test-IsUbuntu20) {
|
||||
$databasesTools.AddToolVersion("MongoDB", $(Get-MongoDbVersion))
|
||||
}
|
||||
$databasesTools.AddToolVersion("sqlite3", $(Get-SqliteVersion))
|
||||
|
||||
@@ -42,10 +42,6 @@ function Get-KernelVersion {
|
||||
return $kernelVersion
|
||||
}
|
||||
|
||||
function Test-IsUbuntu18 {
|
||||
return (lsb_release -rs) -eq "18.04"
|
||||
}
|
||||
|
||||
function Test-IsUbuntu20 {
|
||||
return (lsb_release -rs) -eq "20.04"
|
||||
}
|
||||
|
||||
@@ -4,11 +4,6 @@
|
||||
## Desc: Helper functions for installing tools
|
||||
################################################################################
|
||||
|
||||
function isUbuntu18
|
||||
{
|
||||
lsb_release -d | grep -q 'Ubuntu 18'
|
||||
}
|
||||
|
||||
function isUbuntu20
|
||||
{
|
||||
lsb_release -d | grep -q 'Ubuntu 20'
|
||||
|
||||
@@ -45,30 +45,25 @@ mkdir -p ${ANDROID_SDK_ROOT}
|
||||
|
||||
cmdlineTools="android-cmdline-tools.zip"
|
||||
|
||||
if isUbuntu18; then
|
||||
# Newer command-line-tools require Java 11 which is not default on ubuntu-18.04
|
||||
download_with_retries "https://dl.google.com/android/repository/commandlinetools-linux-9123335_latest.zip" "." $cmdlineTools
|
||||
else
|
||||
# Download the latest command line tools so that we can accept all of the licenses.
|
||||
# See https://developer.android.com/studio/#command-tools
|
||||
cmdlineToolsVersion=$(get_toolset_value '.android."cmdline-tools"')
|
||||
if [[ $cmdlineToolsVersion == "latest" ]]; then
|
||||
repositoryXmlUrl="https://dl.google.com/android/repository/repository2-1.xml"
|
||||
download_with_retries $repositoryXmlUrl "/tmp" "repository2-1.xml"
|
||||
cmdlineToolsVersion=$(
|
||||
yq -p=xml \
|
||||
'.sdk-repository.remotePackage[] | select(."+@path" == "cmdline-tools;latest" and .channelRef."+@ref" == "channel-0").archives.archive[].complete.url | select(contains("commandlinetools-linux"))' \
|
||||
/tmp/repository2-1.xml
|
||||
)
|
||||
# Download the latest command line tools so that we can accept all of the licenses.
|
||||
# See https://developer.android.com/studio/#command-tools
|
||||
cmdlineToolsVersion=$(get_toolset_value '.android."cmdline-tools"')
|
||||
if [[ $cmdlineToolsVersion == "latest" ]]; then
|
||||
repositoryXmlUrl="https://dl.google.com/android/repository/repository2-1.xml"
|
||||
download_with_retries $repositoryXmlUrl "/tmp" "repository2-1.xml"
|
||||
cmdlineToolsVersion=$(
|
||||
yq -p=xml \
|
||||
'.sdk-repository.remotePackage[] | select(."+@path" == "cmdline-tools;latest" and .channelRef."+@ref" == "channel-0").archives.archive[].complete.url | select(contains("commandlinetools-linux"))' \
|
||||
/tmp/repository2-1.xml
|
||||
)
|
||||
|
||||
if [[ -z $cmdlineToolsVersion ]]; then
|
||||
echo "Failed to parse latest command-line tools version"
|
||||
exit 1
|
||||
fi
|
||||
if [[ -z $cmdlineToolsVersion ]]; then
|
||||
echo "Failed to parse latest command-line tools version"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
download_with_retries "https://dl.google.com/android/repository/${cmdlineToolsVersion}" "." $cmdlineTools
|
||||
fi
|
||||
|
||||
unzip -qq $cmdlineTools -d ${ANDROID_SDK_ROOT}/cmdline-tools
|
||||
# Command line tools need to be placed in ${ANDROID_SDK_ROOT}/sdk/cmdline-tools/latest to determine SDK root
|
||||
|
||||
@@ -9,7 +9,7 @@ source $HELPER_SCRIPTS/os.sh
|
||||
install_packages=(podman buildah skopeo)
|
||||
|
||||
# Packages is available in the official Ubuntu upstream starting from Ubuntu 21
|
||||
if isUbuntu18 || isUbuntu20; then
|
||||
if isUbuntu20; then
|
||||
REPO_URL="https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable"
|
||||
source /etc/os-release
|
||||
sh -c "echo 'deb ${REPO_URL}/x${NAME}_${VERSION_ID}/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list"
|
||||
@@ -23,7 +23,7 @@ apt-get -y install ${install_packages[@]}
|
||||
mkdir -p /etc/containers
|
||||
echo -e "[registries.search]\nregistries = ['docker.io', 'quay.io']" | tee /etc/containers/registries.conf
|
||||
|
||||
if isUbuntu18 || isUbuntu20; then
|
||||
if isUbuntu20; then
|
||||
# Remove source repo
|
||||
rm /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
|
||||
# Document source repo
|
||||
|
||||
@@ -20,15 +20,9 @@ apt-get update
|
||||
apt-get install --no-install-recommends esl-erlang || true
|
||||
|
||||
# Downoloading and installing a deb file manually, ignore deptree errors
|
||||
if isUbuntu18; then
|
||||
esl_url="https://packages.erlang-solutions.com/ubuntu/pool/esl-erlang_25.2.3-1~ubuntu~bionic_amd64.deb"
|
||||
download_with_retries $esl_url "/tmp"
|
||||
dpkg -i /tmp/esl-erlang_25.2.3-1~ubuntu~bionic_amd64.deb || true
|
||||
else
|
||||
esl_url="https://packages.erlang-solutions.com/ubuntu/pool/esl-erlang_25.2.3-2~ubuntu~focal_amd64.deb"
|
||||
download_with_retries $esl_url "/tmp"
|
||||
dpkg -i /tmp/esl-erlang_25.2.3-2~ubuntu~focal_amd64.deb || true
|
||||
fi
|
||||
esl_url="https://packages.erlang-solutions.com/ubuntu/pool/esl-erlang_25.2.3-2~ubuntu~focal_amd64.deb"
|
||||
download_with_retries $esl_url "/tmp"
|
||||
dpkg -i /tmp/esl-erlang_25.2.3-2~ubuntu~focal_amd64.deb || true
|
||||
|
||||
# Restore a proper deptree which brings esl-erlang back in the loop
|
||||
# but eleminate unwanted X.org dependencies
|
||||
|
||||
@@ -41,7 +41,7 @@ enableRepositories() {
|
||||
|
||||
osLabel=$(getOSVersionLabel)
|
||||
|
||||
if isUbuntu18 || isUbuntu20; then
|
||||
if isUbuntu20; then
|
||||
# Add Adopt PPA
|
||||
wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | gpg --dearmor > /usr/share/keyrings/adopt.gpg
|
||||
echo "deb [signed-by=/usr/share/keyrings/adopt.gpg] https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ $osLabel main" > /etc/apt/sources.list.d/adopt.list
|
||||
@@ -52,11 +52,6 @@ osLabel=$(getOSVersionLabel)
|
||||
wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor > /usr/share/keyrings/adoptium.gpg
|
||||
echo "deb [signed-by=/usr/share/keyrings/adoptium.gpg] https://packages.adoptium.net/artifactory/deb/ $osLabel main" > /etc/apt/sources.list.d/adoptium.list
|
||||
|
||||
if isUbuntu18 ; then
|
||||
# Install GPG Key for Azul Open JDK. See https://www.azul.com/downloads/azure-only/zulu/
|
||||
wget -qO - https://www.azul.com/wp-content/uploads/2021/05/0xB1998361219BD9C9.txt | gpg --dearmor > /usr/share/keyrings/zulu.gpg
|
||||
echo "deb [signed-by=/usr/share/keyrings/zulu.gpg] https://repos.azul.com/azure-only/zulu/apt stable main" > /etc/apt/sources.list.d/zulu.list
|
||||
fi
|
||||
}
|
||||
|
||||
installOpenJDK() {
|
||||
@@ -127,11 +122,6 @@ for jdkVendor in ${jdkVendors[@]}; do
|
||||
done
|
||||
done
|
||||
|
||||
# Adopt 12 is only available for Ubuntu 18.04
|
||||
if isUbuntu18; then
|
||||
createJavaEnvironmentalVariable "12" "Adopt"
|
||||
fi
|
||||
|
||||
# Install Ant
|
||||
apt-get install -y --no-install-recommends ant ant-optional
|
||||
echo "ANT_HOME=/usr/share/ant" | tee -a /etc/environment
|
||||
|
||||
@@ -11,7 +11,7 @@ source $HELPER_SCRIPTS/install.sh
|
||||
|
||||
# add repository for old Ubuntu images
|
||||
# details in thread: https://github.com/actions/runner-images/issues/6331
|
||||
if isUbuntu18 || isUbuntu20; then
|
||||
if isUbuntu20; then
|
||||
apt-add-repository ppa:ondrej/php -y
|
||||
apt-get update
|
||||
fi
|
||||
|
||||
@@ -10,10 +10,6 @@ source $HELPER_SCRIPTS/etc-environment.sh
|
||||
source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
# Install Python, Python 3, pip, pip3
|
||||
if isUbuntu18; then
|
||||
apt-get install -y --no-install-recommends python python-dev python-pip
|
||||
fi
|
||||
|
||||
apt-get install -y --no-install-recommends python3 python3-dev python3-pip python3-venv
|
||||
|
||||
# Install pipx
|
||||
|
||||
@@ -331,7 +331,7 @@ Describe "Phantomjs" -Skip:(Test-IsUbuntu22) {
|
||||
}
|
||||
}
|
||||
|
||||
Describe "GraalVM" -Skip:(Test-IsUbuntu18) {
|
||||
Describe "GraalVM" {
|
||||
It "graalvm" {
|
||||
'$GRAALVM_11_ROOT/bin/java -version' | Should -ReturnZeroExitCode
|
||||
}
|
||||
|
||||
@@ -1,361 +0,0 @@
|
||||
{
|
||||
"toolcache": [
|
||||
{
|
||||
"name": "Python",
|
||||
"url" : "https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json",
|
||||
"platform" : "linux",
|
||||
"platform_version": "18.04",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"2.7.*",
|
||||
"3.6.*",
|
||||
"3.7.*",
|
||||
"3.8.*",
|
||||
"3.9.*",
|
||||
"3.10.*",
|
||||
"3.11.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "PyPy",
|
||||
"arch": "x64",
|
||||
"platform" : "linux",
|
||||
"versions": [
|
||||
"2.7",
|
||||
"3.6",
|
||||
"3.9"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "node",
|
||||
"url" : "https://raw.githubusercontent.com/actions/node-versions/main/versions-manifest.json",
|
||||
"platform" : "linux",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"14.*",
|
||||
"16.*",
|
||||
"18.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "go",
|
||||
"url" : "https://raw.githubusercontent.com/actions/go-versions/main/versions-manifest.json",
|
||||
"arch": "x64",
|
||||
"platform" : "linux",
|
||||
"versions": [
|
||||
"1.16.*",
|
||||
"1.17.*",
|
||||
"1.18.*"
|
||||
],
|
||||
"default": "1.17.*"
|
||||
},
|
||||
{
|
||||
"name": "Ruby",
|
||||
"platform_version": "18.04",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"2.4.*",
|
||||
"2.5.*",
|
||||
"2.6.*",
|
||||
"2.7.*",
|
||||
"3.0.*",
|
||||
"3.1.*"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "CodeQL",
|
||||
"platform" : "linux",
|
||||
"arch": "x64",
|
||||
"versions": [
|
||||
"*"
|
||||
]
|
||||
}
|
||||
],
|
||||
"java": {
|
||||
"default": "8",
|
||||
"default_vendor": "Temurin-Hotspot",
|
||||
"vendors": [
|
||||
{
|
||||
"name": "Temurin-Hotspot",
|
||||
"versions": [ "8", "11", "17" ]
|
||||
},
|
||||
{
|
||||
"name": "Adopt",
|
||||
"versions": [ "8", "11", "12" ]
|
||||
}
|
||||
],
|
||||
"maven": "3.8.8"
|
||||
},
|
||||
"android": {
|
||||
"platform_min_version": "23",
|
||||
"build_tools_min_version": "23.0.1",
|
||||
"extra_list": [
|
||||
"android;m2repository",
|
||||
"google;m2repository",
|
||||
"google;google_play_services"
|
||||
],
|
||||
"addon_list": [
|
||||
"addon-google_apis-google-24",
|
||||
"addon-google_apis-google-23",
|
||||
"addon-google_apis-google-22",
|
||||
"addon-google_apis-google-21"
|
||||
],
|
||||
"additional_tools": [
|
||||
"cmake;3.10.2.4988404",
|
||||
"cmake;3.18.1",
|
||||
"cmake;3.22.1"
|
||||
],
|
||||
"ndk": {
|
||||
"default": "25",
|
||||
"versions": [
|
||||
"23", "24", "25"
|
||||
]
|
||||
}
|
||||
},
|
||||
"powershellModules": [
|
||||
{"name": "MarkdownPS"},
|
||||
{"name": "Microsoft.Graph"},
|
||||
{"name": "Pester"}
|
||||
],
|
||||
"azureModules": [
|
||||
{
|
||||
"name": "az",
|
||||
"url" : "https://raw.githubusercontent.com/Azure/az-ps-module-versions/main/versions-manifest.json",
|
||||
"versions": [
|
||||
"9.3.0"
|
||||
],
|
||||
"zip_versions": [
|
||||
"3.1.0",
|
||||
"4.4.0",
|
||||
"5.9.0",
|
||||
"6.6.0",
|
||||
"7.5.0"
|
||||
]
|
||||
}
|
||||
],
|
||||
"apt": {
|
||||
"common_packages": [
|
||||
"autoconf",
|
||||
"automake",
|
||||
"build-essential",
|
||||
"dbus",
|
||||
"dnsutils",
|
||||
"dpkg",
|
||||
"fakeroot",
|
||||
"gnupg2",
|
||||
"imagemagick",
|
||||
"iproute2",
|
||||
"iputils-ping",
|
||||
"lib32z1",
|
||||
"libc++abi-dev",
|
||||
"libc++-dev",
|
||||
"libcurl3",
|
||||
"libgbm-dev",
|
||||
"libgconf-2-4",
|
||||
"libgsl-dev",
|
||||
"libgtk-3-0",
|
||||
"libmagic-dev",
|
||||
"libmagickcore-dev",
|
||||
"libmagickwand-dev",
|
||||
"libsecret-1-dev",
|
||||
"libsqlite3-dev",
|
||||
"libyaml-dev",
|
||||
"libtool",
|
||||
"libunwind8",
|
||||
"libxkbfile-dev",
|
||||
"libxss1",
|
||||
"locales",
|
||||
"mercurial",
|
||||
"openssh-client",
|
||||
"p7zip-rar",
|
||||
"pkg-config",
|
||||
"python-setuptools",
|
||||
"rpm",
|
||||
"tar",
|
||||
"texinfo",
|
||||
"tk",
|
||||
"tzdata",
|
||||
"upx",
|
||||
"xorriso",
|
||||
"xvfb",
|
||||
"xz-utils",
|
||||
"zsync"
|
||||
],
|
||||
"cmd_packages": [
|
||||
"aria2",
|
||||
"binutils",
|
||||
"bison",
|
||||
"brotli",
|
||||
"bzip2",
|
||||
"coreutils",
|
||||
"curl",
|
||||
"file",
|
||||
"flex",
|
||||
"ftp",
|
||||
"haveged",
|
||||
"jq",
|
||||
"m4",
|
||||
"mediainfo",
|
||||
"netcat",
|
||||
"net-tools",
|
||||
"parallel",
|
||||
"pass",
|
||||
"p7zip-full",
|
||||
"patchelf",
|
||||
"pollinate",
|
||||
"rsync",
|
||||
"shellcheck",
|
||||
"sqlite3",
|
||||
"sphinxsearch",
|
||||
"ssh",
|
||||
"sshpass",
|
||||
"subversion",
|
||||
"sudo",
|
||||
"swig",
|
||||
"telnet",
|
||||
"time",
|
||||
"unzip",
|
||||
"wget",
|
||||
"zip"
|
||||
]
|
||||
},
|
||||
"brew": [
|
||||
],
|
||||
"docker": {
|
||||
"images": [
|
||||
"alpine:3.12",
|
||||
"alpine:3.13",
|
||||
"alpine:3.14",
|
||||
"buildpack-deps:stretch",
|
||||
"buildpack-deps:buster",
|
||||
"buildpack-deps:bullseye",
|
||||
"debian:9",
|
||||
"debian:10",
|
||||
"debian:11",
|
||||
"moby/buildkit:latest",
|
||||
"node:14",
|
||||
"node:16",
|
||||
"node:18",
|
||||
"node:14-alpine",
|
||||
"node:16-alpine",
|
||||
"node:18-alpine",
|
||||
"ubuntu:16.04",
|
||||
"ubuntu:18.04",
|
||||
"ubuntu:20.04"
|
||||
]
|
||||
},
|
||||
"pipx": [
|
||||
{
|
||||
"package": "yamllint",
|
||||
"cmd": "yamllint"
|
||||
},
|
||||
{
|
||||
"package": "ansible-core",
|
||||
"cmd": "ansible"
|
||||
}
|
||||
],
|
||||
"dotnet": {
|
||||
"aptPackages": [
|
||||
"dotnet-sdk-3.1",
|
||||
"dotnet-sdk-6.0"
|
||||
],
|
||||
"versions": [
|
||||
"3.1",
|
||||
"6.0"
|
||||
],
|
||||
"tools": [
|
||||
{ "name": "nbgv", "test": "nbgv --version", "getversion" : "nbgv --version" }
|
||||
]
|
||||
},
|
||||
"clang": {
|
||||
"versions": [
|
||||
"9"
|
||||
],
|
||||
"default_version": "9"
|
||||
},
|
||||
"gcc": {
|
||||
"versions": [
|
||||
"g++-9",
|
||||
"g++-10"
|
||||
]
|
||||
},
|
||||
"gfortran": {
|
||||
"versions": [
|
||||
"gfortran-9",
|
||||
"gfortran-10"
|
||||
]
|
||||
},
|
||||
"php": {
|
||||
"versions": [
|
||||
"7.2",
|
||||
"7.3",
|
||||
"7.4",
|
||||
"8.0",
|
||||
"8.1",
|
||||
"8.2"
|
||||
]
|
||||
},
|
||||
"selenium": {
|
||||
"version": "4",
|
||||
"binary_name": "selenium-server"
|
||||
},
|
||||
"rubygems": [],
|
||||
"node": {
|
||||
"default": "16"
|
||||
},
|
||||
"node_modules": [
|
||||
{
|
||||
"name": "grunt",
|
||||
"command": "grunt"
|
||||
},
|
||||
{
|
||||
"name": "gulp",
|
||||
"command": "gulp"
|
||||
},
|
||||
{
|
||||
"name": "n",
|
||||
"command": "n"
|
||||
},
|
||||
{
|
||||
"name": "parcel",
|
||||
"command": "parcel"
|
||||
},
|
||||
{
|
||||
"name": "typescript",
|
||||
"command": "tsc"
|
||||
},
|
||||
{
|
||||
"name": "newman",
|
||||
"command": "newman"
|
||||
},
|
||||
{
|
||||
"name": "vercel",
|
||||
"command": "vercel"
|
||||
},
|
||||
{
|
||||
"name": "webpack",
|
||||
"command": "webpack"
|
||||
},
|
||||
{
|
||||
"name": "webpack-cli",
|
||||
"command": "webpack-cli"
|
||||
},
|
||||
{
|
||||
"name": "netlify-cli",
|
||||
"command": "netlify"
|
||||
},
|
||||
{
|
||||
"name": "yarn",
|
||||
"command": "yarn"
|
||||
}
|
||||
],
|
||||
"mongodb": {
|
||||
"version": "5.0"
|
||||
},
|
||||
"postgresql": {
|
||||
"version": "14"
|
||||
},
|
||||
"pwsh": {
|
||||
"version": "7.2"
|
||||
}
|
||||
}
|
||||
@@ -1,393 +0,0 @@
|
||||
{
|
||||
"variables": {
|
||||
"client_id": "{{env `ARM_CLIENT_ID`}}",
|
||||
"client_secret": "{{env `ARM_CLIENT_SECRET`}}",
|
||||
"client_cert_path": "{{env `ARM_CLIENT_CERT_PATH`}}",
|
||||
"subscription_id": "{{env `ARM_SUBSCRIPTION_ID`}}",
|
||||
"tenant_id": "{{env `ARM_TENANT_ID`}}",
|
||||
"resource_group": "{{env `ARM_RESOURCE_GROUP`}}",
|
||||
"storage_account": "{{env `ARM_STORAGE_ACCOUNT`}}",
|
||||
"build_resource_group_name": "{{env `BUILD_RESOURCE_GROUP_NAME`}}",
|
||||
"temp_resource_group_name": "{{env `TEMP_RESOURCE_GROUP_NAME`}}",
|
||||
"location": "{{env `ARM_RESOURCE_LOCATION`}}",
|
||||
"virtual_network_name": "{{env `VNET_NAME`}}",
|
||||
"virtual_network_resource_group_name": "{{env `VNET_RESOURCE_GROUP`}}",
|
||||
"virtual_network_subnet_name": "{{env `VNET_SUBNET`}}",
|
||||
"private_virtual_network_with_public_ip": "{{env `PRIVATE_VIRTUAL_NETWORK_WITH_PUBLIC_IP`}}",
|
||||
"allowed_inbound_ip_addresses": "{{env `AGENT_IP`}}",
|
||||
"image_folder": "/imagegeneration",
|
||||
"imagedata_file": "/imagegeneration/imagedata.json",
|
||||
"installer_script_folder": "/imagegeneration/installers",
|
||||
"helper_script_folder": "/imagegeneration/helpers",
|
||||
"vm_size": "Standard_D4s_v4",
|
||||
"capture_name_prefix": "packer",
|
||||
"image_version": "dev",
|
||||
"image_os": "ubuntu18",
|
||||
"run_validation_diskspace": "false",
|
||||
"dockerhub_login": "{{env `DOCKERHUB_LOGIN`}}",
|
||||
"dockerhub_password": "{{env `DOCKERHUB_PASSWORD`}}"
|
||||
},
|
||||
"sensitive-variables": [
|
||||
"client_secret"
|
||||
],
|
||||
"builders": [
|
||||
{
|
||||
"type": "azure-arm",
|
||||
"client_id": "{{user `client_id`}}",
|
||||
"client_secret": "{{user `client_secret`}}",
|
||||
"client_cert_path": "{{user `client_cert_path`}}",
|
||||
"subscription_id": "{{user `subscription_id`}}",
|
||||
"tenant_id": "{{user `tenant_id`}}",
|
||||
"location": "{{user `location`}}",
|
||||
"vm_size": "{{user `vm_size`}}",
|
||||
"resource_group_name": "{{user `resource_group`}}",
|
||||
"storage_account": "{{user `storage_account`}}",
|
||||
"build_resource_group_name": "{{user `build_resource_group_name`}}",
|
||||
"temp_resource_group_name": "{{user `temp_resource_group_name`}}",
|
||||
"capture_container_name": "images",
|
||||
"capture_name_prefix": "{{user `capture_name_prefix`}}",
|
||||
"virtual_network_name": "{{user `virtual_network_name`}}",
|
||||
"virtual_network_resource_group_name": "{{user `virtual_network_resource_group_name`}}",
|
||||
"virtual_network_subnet_name": "{{user `virtual_network_subnet_name`}}",
|
||||
"private_virtual_network_with_public_ip": "{{user `private_virtual_network_with_public_ip`}}",
|
||||
"allowed_inbound_ip_addresses": "{{user `allowed_inbound_ip_addresses`}}",
|
||||
"os_type": "Linux",
|
||||
"image_publisher": "Canonical",
|
||||
"image_offer": "UbuntuServer",
|
||||
"image_sku": "18.04-LTS",
|
||||
"os_disk_size_gb": "86"
|
||||
}
|
||||
],
|
||||
"provisioners": [
|
||||
{
|
||||
"type": "shell",
|
||||
"inline": [
|
||||
"mkdir {{user `image_folder`}}",
|
||||
"chmod 777 {{user `image_folder`}}"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"script": "{{template_dir}}/scripts/base/apt-mock.sh",
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/base/repos.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"DEBIAN_FRONTEND=noninteractive"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"script": "{{template_dir}}/scripts/base/apt.sh",
|
||||
"environment_vars": [
|
||||
"DEBIAN_FRONTEND=noninteractive"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"script": "{{template_dir}}/scripts/base/limits.sh",
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/scripts/helpers",
|
||||
"destination": "{{user `helper_script_folder`}}"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/scripts/installers",
|
||||
"destination": "{{user `installer_script_folder`}}"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{ template_dir }}/post-generation",
|
||||
"destination": "{{user `image_folder`}}"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/scripts/tests",
|
||||
"destination": "{{user `image_folder`}}"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{ template_dir }}/scripts/SoftwareReport",
|
||||
"destination": "{{user `image_folder`}}"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{ template_dir }}/../../helpers/software-report-base",
|
||||
"destination": "{{user `image_folder`}}/SoftwareReport/"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/toolsets/toolset-1804.json",
|
||||
"destination": "{{user `installer_script_folder`}}/toolset.json"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/preimagedata.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"IMAGE_VERSION={{user `image_version`}}",
|
||||
"IMAGEDATA_FILE={{user `imagedata_file`}}"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/configure-environment.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"IMAGE_VERSION={{user `image_version`}}",
|
||||
"IMAGE_OS={{user `image_os`}}",
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/complete-snap-setup.sh",
|
||||
"{{template_dir}}/scripts/installers/powershellcore.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/Install-PowerShellModules.ps1",
|
||||
"{{template_dir}}/scripts/installers/Install-AzureModules.ps1"
|
||||
],
|
||||
"environment_vars": [
|
||||
"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/docker-compose.sh",
|
||||
"{{template_dir}}/scripts/installers/docker-moby.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}",
|
||||
"DOCKERHUB_LOGIN={{user `dockerhub_login`}}",
|
||||
"DOCKERHUB_PASSWORD={{user `dockerhub_password`}}"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/azcopy.sh",
|
||||
"{{template_dir}}/scripts/installers/azure-cli.sh",
|
||||
"{{template_dir}}/scripts/installers/azure-devops-cli.sh",
|
||||
"{{template_dir}}/scripts/installers/basic.sh",
|
||||
"{{template_dir}}/scripts/installers/bicep.sh",
|
||||
"{{template_dir}}/scripts/installers/aliyun-cli.sh",
|
||||
"{{template_dir}}/scripts/installers/apache.sh",
|
||||
"{{template_dir}}/scripts/installers/clang.sh",
|
||||
"{{template_dir}}/scripts/installers/swift.sh",
|
||||
"{{template_dir}}/scripts/installers/cmake.sh",
|
||||
"{{template_dir}}/scripts/installers/codeql-bundle.sh",
|
||||
"{{template_dir}}/scripts/installers/containers.sh",
|
||||
"{{template_dir}}/scripts/installers/dotnetcore-sdk.sh",
|
||||
"{{template_dir}}/scripts/installers/erlang.sh",
|
||||
"{{template_dir}}/scripts/installers/firefox.sh",
|
||||
"{{template_dir}}/scripts/installers/microsoft-edge.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",
|
||||
"{{template_dir}}/scripts/installers/heroku.sh",
|
||||
"{{template_dir}}/scripts/installers/hhvm.sh",
|
||||
"{{template_dir}}/scripts/installers/java-tools.sh",
|
||||
"{{template_dir}}/scripts/installers/kubernetes-tools.sh",
|
||||
"{{template_dir}}/scripts/installers/oc.sh",
|
||||
"{{template_dir}}/scripts/installers/leiningen.sh",
|
||||
"{{template_dir}}/scripts/installers/miniconda.sh",
|
||||
"{{template_dir}}/scripts/installers/mono.sh",
|
||||
"{{template_dir}}/scripts/installers/kotlin.sh",
|
||||
"{{template_dir}}/scripts/installers/mysql.sh",
|
||||
"{{template_dir}}/scripts/installers/mssql-cmd-tools.sh",
|
||||
"{{template_dir}}/scripts/installers/sqlpackage.sh",
|
||||
"{{template_dir}}/scripts/installers/nginx.sh",
|
||||
"{{template_dir}}/scripts/installers/nvm.sh",
|
||||
"{{template_dir}}/scripts/installers/nodejs.sh",
|
||||
"{{template_dir}}/scripts/installers/bazel.sh",
|
||||
"{{template_dir}}/scripts/installers/oras-cli.sh",
|
||||
"{{template_dir}}/scripts/installers/phantomjs.sh",
|
||||
"{{template_dir}}/scripts/installers/php.sh",
|
||||
"{{template_dir}}/scripts/installers/postgresql.sh",
|
||||
"{{template_dir}}/scripts/installers/pulumi.sh",
|
||||
"{{template_dir}}/scripts/installers/ruby.sh",
|
||||
"{{template_dir}}/scripts/installers/r.sh",
|
||||
"{{template_dir}}/scripts/installers/rust.sh",
|
||||
"{{template_dir}}/scripts/installers/julia.sh",
|
||||
"{{template_dir}}/scripts/installers/sbt.sh",
|
||||
"{{template_dir}}/scripts/installers/selenium.sh",
|
||||
"{{template_dir}}/scripts/installers/terraform.sh",
|
||||
"{{template_dir}}/scripts/installers/packer.sh",
|
||||
"{{template_dir}}/scripts/installers/vcpkg.sh",
|
||||
"{{template_dir}}/scripts/installers/dpkg-config.sh",
|
||||
"{{template_dir}}/scripts/installers/mongodb.sh",
|
||||
"{{template_dir}}/scripts/installers/yq.sh",
|
||||
"{{template_dir}}/scripts/installers/android.sh",
|
||||
"{{template_dir}}/scripts/installers/pypy.sh",
|
||||
"{{template_dir}}/scripts/installers/python.sh",
|
||||
"{{template_dir}}/scripts/installers/aws.sh",
|
||||
"{{template_dir}}/scripts/installers/zstd.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}",
|
||||
"DEBIAN_FRONTEND=noninteractive"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/Install-Toolset.ps1",
|
||||
"{{template_dir}}/scripts/installers/Configure-Toolset.ps1"
|
||||
],
|
||||
"environment_vars": [
|
||||
"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/pipx-packages.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/homebrew.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"HELPER_SCRIPTS={{user `helper_script_folder`}}",
|
||||
"DEBIAN_FRONTEND=noninteractive",
|
||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}"
|
||||
],
|
||||
"execute_command": "/bin/sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"script": "{{template_dir}}/scripts/base/snap.sh",
|
||||
"execute_command": "sudo 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": "60s",
|
||||
"start_retry_timeout": "10m",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/cleanup.sh"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"script": "{{template_dir}}/scripts/base/apt-mock-remove.sh",
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"inline": [
|
||||
"pwsh -File {{user `image_folder`}}/SoftwareReport/SoftwareReport.Generator.ps1 -OutputDirectory {{user `image_folder`}}",
|
||||
"pwsh -File {{user `image_folder`}}/tests/RunAll-Tests.ps1 -OutputDirectory {{user `image_folder`}}"
|
||||
],
|
||||
"environment_vars": [
|
||||
"IMAGE_VERSION={{user `image_version`}}",
|
||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{user `image_folder`}}/software-report.md",
|
||||
"destination": "{{template_dir}}/Ubuntu1804-Readme.md",
|
||||
"direction": "download"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{user `image_folder`}}/software-report.json",
|
||||
"destination": "{{template_dir}}/software-report.json",
|
||||
"direction": "download"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts":[
|
||||
"{{template_dir}}/scripts/installers/post-deployment.sh"
|
||||
],
|
||||
"environment_vars":[
|
||||
"HELPER_SCRIPT_FOLDER={{user `helper_script_folder`}}",
|
||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}",
|
||||
"IMAGE_FOLDER={{user `image_folder`}}"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"scripts": [
|
||||
"{{template_dir}}/scripts/installers/validate-disk-space.sh"
|
||||
],
|
||||
"environment_vars": [
|
||||
"RUN_VALIDATION={{user `run_validation_diskspace`}}"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"source": "{{template_dir}}/config/ubuntu1804.conf",
|
||||
"destination": "/tmp/"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"inline": [
|
||||
"mkdir -p /etc/vsts",
|
||||
"cp /tmp/ubuntu1804.conf /etc/vsts/machine_instance.conf"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
},
|
||||
{
|
||||
"type": "shell",
|
||||
"inline": [
|
||||
"sleep 30",
|
||||
"/usr/sbin/waagent -force -deprovision+user && export HISTSIZE=0 && sync"
|
||||
],
|
||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user