mirror of
https://github.com/actions/runner-images.git
synced 2025-12-15 06:08:07 +00:00
Merge branch 'master' of https://github.com/nikita-bykov/virtual-environments into pipx
This commit is contained in:
2
.github/workflows/issue-triager.yml
vendored
2
.github/workflows/issue-triager.yml
vendored
@@ -32,7 +32,7 @@ jobs:
|
||||
|
||||
const isAnnouncement = issueLabels.data && issueLabels.data
|
||||
.map(label => label.name)
|
||||
.includes('announcement');
|
||||
.includes('Announcement');
|
||||
|
||||
if (!isAnnouncement) {
|
||||
github.issues.addLabels({
|
||||
|
||||
@@ -42,6 +42,15 @@ jobs:
|
||||
SourceFolder: 'images/macos/provision/log/'
|
||||
RemoveSourceFolder: true
|
||||
|
||||
- task: PowerShell@2
|
||||
displayName: 'Select datastore'
|
||||
inputs:
|
||||
targetType: 'filePath'
|
||||
filePath: ./images.CI/macos/select-datastore.ps1
|
||||
arguments: -VIServer "$(vcenter-server-v2)" `
|
||||
-VIUserName "$(vcenter-username-v2)" `
|
||||
-VIPassword "$(vcenter-password-v2)"
|
||||
|
||||
- pwsh: |
|
||||
$SensitiveData = @(
|
||||
'IP address:',
|
||||
@@ -54,7 +63,7 @@ jobs:
|
||||
-var="vcenter_password=$(vcenter-password-v2)" `
|
||||
-var="vcenter_datacenter=$(vcenter-datacenter-v2)" `
|
||||
-var="cluster_or_esxi_host=$(esxi-cluster-v2)" `
|
||||
-var="esxi_datastore=${{ parameters.target_datastore }}" `
|
||||
-var="esxi_datastore=$(buildDatastore)" `
|
||||
-var="output_folder=$(output-folder)" `
|
||||
-var="vm_username=$(vm-username)" `
|
||||
-var="vm_password=$(vm-password)" `
|
||||
@@ -106,6 +115,18 @@ jobs:
|
||||
displayName: Publish test results
|
||||
condition: always()
|
||||
|
||||
- task: PowerShell@2
|
||||
displayName: 'Move vm to cold storage'
|
||||
condition: succeededOrFailed()
|
||||
inputs:
|
||||
targetType: 'filePath'
|
||||
filePath: ./images.CI/macos/move-vm.ps1
|
||||
arguments: -VMName "${{ variables.VirtualMachineName }}" `
|
||||
-TargetDataStore "${{ parameters.target_datastore }}" `
|
||||
-VIServer "$(vcenter-server-v2)" `
|
||||
-VIUserName "$(vcenter-username-v2)" `
|
||||
-VIPassword "$(vcenter-password-v2)"
|
||||
|
||||
- task: PowerShell@2
|
||||
displayName: 'Destroy VM (if build canceled only)'
|
||||
condition: eq(variables['Agent.JobStatus'], 'Canceled')
|
||||
|
||||
@@ -1,3 +1,21 @@
|
||||
<#
|
||||
.SYNOPSIS
|
||||
|
||||
This script deletes vm from vCenter
|
||||
|
||||
.PARAMETER VMName
|
||||
VM name to delete (Example "macOS-10.15_20201012.4")
|
||||
|
||||
.PARAMETER VIServer
|
||||
vCenter address (Example "10.0.1.16")
|
||||
|
||||
.PARAMETER VIUserName
|
||||
vCenter username (Example "Administrator")
|
||||
|
||||
.PARAMETER VIPassword
|
||||
vCenter password (Example "12345678")
|
||||
#>
|
||||
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[Parameter(Mandatory)]
|
||||
@@ -17,25 +35,13 @@ param(
|
||||
[string]$VIPassword
|
||||
)
|
||||
|
||||
$ProgressPreference = "SilentlyContinue"
|
||||
$WarningPreference = "SilentlyContinue"
|
||||
# Import helpers module
|
||||
Import-Module $PSScriptRoot\helpers.psm1 -DisableNameChecking
|
||||
|
||||
# connection to a vCenter Server system
|
||||
try
|
||||
{
|
||||
$null = Set-PowerCLIConfiguration -Scope Session -InvalidCertificateAction Ignore -ParticipateInCEIP $false -Confirm:$false -WebOperationTimeoutSeconds 600
|
||||
$securePassword = ConvertTo-SecureString -String $VIPassword -AsPlainText -Force
|
||||
$cred = New-Object System.Management.Automation.PSCredential($VIUserName, $securePassword)
|
||||
$null = Connect-VIServer -Server $VIServer -Credential $cred -ErrorAction Stop
|
||||
Write-Host "Connection to the vSphere server has been established"
|
||||
}
|
||||
catch
|
||||
{
|
||||
Write-Host "##vso[task.LogIssue type=error;]Failed to connect to the vSphere server"
|
||||
exit 1
|
||||
}
|
||||
# Connection to a vCenter Server system
|
||||
Connect-VCServer
|
||||
|
||||
# check vm clone status
|
||||
# Check vm clone status
|
||||
$chainId = (Get-VIEvent -Entity $VMName).ChainId
|
||||
if ($chainId)
|
||||
{
|
||||
@@ -45,7 +51,7 @@ if ($chainId)
|
||||
try
|
||||
{
|
||||
Stop-Task -Task $task -Confirm:$false -ErrorAction Stop
|
||||
Write-Host "The vm '$VMName' clone task has been cancelled"
|
||||
Write-Host "The vm '$VMName' clone task has been canceled"
|
||||
}
|
||||
catch
|
||||
{
|
||||
@@ -54,7 +60,7 @@ if ($chainId)
|
||||
}
|
||||
}
|
||||
|
||||
# remove a vm
|
||||
# Remove a vm
|
||||
$vm = Get-VM -Name $VMName -ErrorAction SilentlyContinue
|
||||
|
||||
if ($vm)
|
||||
|
||||
26
images.CI/macos/helpers.psm1
Normal file
26
images.CI/macos/helpers.psm1
Normal file
@@ -0,0 +1,26 @@
|
||||
<#
|
||||
.SYNOPSIS
|
||||
|
||||
Helper functions to use in images.CI scripts
|
||||
#>
|
||||
|
||||
Function Connect-VCServer
|
||||
{
|
||||
try
|
||||
{
|
||||
# Preference
|
||||
$global:ProgressPreference = 'SilentlyContinue'
|
||||
$global:WarningPreference = 'SilentlyContinue'
|
||||
# Ignore SSL
|
||||
$null = Set-PowerCLIConfiguration -Scope Session -InvalidCertificateAction Ignore -ParticipateInCEIP $false -Confirm:$false -WebOperationTimeoutSeconds 600
|
||||
$securePassword = ConvertTo-SecureString -String $VIPassword -AsPlainText -Force
|
||||
$cred = New-Object System.Management.Automation.PSCredential($VIUserName, $securePassword)
|
||||
$null = Connect-VIServer -Server $VIServer -Credential $cred -ErrorAction Stop
|
||||
Write-Host "Connection to the vSphere server has been established"
|
||||
}
|
||||
catch
|
||||
{
|
||||
Write-Host "##vso[task.LogIssue type=error;]Failed to connect to the vSphere server"
|
||||
exit 1
|
||||
}
|
||||
}
|
||||
59
images.CI/macos/move-vm.ps1
Normal file
59
images.CI/macos/move-vm.ps1
Normal file
@@ -0,0 +1,59 @@
|
||||
<#
|
||||
.SYNOPSIS
|
||||
|
||||
This script migrates given VM to another datastore
|
||||
|
||||
.PARAMETER VMName
|
||||
VM name to migrate (Example "macOS-10.15_20201012.4")
|
||||
|
||||
.PARAMETER TargetDataStore
|
||||
Target datastore (Example "ds-image")
|
||||
|
||||
.PARAMETER VIServer
|
||||
vCenter address (Example "10.0.1.16")
|
||||
|
||||
.PARAMETER VIUserName
|
||||
vCenter username (Example "Administrator")
|
||||
|
||||
.PARAMETER VIPassword
|
||||
vCenter password (Example "12345678")
|
||||
#>
|
||||
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[Parameter(Mandatory)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$VMName,
|
||||
|
||||
[Parameter(Mandatory)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$TargetDataStore,
|
||||
|
||||
[Parameter(Mandatory)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$VIServer,
|
||||
|
||||
[Parameter(Mandatory)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$VIUserName,
|
||||
|
||||
[Parameter(Mandatory)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$VIPassword
|
||||
)
|
||||
|
||||
# Import helpers module
|
||||
Import-Module $PSScriptRoot\helpers.psm1 -DisableNameChecking
|
||||
|
||||
# Connection to a vCenter Server system
|
||||
Connect-VCServer
|
||||
|
||||
try
|
||||
{
|
||||
Get-VM $VMName | Move-VM -Datastore $TargetDataStore -ErrorAction Stop
|
||||
Write-Host "VM has been moved successfully to target datastore '$TargetDataStore'"
|
||||
}
|
||||
catch
|
||||
{
|
||||
Write-Host "##vso[task.LogIssue type=error;]Failed to move VM '$VMName' to target datastore '$TargetDataStore'"
|
||||
}
|
||||
64
images.CI/macos/select-datastore.ps1
Normal file
64
images.CI/macos/select-datastore.ps1
Normal file
@@ -0,0 +1,64 @@
|
||||
<#
|
||||
.SYNOPSIS
|
||||
|
||||
This script selects local datastore based on the following rules:
|
||||
|
||||
- Name starts with ds-local-Datastore
|
||||
- Datastore FreespaceGB > 400 Gb
|
||||
- VM count on the datastore < 2
|
||||
|
||||
.PARAMETER VIServer
|
||||
vCenter address (Example "10.0.1.16")
|
||||
|
||||
.PARAMETER VIUserName
|
||||
vCenter username (Example "Administrator")
|
||||
|
||||
.PARAMETER VIPassword
|
||||
vCenter password (Example "12345678")
|
||||
#>
|
||||
|
||||
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[Parameter(Mandatory)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$VIServer,
|
||||
|
||||
[Parameter(Mandatory)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$VIUserName,
|
||||
|
||||
[Parameter(Mandatory)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$VIPassword
|
||||
)
|
||||
|
||||
# Import helpers module
|
||||
Import-Module $PSScriptRoot\helpers.psm1 -DisableNameChecking
|
||||
|
||||
# Connection to a vCenter Server system
|
||||
Connect-VCServer
|
||||
|
||||
# Get a target datastore for current deployment
|
||||
# 1. Name starts with ds-local-Datastore
|
||||
# 2. FreespaceGB > 400 Gb
|
||||
# 3. VM count on a datastore < 2
|
||||
$templateDatastore = "ds-local-Datastore-*"
|
||||
$thresholdInGb = 400
|
||||
$vmCount = 2
|
||||
$allDatastores = Get-Datastore -Name $templateDatastore | Where-Object { $_.State -eq "Available" }
|
||||
$buildDatastore = $allDatastores | Where-Object { $_.FreeSpaceGB -ge $thresholdInGb } | Where-Object {
|
||||
$vmOnDatastore = @((Get-ChildItem -Path $_.DatastoreBrowserPath).Name -notmatch "^\.").Count
|
||||
$vmOnDatastore -lt $vmCount
|
||||
} | Select-Object -ExpandProperty Name -First 1
|
||||
|
||||
if ($buildDatastore)
|
||||
{
|
||||
Write-Host "Datastore selected successfully"
|
||||
Write-Host "##vso[task.setvariable variable=buildDatastore;issecret=true]$buildDatastore"
|
||||
}
|
||||
else
|
||||
{
|
||||
Write-Host "##vso[task.LogIssue type=error;]No datastores found for the condition"
|
||||
exit 1
|
||||
}
|
||||
@@ -1,10 +1,10 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [Default Python will be switched to 3.8 on Ubuntu 20.04 on October, 6](https://github.com/actions/virtual-environments/issues/1591) |
|
||||
| [Obsolete Android build-tools packages will be removed from Ubuntu images on October, 20](https://github.com/actions/virtual-environments/issues/1743) |
|
||||
| [Clang/LLVM 10 will be set as a default one and Clang/LLVM 6 will be deprecated for Ubuntu 20.04 on September, 23](https://github.com/actions/virtual-environments/issues/1536) |
|
||||
***
|
||||
# Ubuntu 16.04.7 LTS
|
||||
- Image Version: 20201004.1
|
||||
- Image Version: 20201012.1
|
||||
|
||||
## Installed Software
|
||||
### Language and Runtime
|
||||
@@ -13,7 +13,7 @@
|
||||
- Clang 6.0.0, 8.0.0, 9.0.1
|
||||
- Erlang 11.1
|
||||
- Mono 6.12.0.90
|
||||
- Node 12.18.4
|
||||
- Node 12.19.0
|
||||
- Python 2.7.12
|
||||
- Python3 3.5.2
|
||||
- PowerShell 7.0.3
|
||||
@@ -22,29 +22,29 @@
|
||||
- Julia 1.5.2
|
||||
|
||||
### Package Management
|
||||
- Homebrew 2.5.2
|
||||
- Gem 3.1.4
|
||||
- Helm 3.3.4
|
||||
- Homebrew 2.5.5
|
||||
- Miniconda 4.8.3
|
||||
- Helm
|
||||
- Npm 6.14.8
|
||||
- Yarn
|
||||
- Pip 8.1.1
|
||||
- Pip3 8.1.1
|
||||
- Vcpkg 2020.06.15
|
||||
- Yarn 1.22.5
|
||||
|
||||
### Project Management
|
||||
- Ant 1.9.6
|
||||
- Gradle 6.6.1
|
||||
- Maven 3.6.3
|
||||
- Sbt 1.3.13
|
||||
- Sbt 1.4.0
|
||||
|
||||
### Tools
|
||||
- 7-Zip 9.20
|
||||
- Ansible 2.9.13
|
||||
- Ansible 2.9.14
|
||||
- AzCopy10 10.6.0 (available by `azcopy10` alias)
|
||||
- AzCopy7 7.3.0 (available by `azcopy` alias)
|
||||
- Bazel 3.5.1
|
||||
- Bazelisk 1.6.1
|
||||
- Bazel 3.6.0
|
||||
- Bazelisk 1.7.1
|
||||
- CMake 3.17.0
|
||||
- CodeQL Action Bundle 2.2.5
|
||||
- curl 7.47.0
|
||||
@@ -54,46 +54,47 @@
|
||||
- Git 2.28.0
|
||||
- Git LFS 2.12.0
|
||||
- Git-ftp 1.0.2
|
||||
- Google Cloud SDK 312.0.0
|
||||
- Google Cloud SDK 313.0.1
|
||||
- Haveged 1.9.1
|
||||
- Heroku 7.44.0
|
||||
- Heroku 7.45.0
|
||||
- HHVM (HipHop VM) 4.56.1
|
||||
- jq 1.5
|
||||
- Kind 0.9.0
|
||||
- Kubectl 1.19.2
|
||||
- Kustomize 3.8.4
|
||||
- Kustomize 3.8.5
|
||||
- Leiningen 2.9.4
|
||||
- m4 1.4.17
|
||||
- Mercurial 4.4.1
|
||||
- Minikube 1.13.1
|
||||
- Newman 5.2.0
|
||||
- nvm 0.35.3
|
||||
- nvm 0.36.0
|
||||
- Packer 1.6.4
|
||||
- PhantomJS 2.1.1
|
||||
- Pulumi 2.11.2
|
||||
- R 4.0.2
|
||||
- R 4.0.3
|
||||
- Sphinx Open Source Search Server 2.2.9
|
||||
- SVN 1.9.3
|
||||
- Swig 3.0.8
|
||||
- Terraform 0.13.4
|
||||
- unzip 6.00
|
||||
- wget 1.17.1
|
||||
- yamllint 1.2.1
|
||||
- zip 3.0
|
||||
- zstd 1.3.1
|
||||
|
||||
### CLI Tools
|
||||
- Alibaba Cloud CLI 3.0.59
|
||||
- AWS CLI 1.18.152
|
||||
- Alibaba Cloud CLI 3.0.60
|
||||
- AWS CLI 1.18.157
|
||||
- AWS CLI Session manager plugin 1.1.61.0
|
||||
- AWS SAM CLI 1.4.0
|
||||
- AWS SAM CLI 1.6.2
|
||||
- Azure CLI (azure-cli) 2.12.1
|
||||
- Azure CLI (azure-devops) 0.18.0
|
||||
- GitHub CLI
|
||||
- GitHub CLI 1.1.0
|
||||
- Hub CLI 2.14.2
|
||||
- Netlify CLI 2.64.1
|
||||
- Netlify CLI 2.65.5
|
||||
- oc CLI 4.5.0
|
||||
- ORAS CLI 0.8.1
|
||||
- Vercel CLI 20.1.1
|
||||
- Vercel CLI 20.1.2
|
||||
|
||||
### Java
|
||||
| Version | Vendor | Environment Variable |
|
||||
@@ -106,7 +107,7 @@
|
||||
### PHP
|
||||
| Tool | Version |
|
||||
| -------- | ----------------------------------------- |
|
||||
| PHP | 5.6.40 7.0.33 7.1.33 7.2.33 7.3.22 7.4.10 |
|
||||
| PHP | 5.6.40 7.0.33 7.1.33 7.2.34 7.3.23 7.4.11 |
|
||||
| Composer | 1.10.13 |
|
||||
| PHPUnit | 7.5.20 |
|
||||
|
||||
@@ -116,22 +117,22 @@
|
||||
- Stack 2.3.3
|
||||
|
||||
### Rust Tools
|
||||
- Rust 1.46.0
|
||||
- Rust 1.47.0
|
||||
- Rustup 1.22.1
|
||||
- Rustdoc 1.46.0
|
||||
- Cargo 1.46.0
|
||||
- Rustdoc 1.47.0
|
||||
- Cargo 1.47.0
|
||||
|
||||
#### Packages
|
||||
- Bindgen 0.55.1
|
||||
- Cargo audit 0.12.1
|
||||
- Cargo outdated 0.9.11
|
||||
- Cargo clippy 0.0.212
|
||||
- Cbindgen 0.14.6
|
||||
- Rustfmt 1.4.18
|
||||
- Cbindgen 0.15.0
|
||||
- Rustfmt 1.4.20
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 85.0.4183.121
|
||||
- ChromeDriver 85.0.4183.87
|
||||
- Google Chrome 86.0.4240.75
|
||||
- ChromeDriver 86.0.4240.22
|
||||
- Mozilla Firefox 81.0
|
||||
- Geckodriver 0.27.0
|
||||
|
||||
@@ -167,6 +168,7 @@
|
||||
- 3.6.12
|
||||
- 3.7.9
|
||||
- 3.8.6
|
||||
- 3.9.0
|
||||
|
||||
#### PyPy
|
||||
- 2.7.13 [PyPy 7.3.2]
|
||||
@@ -175,8 +177,8 @@
|
||||
#### Node.js
|
||||
- 8.17.0
|
||||
- 10.22.1
|
||||
- 12.18.4
|
||||
- 14.13.0
|
||||
- 12.19.0
|
||||
- 14.13.1
|
||||
|
||||
#### Go
|
||||
- 1.11.13
|
||||
@@ -190,19 +192,19 @@
|
||||
- 1.72.0
|
||||
|
||||
### Android
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android SDK Platform-Tools | 30.0.4 |
|
||||
| Android SDK Tools | 26.1.1 |
|
||||
| Android SDK Platforms | 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)<br>android-22 (rev 2)<br>android-21 (rev 2)<br>android-19 (rev 4)<br>android-17 (rev 3)<br>android-15 (rev 5)<br>android-10 (rev 2) |
|
||||
| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2<br>29.0.0 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<br>22.0.1<br>21.1.2<br>20.0.0<br>19.1.0<br>17.0.0 |
|
||||
| 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 |
|
||||
| NDK | 21.3.6528147 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| Google Play services | 49 |
|
||||
| Google Repository | 58 |
|
||||
| SDK Patch Applier v4 | 1 |
|
||||
| CMake | 3.10.2<br>3.6.4111459 |
|
||||
| Package Name | Version |
|
||||
| -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android SDK Platform-Tools | 30.0.4 |
|
||||
| Android SDK Tools | 26.1.1 |
|
||||
| Android SDK Platforms | 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)<br>android-22 (rev 2)<br>android-21 (rev 2)<br>android-20 (rev 2)<br>android-19 (rev 4)<br>android-18 (rev 3)<br>android-17 (rev 3)<br>android-16 (rev 5)<br>android-15 (rev 5)<br>android-14 (rev 4)<br>android-13 (rev 1)<br>android-12 (rev 3)<br>android-11 (rev 2)<br>android-10 (rev 2) |
|
||||
| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2<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 23.0.0<br>22.0.1 22.0.0<br>21.1.2 21.0.0 21.0.1 21.0.2 21.1.0 21.1.1<br>20.0.0<br>19.1.0 19.0.0 19.0.1 19.0.2 19.0.3<br>18.0.1 18.1.0 18.1.1<br>17.0.0 |
|
||||
| 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 |
|
||||
| NDK | 21.3.6528147 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| Google Play services | 49 |
|
||||
| Google Repository | 58 |
|
||||
| SDK Patch Applier v4 | 1 |
|
||||
| CMake | 3.10.2<br>3.6.4111459 |
|
||||
|
||||
### Cached Docker images
|
||||
- alpine:3.7
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [Default Python will be switched to 3.8 on Ubuntu 20.04 on October, 6](https://github.com/actions/virtual-environments/issues/1591) |
|
||||
| [Obsolete Android build-tools packages will be removed from Ubuntu images on October, 20](https://github.com/actions/virtual-environments/issues/1743) |
|
||||
| [Clang/LLVM 10 will be set as a default one and Clang/LLVM 6 will be deprecated for Ubuntu 20.04 on September, 23](https://github.com/actions/virtual-environments/issues/1536) |
|
||||
***
|
||||
# Ubuntu 18.04.5 LTS
|
||||
- Image Version: 20201004.1
|
||||
- Image Version: 20201012.1
|
||||
|
||||
## Installed Software
|
||||
### Language and Runtime
|
||||
@@ -13,7 +13,7 @@
|
||||
- Clang 6.0.0, 8.0.0, 9.0.0
|
||||
- Erlang 11.1
|
||||
- Mono 6.12.0.90
|
||||
- Node 12.18.4
|
||||
- Node 12.19.0
|
||||
- Python 2.7.17
|
||||
- Python3 3.6.9
|
||||
- PowerShell 7.0.3
|
||||
@@ -22,30 +22,31 @@
|
||||
- Julia 1.5.2
|
||||
|
||||
### Package Management
|
||||
- Homebrew 2.5.2
|
||||
- Gem 3.1.4
|
||||
- Helm 3.3.4
|
||||
- Homebrew 2.5.5
|
||||
- Miniconda 4.8.3
|
||||
- Helm
|
||||
- Npm 6.14.8
|
||||
- Yarn
|
||||
- Pip 9.0.1
|
||||
- Pip3 9.0.1
|
||||
- Pipx 0.15.5.1
|
||||
- Vcpkg 2020.06.15
|
||||
- Yarn 1.22.5
|
||||
|
||||
### Project Management
|
||||
- Ant 1.10.5
|
||||
- Gradle 6.6.1
|
||||
- Maven 3.6.3
|
||||
- Sbt 1.3.13
|
||||
- Sbt 1.4.0
|
||||
|
||||
### Tools
|
||||
- 7-Zip 16.02
|
||||
- Ansible 2.9.13
|
||||
- Ansible 2.9.14
|
||||
- AzCopy10 10.6.0 (available by `azcopy10` alias)
|
||||
- AzCopy7 7.3.0 (available by `azcopy` alias)
|
||||
- Bazel 3.5.1
|
||||
- Bazelisk 1.6.1
|
||||
- Buildah
|
||||
- Bazel 3.6.0
|
||||
- Bazelisk 1.7.1
|
||||
- Buildah 1.16.4
|
||||
- CMake 3.17.0
|
||||
- CodeQL Action Bundle 2.2.5
|
||||
- curl 7.58.0
|
||||
@@ -55,25 +56,25 @@
|
||||
- Git 2.28.0
|
||||
- Git LFS 2.12.0
|
||||
- Git-ftp 1.3.1
|
||||
- Google Cloud SDK 312.0.0
|
||||
- Google Cloud SDK 313.0.1
|
||||
- Haveged 1.9.1
|
||||
- Heroku 7.44.0
|
||||
- HHVM (HipHop VM) 4.77.0
|
||||
- Heroku 7.45.0
|
||||
- HHVM (HipHop VM) 4.78.0
|
||||
- jq 1.5
|
||||
- Kind 0.9.0
|
||||
- Kubectl 1.19.2
|
||||
- Kustomize 3.8.4
|
||||
- Kustomize 3.8.5
|
||||
- Leiningen 2.9.4
|
||||
- m4 1.4.18
|
||||
- Mercurial 4.5.3
|
||||
- Minikube 1.13.1
|
||||
- Newman 5.2.0
|
||||
- nvm 0.35.3
|
||||
- nvm 0.36.0
|
||||
- Packer 1.6.4
|
||||
- PhantomJS 2.1.1
|
||||
- Podman
|
||||
- Podman 2.1.1
|
||||
- Pulumi 2.11.2
|
||||
- R 4.0.2
|
||||
- R 4.0.3
|
||||
- Skopeo 1.2.0
|
||||
- Sphinx Open Source Search Server 2.2.11
|
||||
- SVN 1.9.7
|
||||
@@ -81,22 +82,23 @@
|
||||
- Terraform 0.13.4
|
||||
- unzip 6.00
|
||||
- wget 1.19.4
|
||||
- yamllint 1.25.0
|
||||
- zip 3.0
|
||||
- zstd 1.3.3
|
||||
|
||||
### CLI Tools
|
||||
- Alibaba Cloud CLI 3.0.59
|
||||
- AWS CLI 1.18.152
|
||||
- Alibaba Cloud CLI 3.0.60
|
||||
- AWS CLI 1.18.157
|
||||
- AWS CLI Session manager plugin 1.1.61.0
|
||||
- AWS SAM CLI 1.4.0
|
||||
- AWS SAM CLI 1.6.2
|
||||
- Azure CLI (azure-cli) 2.12.1
|
||||
- Azure CLI (azure-devops) 0.18.0
|
||||
- GitHub CLI
|
||||
- GitHub CLI 1.1.0
|
||||
- Hub CLI 2.14.2
|
||||
- Netlify CLI 2.64.1
|
||||
- Netlify CLI 2.65.5
|
||||
- oc CLI 4.5.0
|
||||
- ORAS CLI 0.8.1
|
||||
- Vercel CLI 20.1.1
|
||||
- Vercel CLI 20.1.2
|
||||
|
||||
### Java
|
||||
| Version | Vendor | Environment Variable |
|
||||
@@ -109,7 +111,7 @@
|
||||
### PHP
|
||||
| Tool | Version |
|
||||
| -------- | --------------------------- |
|
||||
| PHP | 7.1.33 7.2.33 7.3.22 7.4.10 |
|
||||
| PHP | 7.1.33 7.2.34 7.3.23 7.4.11 |
|
||||
| Composer | 1.10.13 |
|
||||
| PHPUnit | 7.5.20 |
|
||||
|
||||
@@ -119,22 +121,22 @@
|
||||
- Stack 2.3.3
|
||||
|
||||
### Rust Tools
|
||||
- Rust 1.46.0
|
||||
- Rust 1.47.0
|
||||
- Rustup 1.22.1
|
||||
- Rustdoc 1.46.0
|
||||
- Cargo 1.46.0
|
||||
- Rustdoc 1.47.0
|
||||
- Cargo 1.47.0
|
||||
|
||||
#### Packages
|
||||
- Bindgen 0.55.1
|
||||
- Cargo audit 0.12.1
|
||||
- Cargo outdated 0.9.11
|
||||
- Cargo clippy 0.0.212
|
||||
- Cbindgen 0.14.6
|
||||
- Rustfmt 1.4.18
|
||||
- Cbindgen 0.15.0
|
||||
- Rustfmt 1.4.20
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 85.0.4183.121
|
||||
- ChromeDriver 85.0.4183.87
|
||||
- Google Chrome 86.0.4240.75
|
||||
- ChromeDriver 86.0.4240.22
|
||||
- Mozilla Firefox 81.0
|
||||
- Geckodriver 0.27.0
|
||||
|
||||
@@ -170,6 +172,7 @@
|
||||
- 3.6.12
|
||||
- 3.7.9
|
||||
- 3.8.6
|
||||
- 3.9.0
|
||||
|
||||
#### PyPy
|
||||
- 2.7.13 [PyPy 7.3.2]
|
||||
@@ -178,8 +181,8 @@
|
||||
#### Node.js
|
||||
- 8.17.0
|
||||
- 10.22.1
|
||||
- 12.18.4
|
||||
- 14.13.0
|
||||
- 12.19.0
|
||||
- 14.13.1
|
||||
|
||||
#### Go
|
||||
- 1.11.13
|
||||
@@ -193,19 +196,19 @@
|
||||
- 1.72.0
|
||||
|
||||
### Android
|
||||
| Package Name | Version |
|
||||
| -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android SDK Platform-Tools | 30.0.4 |
|
||||
| Android SDK Tools | 26.1.1 |
|
||||
| Android SDK Platforms | 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)<br>android-22 (rev 2)<br>android-21 (rev 2)<br>android-19 (rev 4)<br>android-17 (rev 3) |
|
||||
| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2<br>29.0.0 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<br>22.0.1<br>21.1.2<br>20.0.0<br>19.1.0<br>17.0.0 |
|
||||
| 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 |
|
||||
| NDK | 21.3.6528147 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| Google Play services | 49 |
|
||||
| Google Repository | 58 |
|
||||
| SDK Patch Applier v4 | 1 |
|
||||
| CMake | 3.10.2<br>3.6.4111459 |
|
||||
| Package Name | Version |
|
||||
| -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Android SDK Platform-Tools | 30.0.4 |
|
||||
| Android SDK Tools | 26.1.1 |
|
||||
| Android SDK Platforms | 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)<br>android-22 (rev 2)<br>android-21 (rev 2)<br>android-20 (rev 2)<br>android-19 (rev 4)<br>android-18 (rev 3)<br>android-17 (rev 3) |
|
||||
| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2<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 23.0.0<br>22.0.1 22.0.0<br>21.1.2 21.0.0 21.0.1 21.0.2 21.1.0 21.1.1<br>20.0.0<br>19.1.0 19.0.0 19.0.1 19.0.2 19.0.3<br>18.0.1 18.1.0 18.1.1<br>17.0.0 |
|
||||
| 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 |
|
||||
| NDK | 21.3.6528147 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| Google Play services | 49 |
|
||||
| Google Repository | 58 |
|
||||
| SDK Patch Applier v4 | 1 |
|
||||
| CMake | 3.10.2<br>3.6.4111459 |
|
||||
|
||||
### Cached Docker images
|
||||
- alpine:3.7
|
||||
@@ -225,6 +228,6 @@
|
||||
- ubuntu:14.04
|
||||
|
||||
### Installed apt packages
|
||||
- bison, brotli, bzip2, curl, dbus, dnsutils, dpkg, fakeroot, file, flex, ftp, gnupg2, iproute2, iputils-ping, jq, lib32z1, libc++-dev, libc++abi-dev, libcurl3, libgbm-dev, libgconf-2-4, libgtk-3-0, libsecret-1-dev, libsqlite3-dev, libunwind8, libxkbfile-dev, libxss1, locales, m4, netcat, openssh-client, parallel, patchelf, pkg-config, rpm, rsync, shellcheck, sqlite3, ssh, sudo, telnet, texinfo, time, tk, tzdata, unzip, upx, wget, xorriso, xvfb, xz-utils, yamllint, zip, zstd, zsync
|
||||
- bison, brotli, bzip2, curl, dbus, dnsutils, dpkg, fakeroot, file, flex, ftp, gnupg2, iproute2, iputils-ping, jq, lib32z1, libc++-dev, libc++abi-dev, libcurl3, libgbm-dev, libgconf-2-4, libgtk-3-0, libsecret-1-dev, libsqlite3-dev, libunwind8, libxkbfile-dev, libxss1, locales, m4, netcat, openssh-client, parallel, patchelf, pkg-config, rpm, rsync, shellcheck, sqlite3, ssh, sudo, telnet, texinfo, time, tk, tzdata, unzip, upx, wget, xorriso, xvfb, xz-utils, zip, zstd, zsync
|
||||
|
||||
|
||||
|
||||
@@ -1,50 +1,51 @@
|
||||
| Announcements |
|
||||
|-|
|
||||
| [Default Python will be switched to 3.8 on Ubuntu 20.04 on October, 6](https://github.com/actions/virtual-environments/issues/1591) |
|
||||
| [Obsolete Android build-tools packages will be removed from Ubuntu images on October, 20](https://github.com/actions/virtual-environments/issues/1743) |
|
||||
| [Clang/LLVM 10 will be set as a default one and Clang/LLVM 6 will be deprecated for Ubuntu 20.04 on September, 23](https://github.com/actions/virtual-environments/issues/1536) |
|
||||
***
|
||||
# Ubuntu 20.04.1 LTS
|
||||
- Image Version: 20201004.1
|
||||
- Image Version: 20201012.1
|
||||
|
||||
## Installed Software
|
||||
### Language and Runtime
|
||||
- GNU C++ 7.5.0, 8.4.0, 9.3.0, 10.0.1
|
||||
- GNU C++ 7.5.0, 8.4.0, 9.3.0, 10.2.0
|
||||
- GNU Fortran 8.4.0, 9.3.0
|
||||
- Clang 8.0.1, 9.0.1, 10.0.0
|
||||
- Erlang 11.1
|
||||
- Mono 6.12.0.90
|
||||
- Node 12.18.4
|
||||
- Python 3.8.2
|
||||
- Python3 3.8.2
|
||||
- Node 12.19.0
|
||||
- Python 3.8.5
|
||||
- Python3 3.8.5
|
||||
- PowerShell 7.0.3
|
||||
- Ruby 2.7.0p0
|
||||
- Swift 5.3
|
||||
- Julia 1.5.2
|
||||
|
||||
### Package Management
|
||||
- Homebrew 2.5.2
|
||||
- Gem 3.1.2
|
||||
- Miniconda 4.8.3
|
||||
- Helm 3.3.4
|
||||
- Homebrew 2.5.5
|
||||
- Miniconda 4.8.3
|
||||
- Npm 6.14.8
|
||||
- Yarn 1.22.5
|
||||
- Pip 20.0.2
|
||||
- Pip3 20.0.2
|
||||
- Pipx 0.15.5.1
|
||||
- Vcpkg 2020.06.15
|
||||
- Yarn 1.22.5
|
||||
|
||||
### Project Management
|
||||
- Ant 1.10.7
|
||||
- Gradle 6.6.1
|
||||
- Maven 3.6.3
|
||||
- Sbt 1.3.13
|
||||
- Sbt 1.4.0
|
||||
|
||||
### Tools
|
||||
- 7-Zip 16.02
|
||||
- Ansible 2.9.6
|
||||
- AzCopy10 10.6.0 (available by `azcopy10` alias)
|
||||
- AzCopy7 7.3.0 (available by `azcopy` alias)
|
||||
- Bazel 3.5.1
|
||||
- Bazelisk 1.6.1
|
||||
- Bazel 3.6.0
|
||||
- Bazelisk 1.7.1
|
||||
- Buildah 1.16.4
|
||||
- CMake 3.17.0
|
||||
- CodeQL Action Bundle 2.2.5
|
||||
@@ -55,25 +56,25 @@
|
||||
- Git 2.28.0
|
||||
- Git LFS 2.12.0
|
||||
- Git-ftp 1.6.0
|
||||
- Google Cloud SDK 312.0.0
|
||||
- Google Cloud SDK 313.0.1
|
||||
- Haveged 1.9.1
|
||||
- Heroku 7.44.0
|
||||
- HHVM (HipHop VM) 4.77.0
|
||||
- Heroku 7.45.0
|
||||
- HHVM (HipHop VM) 4.78.0
|
||||
- jq 1.6
|
||||
- Kind 0.9.0
|
||||
- Kubectl 1.19.2
|
||||
- Kustomize 3.8.4
|
||||
- Kustomize 3.8.5
|
||||
- Leiningen 2.9.4
|
||||
- m4 1.4.18
|
||||
- Mercurial 5.3.1
|
||||
- Minikube 1.13.1
|
||||
- Newman 5.2.0
|
||||
- nvm 0.35.3
|
||||
- nvm 0.36.0
|
||||
- Packer 1.6.4
|
||||
- PhantomJS 2.1.1
|
||||
- Podman 2.1.1
|
||||
- Pulumi 2.11.2
|
||||
- R 4.0.2
|
||||
- R 4.0.3
|
||||
- Skopeo 1.2.0
|
||||
- Sphinx Open Source Search Server 2.2.11
|
||||
- SVN 1.13.0
|
||||
@@ -81,22 +82,23 @@
|
||||
- Terraform 0.13.4
|
||||
- unzip 6.00
|
||||
- wget 1.20.3
|
||||
- yamllint 1.25.0
|
||||
- zip 3.0
|
||||
- zstd 1.4.4
|
||||
|
||||
### CLI Tools
|
||||
- Alibaba Cloud CLI 3.0.59
|
||||
- AWS CLI 2.0.54
|
||||
- Alibaba Cloud CLI 3.0.60
|
||||
- AWS CLI 2.0.56
|
||||
- AWS CLI Session manager plugin 1.1.61.0
|
||||
- AWS SAM CLI 1.4.0
|
||||
- AWS SAM CLI 1.6.2
|
||||
- Azure CLI (azure-cli) 2.12.1
|
||||
- Azure CLI (azure-devops) 0.18.0
|
||||
- GitHub CLI 1.0.0
|
||||
- GitHub CLI 1.1.0
|
||||
- Hub CLI 2.14.2
|
||||
- Netlify CLI 2.64.1
|
||||
- Netlify CLI 2.65.5
|
||||
- oc CLI 4.5.0
|
||||
- ORAS CLI 0.8.1
|
||||
- Vercel CLI 20.1.1
|
||||
- Vercel CLI 20.1.2
|
||||
|
||||
### Java
|
||||
| Version | Vendor | Environment Variable |
|
||||
@@ -107,7 +109,7 @@
|
||||
### PHP
|
||||
| Tool | Version |
|
||||
| -------- | ------- |
|
||||
| PHP | 7.4.10 |
|
||||
| PHP | 7.4.11 |
|
||||
| Composer | 1.10.13 |
|
||||
| PHPUnit | 7.5.20 |
|
||||
|
||||
@@ -117,22 +119,22 @@
|
||||
- Stack 2.3.3
|
||||
|
||||
### Rust Tools
|
||||
- Rust 1.46.0
|
||||
- Rust 1.47.0
|
||||
- Rustup 1.22.1
|
||||
- Rustdoc 1.46.0
|
||||
- Cargo 1.46.0
|
||||
- Rustdoc 1.47.0
|
||||
- Cargo 1.47.0
|
||||
|
||||
#### Packages
|
||||
- Bindgen 0.55.1
|
||||
- Cargo audit 0.12.1
|
||||
- Cargo outdated 0.9.11
|
||||
- Cargo clippy 0.0.212
|
||||
- Cbindgen 0.14.6
|
||||
- Rustfmt 1.4.18
|
||||
- Cbindgen 0.15.0
|
||||
- Rustfmt 1.4.20
|
||||
|
||||
### Browsers and Drivers
|
||||
- Google Chrome 85.0.4183.121
|
||||
- ChromeDriver 85.0.4183.87
|
||||
- Google Chrome 86.0.4240.75
|
||||
- ChromeDriver 86.0.4240.22
|
||||
- Mozilla Firefox 81.0
|
||||
- Geckodriver 0.27.0
|
||||
|
||||
@@ -167,6 +169,7 @@
|
||||
- 3.6.12
|
||||
- 3.7.9
|
||||
- 3.8.6
|
||||
- 3.9.0
|
||||
|
||||
#### PyPy
|
||||
- 2.7.13 [PyPy 7.3.2]
|
||||
@@ -175,26 +178,26 @@
|
||||
#### Node.js
|
||||
- 8.17.0
|
||||
- 10.22.1
|
||||
- 12.18.4
|
||||
- 14.13.0
|
||||
- 12.19.0
|
||||
- 14.13.1
|
||||
|
||||
#### Go
|
||||
- 1.14.9
|
||||
- 1.15.2
|
||||
|
||||
### Android
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
||||
| Android SDK Platform-Tools | 30.0.4 |
|
||||
| Android SDK Tools | 26.1.1 |
|
||||
| Android SDK Platforms | android-30 (rev 3)<br>android-29 (rev 5)<br>android-28 (rev 6)<br>android-27 (rev 3) |
|
||||
| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2<br>29.0.0 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 |
|
||||
| NDK | 21.3.6528147 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| Google Play services | 49 |
|
||||
| Google Repository | 58 |
|
||||
| SDK Patch Applier v4 | 1 |
|
||||
| CMake | 3.10.2 |
|
||||
| Package Name | Version |
|
||||
| -------------------------- | ----------------------------------------------------------------------------------------------------------------- |
|
||||
| Android SDK Platform-Tools | 30.0.4 |
|
||||
| Android SDK Tools | 26.1.1 |
|
||||
| Android SDK Platforms | android-30 (rev 3)<br>android-29 (rev 5)<br>android-28 (rev 6)<br>android-27 (rev 3) |
|
||||
| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2<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 |
|
||||
| NDK | 21.3.6528147 |
|
||||
| Android Support Repository | 47.0.0 |
|
||||
| Google Play services | 49 |
|
||||
| Google Repository | 58 |
|
||||
| SDK Patch Applier v4 | 1 |
|
||||
| CMake | 3.10.2 |
|
||||
|
||||
### Cached Docker images
|
||||
- alpine:3.7
|
||||
@@ -214,6 +217,6 @@
|
||||
- ubuntu:14.04
|
||||
|
||||
### Installed apt packages
|
||||
- bison, brotli, bzip2, curl, dbus, dnsutils, dpkg, fakeroot, file, flex, ftp, gnupg2, iproute2, iputils-ping, jq, lib32z1, libc++-dev, libc++abi-dev, libcurl4, libgbm-dev, libgconf-2-4, libgtk-3-0, libsecret-1-dev, libsqlite3-dev, libunwind8, libxkbfile-dev, libxss1, locales, m4, netcat, openssh-client, parallel, patchelf, pkg-config, python-is-python3, rpm, rsync, shellcheck, sqlite3, ssh, sudo, telnet, texinfo, time, tk, tzdata, unzip, upx, wget, xorriso, xvfb, xz-utils, yamllint, zip, zstd, zsync
|
||||
- bison, brotli, bzip2, curl, dbus, dnsutils, dpkg, fakeroot, file, flex, ftp, gnupg2, iproute2, iputils-ping, jq, lib32z1, libc++-dev, libc++abi-dev, libcurl4, libgbm-dev, libgconf-2-4, libgtk-3-0, libsecret-1-dev, libsqlite3-dev, libunwind8, libxkbfile-dev, libxss1, locales, m4, netcat, openssh-client, parallel, patchelf, pkg-config, python-is-python3, rpm, rsync, shellcheck, sqlite3, ssh, sudo, telnet, texinfo, time, tk, tzdata, unzip, upx, wget, xorriso, xvfb, xz-utils, zip, zstd, zsync
|
||||
|
||||
|
||||
|
||||
11
images/linux/post-generation/homebrew-permissions.sh
Normal file
11
images/linux/post-generation/homebrew-permissions.sh
Normal file
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Fix permissions for Homebrew
|
||||
# https://github.com/actions/virtual-environments/issues/1568
|
||||
brew_folder="/home/linuxbrew/"
|
||||
if [ -d "$brew_folder" ]; then
|
||||
brew_folder_owner=$(ls -ld $brew_folder | awk '{print $3}')
|
||||
if [ "$USER" != "$brew_folder_owner" ]; then
|
||||
chown "$USER":docker -R $brew_folder
|
||||
fi
|
||||
fi
|
||||
11
images/linux/post-generation/rust-permissions.sh
Normal file
11
images/linux/post-generation/rust-permissions.sh
Normal file
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Fix permissions for the Rust folder
|
||||
# https://github.com/actions/virtual-environments/issues/572
|
||||
rust_folder="/usr/share/rust"
|
||||
if [ -d "$rust_folder" ]; then
|
||||
rust_folder_owner=$(ls -ld $rust_folder | awk '{print $3}')
|
||||
if [ "$USER" != "$rust_folder_owner" ]; then
|
||||
chown "$USER":docker -R $rust_folder
|
||||
fi
|
||||
fi
|
||||
@@ -249,5 +249,7 @@ function Get-AptPackages {
|
||||
|
||||
function Get-PipxVersion {
|
||||
$result = (Get-CommandResult "pipx --version").Output
|
||||
return "Pipx $result"
|
||||
$result -match "(?<version>\d+\.\d+\.\d+\.?\d*)" | Out-Null
|
||||
$pipxVersion = $Matches.Version
|
||||
return "Pipx $pipxVersion"
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
|
||||
echo '* soft nofile 65536' >> /etc/security/limits.conf
|
||||
echo '* hard nofile 65536' >> /etc/security/limits.conf
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: reboot.sh
|
||||
## Desc: Reboot VM
|
||||
################################################################################
|
||||
|
||||
echo "Reboot VM"
|
||||
sudo reboot
|
||||
sudo reboot
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: 7-zip.sh
|
||||
## Desc: Installs 7-zip
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install 7-Zip
|
||||
apt-get update -y
|
||||
apt-get install -y p7zip p7zip-full p7zip-rar
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: aliyun-cli.sh
|
||||
## Desc: Installs Alibaba Cloud CLI
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install Alibaba Cloud CLI
|
||||
URL=$(curl -s https://api.github.com/repos/aliyun/aliyun-cli/releases/latest | jq -r '.assets[].browser_download_url | select(contains("aliyun-cli-linux"))')
|
||||
wget -P /tmp $URL
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: android.sh
|
||||
## Desc: Installs Android SDK
|
||||
################################################################################
|
||||
|
||||
set -e
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/os.sh
|
||||
source $HELPER_SCRIPTS/install.sh
|
||||
@@ -69,7 +67,7 @@ additional=$(jq -r '.android.additional_tools[]' $toolset)
|
||||
components=( "${extras[@]}" "${addons[@]}" "${additional[@]}" )
|
||||
|
||||
availablePlatforms=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android-" | cut -d"|" -f 1))
|
||||
allBuildTools=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list --include_obsolete | grep "build-tools;" | cut -d"|" -f 1 | sort -u))
|
||||
allBuildTools=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | grep "build-tools;" | cut -d"|" -f 1 | sort -u))
|
||||
availableBuildTools=$(echo ${allBuildTools[@]//*rc[0-9]/})
|
||||
|
||||
filter_components_by_version $minimumPlatformVersion "${availablePlatforms[@]}"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: ansible.sh
|
||||
## Desc: Installs Ansible
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: aws-sam-cli.sh
|
||||
## Desc: Installs AWS SAM CLI
|
||||
## Requires Python >=3.6, must be run as non-root user after toolset installation
|
||||
################################################################################
|
||||
|
||||
|
||||
# Download latest aws sam cli sources
|
||||
TarballUrl=$(curl -s https://api.github.com/repos/aws/aws-sam-cli/releases/latest | jq -r '.tarball_url')
|
||||
TarballPath="/tmp/aws-sam-cli.tar.gz"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: aws.sh
|
||||
## Desc: Installs the AWS CLI
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: azcopy.sh
|
||||
## Desc: Installs AzCopy
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install AzCopy7
|
||||
wget -O azcopy.tar.gz https://aka.ms/downloadazcopylinux64
|
||||
tar -xf azcopy.tar.gz
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: azpowershell.sh
|
||||
## Desc: Installed Azure PowerShell
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: azure-cli.sh
|
||||
## Desc: Installed Azure CLI (az)
|
||||
################################################################################
|
||||
|
||||
|
||||
# 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
|
||||
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: azure-devops-cli.sh
|
||||
## Desc: Installed Azure DevOps CLI (az devops)
|
||||
################################################################################
|
||||
|
||||
|
||||
# AZURE_EXTENSION_DIR shell variable defines where modules are installed
|
||||
# https://docs.microsoft.com/en-us/cli/azure/azure-cli-extensions-overview
|
||||
export AZURE_EXTENSION_DIR=/opt/az/azcliextensions
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: basic.sh
|
||||
## Desc: Installs basic command line utilities and dev packages
|
||||
################################################################################
|
||||
|
||||
set -e
|
||||
|
||||
toolset="$INSTALLER_SCRIPT_FOLDER/toolset.json"
|
||||
common_packages=$(jq -r ".apt.common_packages[]" $toolset)
|
||||
cmd_packages=$(jq -r ".apt.cmd_packages[]" $toolset)
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: bazel.sh
|
||||
## Desc: Installs Bazel and Bazelisk (A user-friendly launcher for Bazel)
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install bazel
|
||||
curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add -
|
||||
echo "deb [arch=amd64] https://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: build-essential.sh
|
||||
## Desc: Installs build-essential package
|
||||
################################################################################
|
||||
|
||||
|
||||
source $HELPER_SCRIPTS/install.sh
|
||||
|
||||
PACKAGE=build-essential
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: clang.sh
|
||||
## Desc: Installs Clang compiler
|
||||
################################################################################
|
||||
set -e
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
|
||||
# before cleanup
|
||||
before=$(df / -Pm | awk 'NR==2{print $4}')
|
||||
@@ -27,4 +27,4 @@ after=$(df / -Pm | awk 'NR==2{print $4}')
|
||||
# display size
|
||||
echo "Before: $before MB"
|
||||
echo "After : $after MB"
|
||||
echo "Delta : $(($after-$before)) MB"
|
||||
echo "Delta : $(($after-$before)) MB"
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: cmake.sh
|
||||
## Desc: Installs CMake
|
||||
################################################################################
|
||||
|
||||
|
||||
# Test to see if the software in question is already installed, if not install it
|
||||
echo "Checking to see if the installer script has already been run"
|
||||
if command -v cmake; then
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: codeql-bundle.sh
|
||||
## Desc: Install the CodeQL CLI Bundle to the toolcache.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: snap-environment.sh
|
||||
## Desc: Update /etc/environment to include /snap/bin in PATH
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash -e
|
||||
|
||||
#Set ImageVersion and ImageOS env variables
|
||||
echo ImageVersion=$IMAGE_VERSION | tee -a /etc/environment
|
||||
echo ImageOS=$IMAGE_OS | tee -a /etc/environment
|
||||
@@ -22,4 +24,4 @@ chmod -R 777 $AGENT_TOOLSDIRECTORY
|
||||
|
||||
# https://www.elastic.co/guide/en/elasticsearch/reference/current/vm-max-map-count.html
|
||||
# https://www.suse.com/support/kb/doc/?id=000016692
|
||||
echo 'vm.max_map_count=262144' | tee -a /etc/sysctl.conf
|
||||
echo 'vm.max_map_count=262144' | tee -a /etc/sysctl.conf
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: containers.sh
|
||||
## Desc: Installs container tools: podman, buildah and skopeo onto the image
|
||||
################################################################################
|
||||
|
||||
|
||||
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
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: docker-compose.sh
|
||||
## Desc: Installs Docker Compose
|
||||
################################################################################
|
||||
|
||||
|
||||
URL=$(curl -s https://api.github.com/repos/docker/compose/releases/latest | jq -r '.assets[].browser_download_url | select(contains("docker-compose-Linux-x86_64"))' | head -1)
|
||||
|
||||
# Install latest docker-compose from releases
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: docker-moby.sh
|
||||
## Desc: Installs docker onto the image
|
||||
################################################################################
|
||||
set -e
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/install.sh
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: dotnetcore-sdk.sh
|
||||
## Desc: Installs .NET Core SDK
|
||||
@@ -25,7 +25,6 @@ mksamples()
|
||||
sample=$2
|
||||
mkdir "$sdk"
|
||||
cd "$sdk" || exit
|
||||
set -e
|
||||
dotnet help
|
||||
dotnet new globaljson --sdk-version "$sdk"
|
||||
dotnet new "$sample"
|
||||
@@ -36,8 +35,6 @@ mksamples()
|
||||
rm -rf "$sdk"
|
||||
}
|
||||
|
||||
set -e
|
||||
|
||||
# Disable telemetry
|
||||
export DOTNET_CLI_TELEMETRY_OPTOUT=1
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
|
||||
# This is the anti-frontend. It never interacts with you at all,
|
||||
# and makes the default answers be used for all questions. It
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: erlang.sh
|
||||
## Desc: Installs erlang
|
||||
################################################################################
|
||||
|
||||
|
||||
source_list=/etc/apt/sources.list.d/eslerlang.list
|
||||
|
||||
# Install Erlang
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: example.sh
|
||||
## Desc: This is an example script that can be copied to add a new software
|
||||
## installer to the image
|
||||
################################################################################
|
||||
|
||||
|
||||
# Test to see if the software in question is already installed, if not install it
|
||||
echo "Checking to see if the installer script has already been run"
|
||||
if [ -z $EXAMPLE_VAR ]; then
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: firefox.sh
|
||||
## Desc: Installs Firefox
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install Firefox
|
||||
apt-get install -y firefox
|
||||
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: gcc.sh
|
||||
## Desc: Installs GNU C++
|
||||
################################################################################
|
||||
|
||||
set -e
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: gfortran.sh
|
||||
## Desc: Installs GNU Fortran
|
||||
################################################################################
|
||||
|
||||
|
||||
function InstallFortran {
|
||||
version=$1
|
||||
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: git.sh
|
||||
## Desc: Installs Git
|
||||
################################################################################
|
||||
set -e
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source "$HELPER_SCRIPTS"/install.sh
|
||||
@@ -52,3 +51,7 @@ else
|
||||
echo "[!] Hub CLI was not installed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Add well-known SSH host keys to known_hosts
|
||||
ssh-keyscan -t rsa github.com >> /etc/ssh/ssh_known_hosts
|
||||
ssh-keyscan -t rsa ssh.dev.azure.com >> /etc/ssh/ssh_known_hosts
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: github-cli.sh
|
||||
## Desc: Installs GitHub CLI
|
||||
## Must be run as non-root user after homebrew
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install GitHub CLI
|
||||
url=$(curl -s https://api.github.com/repos/cli/cli/releases/latest | jq -r '.assets[].browser_download_url|select(contains("linux") and contains("amd64") and contains(".deb"))')
|
||||
wget $url
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: google-chrome.sh
|
||||
## Desc: Installs google-chrome and chromedriver
|
||||
################################################################################
|
||||
|
||||
|
||||
LSB_RELEASE=$(lsb_release -rs)
|
||||
|
||||
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: google-cloud-sdk.sh
|
||||
## Desc: Installs the Google Cloud SDK
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install the Google Cloud SDK
|
||||
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] http://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
|
||||
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: haskell.sh
|
||||
## Desc: Installs Haskell
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: heroku.sh
|
||||
## Desc: Installs Heroku CLI
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install Heroku CLI
|
||||
curl https://cli-assets.heroku.com/install-ubuntu.sh | sh
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: hhvm.sh
|
||||
## Desc: Installs hhvm
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: homebrew-validate.sh
|
||||
## Desc: Validate the Homebrew can run after reboot without extra configuring
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: homebrew.sh
|
||||
## Desc: Installs the Homebrew on Linux
|
||||
|
||||
@@ -1,13 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: hosted-tool-cache.sh
|
||||
## Desc: Downloads and installs hosted tools cache
|
||||
################################################################################
|
||||
|
||||
|
||||
# Fail out if any setups fail
|
||||
set -e
|
||||
|
||||
TOOLCACHE_REGISTRY="npm.pkg.github.com"
|
||||
|
||||
echo "Configure npm to use github package registry for '@actions' scope"
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: image-magick.sh
|
||||
## Desc: Installs ImageMagick
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install ImageMagick
|
||||
apt-get install -y --no-install-recommends --fix-missing \
|
||||
imagemagick \
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: java-tools.sh
|
||||
## Desc: Installs Java and related tooling (Ant, Gradle, Maven)
|
||||
@@ -6,8 +6,6 @@
|
||||
|
||||
source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
set -e
|
||||
|
||||
function javaTool {
|
||||
if [[ "$2" =~ ([1]{0,1}.)?$DEFAULT_JDK_VERSION.* ]]; then
|
||||
echo "$1 $2 is equal to default one $DEFAULT_JDK_VERSION"
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: julia.sh
|
||||
## Desc: Installs Julia, and adds Julia to the path
|
||||
################################################################################
|
||||
|
||||
|
||||
# This function fetches the latest Julia release from the GitHub API
|
||||
# Based on https://gist.github.com/lukechilds/a83e1d7127b78fef38c2914c4ececc3c
|
||||
function GetLatestJuliaRelease () {
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: kind.sh
|
||||
## Desc: Installs kind
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install KIND
|
||||
URL=$(curl -s https://api.github.com/repos/kubernetes-sigs/kind/releases/latest | jq -r '.assets[].browser_download_url | select(contains("kind-linux-amd64"))')
|
||||
curl -L -o /usr/local/bin/kind $URL
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: kubernetes-tools.sh
|
||||
## Desc: Installs kubectl, helm, kustomize
|
||||
################################################################################
|
||||
|
||||
|
||||
## Install kubectl
|
||||
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
|
||||
touch /etc/apt/sources.list.d/kubernetes.list
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: leiningen.sh
|
||||
## Desc: Installs Leiningen
|
||||
################################################################################
|
||||
|
||||
|
||||
set -e
|
||||
|
||||
LEIN_BIN=/usr/local/bin/lein
|
||||
curl -s https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein > $LEIN_BIN
|
||||
chmod 0755 $LEIN_BIN
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: mercurial.sh
|
||||
## Desc: Installs Mercurial
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: miniconda.sh
|
||||
## Desc: Installs miniconda
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install Miniconda
|
||||
curl -sL https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -o miniconda.sh \
|
||||
&& chmod +x miniconda.sh \
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: homebrew.sh
|
||||
## Desc: Installs Mongo DB
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: cmake.sh
|
||||
## Desc: Installs Mono
|
||||
################################################################################
|
||||
|
||||
|
||||
LSB_CODENAME=$(lsb_release -cs)
|
||||
|
||||
# Test to see if the software in question is already installed, if not install it
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: mysql.sh
|
||||
## Desc: Installs MySQL Client
|
||||
################################################################################
|
||||
|
||||
|
||||
export ACCEPT_EULA=Y
|
||||
|
||||
if isUbuntu16 || isUbuntu18 ; then
|
||||
@@ -44,7 +43,6 @@ if ! command -v mysql; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
set -e
|
||||
mysql -vvv -e 'CREATE DATABASE smoke_test' -uroot -proot
|
||||
mysql -vvv -e 'DROP DATABASE smoke_test' -uroot -proot
|
||||
set +e
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: netlify.sh
|
||||
## Desc: Installs the Netlify CLI
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install the Netlify CLI
|
||||
npm i -g netlify-cli
|
||||
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: nodejs.sh
|
||||
## Desc: Installs Node.js LTS and related tooling (Gulp, Grunt)
|
||||
################################################################################
|
||||
|
||||
|
||||
# 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
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: nvm.sh
|
||||
## Desc: Installs Nvm
|
||||
################################################################################
|
||||
|
||||
|
||||
export NVM_DIR="/etc/skel/.nvm"
|
||||
mkdir $NVM_DIR
|
||||
VERSION=$(curl -s https://api.github.com/repos/nvm-sh/nvm/releases/latest | jq -r '.tag_name')
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: oc.sh
|
||||
## Desc: Installs the OC CLI
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install the oc CLI
|
||||
curl "https://mirror.openshift.com/pub/openshift-v4/clients/oc/latest/linux/oc.tar.gz" > oc.tar.gz
|
||||
tar xvzf oc.tar.gz
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: oras-cli.sh
|
||||
## Desc: Installs ORAS CLI
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: packer.sh
|
||||
## Desc: Installs packer
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install Packer
|
||||
PACKER_VERSION=$(curl -s https://checkpoint-api.hashicorp.com/v1/check/packer | jq -r .current_version)
|
||||
curl -LO "https://releases.hashicorp.com/packer/${PACKER_VERSION}/packer_${PACKER_VERSION}_linux_amd64.zip"
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: phantomjs.sh
|
||||
## Desc: Installs PhantomJS
|
||||
################################################################################
|
||||
|
||||
set -e
|
||||
|
||||
# Install PhantomJS
|
||||
apt-get install -y chrpath libssl-dev libxft-dev libfreetype6 libfreetype6-dev libfontconfig1 libfontconfig1-dev
|
||||
PHANTOM_JS=phantomjs-2.1.1-linux-x86_64
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: php.sh
|
||||
## Desc: Installs php
|
||||
@@ -8,8 +8,6 @@
|
||||
source $HELPER_SCRIPTS/etc-environment.sh
|
||||
source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
set -e
|
||||
|
||||
# add repository
|
||||
apt-add-repository ppa:ondrej/php -y
|
||||
apt-get update
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: pollinate.sh
|
||||
## Desc: Installs Pollinate
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install Pollinate
|
||||
apt-get install -y --no-install-recommends pollinate
|
||||
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: post-deployment.sh
|
||||
## Desc: Post deployment actions
|
||||
################################################################################
|
||||
|
||||
mv -f /imagegeneration/post-generation /opt
|
||||
|
||||
# set chmod -R 777 /opt
|
||||
if [[ -d "/opt" ]]; then
|
||||
echo "chmod -R 777 /opt"
|
||||
@@ -14,3 +16,11 @@ fi
|
||||
rm -rf $HELPER_SCRIPT_FOLDER
|
||||
rm -rf $INSTALLER_SCRIPT_FOLDER
|
||||
chmod 755 $IMAGE_FOLDER
|
||||
|
||||
# Check PATH
|
||||
if [[ $PATH == \"*\" ]]
|
||||
then
|
||||
echo "ERROR: PATH contains quotes"
|
||||
echo "PATH = $PATH"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: postgresql.sh
|
||||
## Desc: Installs Postgresql
|
||||
################################################################################
|
||||
|
||||
|
||||
#Preparing repo for PostgreSQL 12.
|
||||
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -
|
||||
echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" | tee /etc/apt/sources.list.d/pgdg.list
|
||||
@@ -25,4 +24,4 @@ pg_isready
|
||||
|
||||
# Disable postgresql.service
|
||||
systemctl is-active --quiet postgresql.service && systemctl stop postgresql.service
|
||||
systemctl disable postgresql.service
|
||||
systemctl disable postgresql.service
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: powershellcore.sh
|
||||
## Desc: Installs powershellcore
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
|
||||
imagedata_file=$IMAGEDATA_FILE
|
||||
image_version=$IMAGE_VERSION
|
||||
@@ -29,4 +29,4 @@ cat <<EOF > $imagedata_file
|
||||
"detail": "Environment: ${image_label}\nVersion: ${image_version}\nIncluded Software: ${software_url}"
|
||||
}
|
||||
]
|
||||
EOF
|
||||
EOF
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: pulumi.sh
|
||||
## Desc: Installs Pulumi
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: pypy.sh
|
||||
## Desc: Installs PyPy
|
||||
@@ -76,8 +76,6 @@ pypyVersions="$(cat /tmp/pypyUrls.html | grep 'linux64' | awk -v uri="$uri" -F'>
|
||||
toolset="$INSTALLER_SCRIPT_FOLDER/toolset.json"
|
||||
toolsetVersions=$(jq -r '.toolcache[] | select(.name | contains("PyPy")) | .versions[]' $toolset)
|
||||
|
||||
# Fail out if any setups fail
|
||||
set -e
|
||||
|
||||
for toolsetVersion in $toolsetVersions; do
|
||||
latestMajorPyPyVersion=$(echo "${pypyVersions}" | grep -E "pypy${toolsetVersion}-v[0-9]+\.[0-9]+\.[0-9]+-" | head -1)
|
||||
@@ -90,4 +88,4 @@ for toolsetVersion in $toolsetVersions; do
|
||||
InstallPyPy $latestMajorPyPyVersion
|
||||
done
|
||||
|
||||
chown -R "$SUDO_USER:$SUDO_USER" "$AGENT_TOOLSDIRECTORY/PyPy"
|
||||
chown -R "$SUDO_USER:$SUDO_USER" "$AGENT_TOOLSDIRECTORY/PyPy"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: python.sh
|
||||
## Desc: Installs Python 2/3
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
|
||||
# Source the helpers for use with the script
|
||||
source $HELPER_SCRIPTS/os.sh
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: rndgenerator.sh
|
||||
## Desc: Install random number generator
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install haveged
|
||||
apt-get -y install haveged
|
||||
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: ruby.sh
|
||||
## Desc: Installs Ruby requirements
|
||||
################################################################################
|
||||
|
||||
|
||||
sudo apt-get install ruby-full
|
||||
sudo gem update --system
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: rust.sh
|
||||
## Desc: Installs Rust
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: scala.sh
|
||||
## Desc: Installs sbt
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install sbt
|
||||
# https://www.scala-sbt.org/1.x/docs/Installing-sbt-on-Linux.html
|
||||
echo "deb https://dl.bintray.com/sbt/debian /" | sudo tee -a /etc/apt/sources.list.d/sbt.list
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: selenium.sh
|
||||
## Desc: Installs selenium server
|
||||
################################################################################
|
||||
|
||||
|
||||
# Determine latest selenium standalone server version
|
||||
SELENIUM_LATEST_VERSION_URL=https://api.github.com/repos/SeleniumHQ/selenium/releases/latest
|
||||
SELENIUM_VERSION=$(curl $SELENIUM_LATEST_VERSION_URL | jq '.name' | tr -d '"' | cut -d ' ' -f 2)
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: sphinx.sh
|
||||
## Desc: Installs Sphinx
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install Sphinx
|
||||
apt-get install -y sphinxsearch
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: subversion.sh
|
||||
## Desc: Installs Subversion client
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install Subversion
|
||||
apt-get install -y --no-install-recommends subversion
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: swift.sh
|
||||
## Desc: Installs Swift
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install
|
||||
image_label="$(lsb_release -rs)"
|
||||
swift_version=$(curl -s https://swift.org/download/ | grep -m1 "id=\"swift-" | awk -F"[ <]" '{print $4}')
|
||||
swift_version=$(curl -s -L -N https://swift.org/download|awk -F"[ <]" '/id="swift-/ {print $4; exit}')
|
||||
|
||||
wget -P /tmp https://swift.org/builds/swift-$swift_version-release/ubuntu${image_label//./}/swift-$swift_version-RELEASE/swift-$swift_version-RELEASE-ubuntu$image_label.tar.gz
|
||||
|
||||
tar xzf /tmp/swift-$swift_version-RELEASE-ubuntu$image_label.tar.gz
|
||||
mv swift-$swift_version-RELEASE-ubuntu$image_label /usr/share/swift
|
||||
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#!/bin/bash
|
||||
|
||||
#!/bin/bash -e
|
||||
|
||||
# Install Swig
|
||||
sudo apt-get install -y swig
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: terraform.sh
|
||||
## Desc: Installs terraform
|
||||
################################################################################
|
||||
|
||||
|
||||
# Install Terraform
|
||||
TERRAFORM_VERSION=$(curl -s https://checkpoint-api.hashicorp.com/v1/check/terraform | jq -r .current_version)
|
||||
curl -LO "https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_amd64.zip"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: test-toolcache.sh
|
||||
## Desc: Test Python and Ruby versions in tools cache
|
||||
@@ -51,9 +51,6 @@ Test_Hostedtoolcache_Tool() {
|
||||
fi
|
||||
}
|
||||
|
||||
# Fail out if any tests fail
|
||||
set -e
|
||||
|
||||
# define dictionary for key_alias and its values
|
||||
declare -A TOOLCACHE_KEY_VALUE
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: validate-disk-space.sh
|
||||
## Desc: Validate free disk space
|
||||
@@ -17,4 +17,4 @@ fi
|
||||
if [ $availableSpaceMB -le $minimumFreeSpaceMB ]; then
|
||||
echo "Not enough disk space on the image (minimum available space: $minimumFreeSpaceMB MB)"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: vcpkg.sh
|
||||
## Desc: Installs vcpkg
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash -e
|
||||
################################################################################
|
||||
## File: vercel.sh
|
||||
## Desc: Installs the Vercel CLI
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
],
|
||||
"android": {
|
||||
"platform_min_version": "10",
|
||||
"build_tools_min_version": "17.0.0",
|
||||
"build_tools_min_version": "19.1.0",
|
||||
"extra_list": [
|
||||
"android;m2repository",
|
||||
"google;m2repository",
|
||||
|
||||
@@ -64,7 +64,7 @@
|
||||
],
|
||||
"android": {
|
||||
"platform_min_version": "17",
|
||||
"build_tools_min_version": "17.0.0",
|
||||
"build_tools_min_version": "19.1.0",
|
||||
"extra_list": [
|
||||
"android;m2repository",
|
||||
"google;m2repository",
|
||||
|
||||
@@ -89,6 +89,11 @@
|
||||
"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/SoftwareReport",
|
||||
|
||||
@@ -92,6 +92,11 @@
|
||||
"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/SoftwareReport",
|
||||
|
||||
@@ -94,6 +94,11 @@
|
||||
"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/SoftwareReport",
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user