mirror of
https://github.com/actions/runner-images.git
synced 2025-12-13 12:48:18 +00:00
Merge branch 'main' of https://github.com/actions/virtual-environments into dacfx-186
This commit is contained in:
25
.github/workflows/linter.yml
vendored
Normal file
25
.github/workflows/linter.yml
vendored
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
# CI Validation
|
||||||
|
|
||||||
|
name: CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
branches: [$default-branch]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
name: Lint JSON & MD files
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout Code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Lint Code Base
|
||||||
|
uses: github/super-linter@v3
|
||||||
|
env:
|
||||||
|
VALIDATE_ALL_CODEBASE: false
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
VALIDATE_JSON: true
|
||||||
|
VALIDATE_MD: true
|
||||||
|
DEFAULT_BRANCH: ${{ github.base_ref }}
|
||||||
@@ -167,7 +167,9 @@ Function GenerateResourcesAndImage {
|
|||||||
New-AzStorageAccount -ResourceGroupName $ResourceGroupName -AccountName $storageAccountName -Location $AzureLocation -SkuName "Standard_LRS"
|
New-AzStorageAccount -ResourceGroupName $ResourceGroupName -AccountName $storageAccountName -Location $AzureLocation -SkuName "Standard_LRS"
|
||||||
|
|
||||||
$spDisplayName = [System.GUID]::NewGuid().ToString().ToUpper()
|
$spDisplayName = [System.GUID]::NewGuid().ToString().ToUpper()
|
||||||
$sp = New-AzADServicePrincipal -DisplayName $spDisplayName -Password (ConvertTo-SecureString $ServicePrincipalClientSecret -AsPlainText -Force)
|
$credentialProperties = @{ StartDate=Get-Date; EndDate=Get-Date -Year 2024; Password=$ServicePrincipalClientSecret }
|
||||||
|
$credentials = New-Object -TypeName Microsoft.Azure.Commands.ActiveDirectory.PSADPasswordCredential -Property $credentialProperties
|
||||||
|
$sp = New-AzADServicePrincipal -DisplayName $spDisplayName -PasswordCredential $credentials
|
||||||
|
|
||||||
$spAppId = $sp.ApplicationId
|
$spAppId = $sp.ApplicationId
|
||||||
$spClientId = $sp.ApplicationId
|
$spClientId = $sp.ApplicationId
|
||||||
|
|||||||
@@ -6,9 +6,8 @@ function Get-OSName {
|
|||||||
|
|
||||||
function Get-CPPVersions {
|
function Get-CPPVersions {
|
||||||
$cppVersions = apt list --installed 2>&1 | Where-Object { $_ -match "g\+\+-\d+"} | ForEach-Object {
|
$cppVersions = apt list --installed 2>&1 | Where-Object { $_ -match "g\+\+-\d+"} | ForEach-Object {
|
||||||
$_ -match "now (?<version>\d+\.\d+\.\d+)-" | Out-Null
|
& $_.Split("/")[0] --version | Select-Object -First 1 | Take-OutputPart -Part 3
|
||||||
$Matches.version
|
} | Sort-Object {[Version]$_}
|
||||||
}
|
|
||||||
return "GNU C++ " + ($cppVersions -Join ", ")
|
return "GNU C++ " + ($cppVersions -Join ", ")
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -16,7 +15,7 @@ function Get-FortranVersions {
|
|||||||
$fortranVersions = apt list --installed 2>&1 | Where-Object { $_ -match "^gfortran-\d+"} | ForEach-Object {
|
$fortranVersions = apt list --installed 2>&1 | Where-Object { $_ -match "^gfortran-\d+"} | ForEach-Object {
|
||||||
$_ -match "now (?<version>\d+\.\d+\.\d+)-" | Out-Null
|
$_ -match "now (?<version>\d+\.\d+\.\d+)-" | Out-Null
|
||||||
$Matches.version
|
$Matches.version
|
||||||
}
|
} | Sort-Object {[Version]$_}
|
||||||
return "GNU Fortran " + ($fortranVersions -Join ", ")
|
return "GNU Fortran " + ($fortranVersions -Join ", ")
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -28,7 +27,7 @@ function Get-ClangVersions {
|
|||||||
$_ -match "clang version (?<version>\d+\.\d+\.\d+)-" | Out-Null
|
$_ -match "clang version (?<version>\d+\.\d+\.\d+)-" | Out-Null
|
||||||
$Matches.version
|
$Matches.version
|
||||||
}
|
}
|
||||||
}
|
} | Sort-Object {[Version]$_}
|
||||||
return "Clang " + ($clangVersions -Join ", ")
|
return "Clang " + ($clangVersions -Join ", ")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ function Get-BazeliskVersion {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function Get-CodeQLBundleVersion {
|
function Get-CodeQLBundleVersion {
|
||||||
$CodeQLVersionsWildcard = Join-Path $Env:AGENT_TOOLSDIRECTORY -ChildPath "codeql" | Join-Path -ChildPath "*"
|
$CodeQLVersionsWildcard = Join-Path $Env:AGENT_TOOLSDIRECTORY -ChildPath "CodeQL" | Join-Path -ChildPath "*"
|
||||||
$CodeQLVersionPath = Get-ChildItem $CodeQLVersionsWildcard | Select-Object -First 1 -Expand FullName
|
$CodeQLVersionPath = Get-ChildItem $CodeQLVersionsWildcard | Select-Object -First 1 -Expand FullName
|
||||||
$CodeQLPath = Join-Path $CodeQLVersionPath -ChildPath "x64" | Join-Path -ChildPath "codeql" | Join-Path -ChildPath "codeql"
|
$CodeQLPath = Join-Path $CodeQLVersionPath -ChildPath "x64" | Join-Path -ChildPath "codeql" | Join-Path -ChildPath "codeql"
|
||||||
$CodeQLVersion = & $CodeQLPath version --quiet
|
$CodeQLVersion = & $CodeQLPath version --quiet
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ function InstallClang {
|
|||||||
local version=$1
|
local version=$1
|
||||||
|
|
||||||
echo "Installing clang-$version..."
|
echo "Installing clang-$version..."
|
||||||
if [[ $version =~ (9|10) ]]; then
|
if [[ $version =~ 9 ]] && isUbuntu16; then
|
||||||
./llvm.sh $version
|
./llvm.sh $version
|
||||||
apt-get install -y "clang-format-$version"
|
apt-get install -y "clang-format-$version"
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -4,6 +4,10 @@
|
|||||||
## Desc: Installs GNU C++
|
## Desc: Installs GNU C++
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Source the helpers for use with the script
|
||||||
|
source $HELPER_SCRIPTS/os.sh
|
||||||
|
|
||||||
function InstallGcc {
|
function InstallGcc {
|
||||||
version=$1
|
version=$1
|
||||||
@@ -29,7 +33,10 @@ versions=(
|
|||||||
"g++-9"
|
"g++-9"
|
||||||
)
|
)
|
||||||
|
|
||||||
for version in ${versions[*]}
|
if ! isUbuntu16; then
|
||||||
do
|
versions+=("g++-10")
|
||||||
|
fi
|
||||||
|
|
||||||
|
for version in ${versions[*]}; do
|
||||||
InstallGcc $version
|
InstallGcc $version
|
||||||
done
|
done
|
||||||
|
|||||||
@@ -4,19 +4,18 @@
|
|||||||
## Desc: Installs Python 2/3
|
## Desc: Installs Python 2/3
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
|
set -e
|
||||||
# Source the helpers for use with the script
|
# Source the helpers for use with the script
|
||||||
source $HELPER_SCRIPTS/os.sh
|
source $HELPER_SCRIPTS/os.sh
|
||||||
|
|
||||||
# Install Python, Python 3, pip, pip3
|
# Install Python, Python 3, pip, pip3
|
||||||
if isUbuntu20 ; then
|
if isUbuntu16 || isUbuntu18; then
|
||||||
apt-get install -y --no-install-recommends python3 python3-dev python3-pip
|
apt-get install -y --no-install-recommends python python-dev python-pip python3 python3-dev python3-pip
|
||||||
|
|
||||||
curl https://bootstrap.pypa.io/get-pip.py --output get-pip.py
|
|
||||||
python2 get-pip.py
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if isUbuntu16 || isUbuntu18 ; then
|
if isUbuntu20; then
|
||||||
apt-get install -y --no-install-recommends python python-dev python-pip python3 python3-dev python3-pip
|
apt-get install -y --no-install-recommends python3 python3-dev python3-pip
|
||||||
|
ln -s /usr/bin/pip3 /usr/bin/pip
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run tests to determine that the software installed as expected
|
# Run tests to determine that the software installed as expected
|
||||||
|
|||||||
@@ -109,7 +109,8 @@
|
|||||||
"3.8.0",
|
"3.8.0",
|
||||||
"4.3.0",
|
"4.3.0",
|
||||||
"4.4.0",
|
"4.4.0",
|
||||||
"4.6.0"
|
"4.6.0",
|
||||||
|
"4.7.0"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -105,7 +105,8 @@
|
|||||||
"3.8.0",
|
"3.8.0",
|
||||||
"4.3.0",
|
"4.3.0",
|
||||||
"4.4.0",
|
"4.4.0",
|
||||||
"4.6.0"
|
"4.6.0",
|
||||||
|
"4.7.0"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -96,7 +96,7 @@
|
|||||||
"locales",
|
"locales",
|
||||||
"openssh-client",
|
"openssh-client",
|
||||||
"pkg-config",
|
"pkg-config",
|
||||||
"python-is-python2",
|
"python-is-python3",
|
||||||
"rpm",
|
"rpm",
|
||||||
"texinfo",
|
"texinfo",
|
||||||
"tk",
|
"tk",
|
||||||
|
|||||||
@@ -24,7 +24,10 @@
|
|||||||
"run_validation_diskspace": "false",
|
"run_validation_diskspace": "false",
|
||||||
"announcements": "{{env `ANNOUNCEMENTS`}}"
|
"announcements": "{{env `ANNOUNCEMENTS`}}"
|
||||||
},
|
},
|
||||||
"sensitive-variables": ["client_secret", "github_feed_token"],
|
"sensitive-variables": [
|
||||||
|
"client_secret",
|
||||||
|
"github_feed_token"
|
||||||
|
],
|
||||||
"builders": [
|
"builders": [
|
||||||
{
|
{
|
||||||
"type": "azure-arm",
|
"type": "azure-arm",
|
||||||
@@ -32,7 +35,6 @@
|
|||||||
"client_secret": "{{user `client_secret`}}",
|
"client_secret": "{{user `client_secret`}}",
|
||||||
"subscription_id": "{{user `subscription_id`}}",
|
"subscription_id": "{{user `subscription_id`}}",
|
||||||
"tenant_id": "{{user `tenant_id`}}",
|
"tenant_id": "{{user `tenant_id`}}",
|
||||||
|
|
||||||
"location": "{{user `location`}}",
|
"location": "{{user `location`}}",
|
||||||
"vm_size": "{{user `vm_size`}}",
|
"vm_size": "{{user `vm_size`}}",
|
||||||
"resource_group_name": "{{user `resource_group`}}",
|
"resource_group_name": "{{user `resource_group`}}",
|
||||||
@@ -62,7 +64,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/base/repos.sh"
|
"{{template_dir}}/scripts/base/repos.sh"
|
||||||
],
|
],
|
||||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||||
@@ -104,7 +106,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/preimagedata.sh"
|
"{{template_dir}}/scripts/installers/preimagedata.sh"
|
||||||
],
|
],
|
||||||
"environment_vars": [
|
"environment_vars": [
|
||||||
@@ -218,7 +220,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/Install-Toolset.ps1",
|
"{{template_dir}}/scripts/installers/Install-Toolset.ps1",
|
||||||
"{{template_dir}}/scripts/installers/Configure-Toolset.ps1",
|
"{{template_dir}}/scripts/installers/Configure-Toolset.ps1",
|
||||||
"{{template_dir}}/scripts/installers/Validate-Toolset.ps1"
|
"{{template_dir}}/scripts/installers/Validate-Toolset.ps1"
|
||||||
@@ -270,14 +272,14 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/cleanup.sh"
|
"{{template_dir}}/scripts/installers/cleanup.sh"
|
||||||
],
|
],
|
||||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/Install-PowerShellModules.ps1"
|
"{{template_dir}}/scripts/installers/Install-PowerShellModules.ps1"
|
||||||
],
|
],
|
||||||
"environment_vars": [
|
"environment_vars": [
|
||||||
@@ -290,7 +292,7 @@
|
|||||||
"inline": [
|
"inline": [
|
||||||
"pwsh -File {{user `image_folder`}}/SoftwareReport/SoftwareReport.Generator.ps1 -OutputDirectory {{user `image_folder`}}"
|
"pwsh -File {{user `image_folder`}}/SoftwareReport/SoftwareReport.Generator.ps1 -OutputDirectory {{user `image_folder`}}"
|
||||||
],
|
],
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"IMAGE_VERSION={{user `image_version`}}",
|
"IMAGE_VERSION={{user `image_version`}}",
|
||||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}",
|
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}",
|
||||||
"ANNOUNCEMENTS={{user `announcements`}}"
|
"ANNOUNCEMENTS={{user `announcements`}}"
|
||||||
@@ -316,7 +318,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/validate-disk-space.sh"
|
"{{template_dir}}/scripts/installers/validate-disk-space.sh"
|
||||||
],
|
],
|
||||||
"environment_vars": [
|
"environment_vars": [
|
||||||
|
|||||||
@@ -24,7 +24,10 @@
|
|||||||
"run_validation_diskspace": "false",
|
"run_validation_diskspace": "false",
|
||||||
"announcements": "{{env `ANNOUNCEMENTS`}}"
|
"announcements": "{{env `ANNOUNCEMENTS`}}"
|
||||||
},
|
},
|
||||||
"sensitive-variables": ["client_secret", "github_feed_token"],
|
"sensitive-variables": [
|
||||||
|
"client_secret",
|
||||||
|
"github_feed_token"
|
||||||
|
],
|
||||||
"builders": [
|
"builders": [
|
||||||
{
|
{
|
||||||
"type": "azure-arm",
|
"type": "azure-arm",
|
||||||
@@ -32,7 +35,6 @@
|
|||||||
"client_secret": "{{user `client_secret`}}",
|
"client_secret": "{{user `client_secret`}}",
|
||||||
"subscription_id": "{{user `subscription_id`}}",
|
"subscription_id": "{{user `subscription_id`}}",
|
||||||
"tenant_id": "{{user `tenant_id`}}",
|
"tenant_id": "{{user `tenant_id`}}",
|
||||||
|
|
||||||
"location": "{{user `location`}}",
|
"location": "{{user `location`}}",
|
||||||
"vm_size": "{{user `vm_size`}}",
|
"vm_size": "{{user `vm_size`}}",
|
||||||
"resource_group_name": "{{user `resource_group`}}",
|
"resource_group_name": "{{user `resource_group`}}",
|
||||||
@@ -62,7 +64,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/base/repos.sh"
|
"{{template_dir}}/scripts/base/repos.sh"
|
||||||
],
|
],
|
||||||
"environment_vars": [
|
"environment_vars": [
|
||||||
@@ -107,7 +109,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/preimagedata.sh"
|
"{{template_dir}}/scripts/installers/preimagedata.sh"
|
||||||
],
|
],
|
||||||
"environment_vars": [
|
"environment_vars": [
|
||||||
@@ -222,7 +224,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/Install-Toolset.ps1",
|
"{{template_dir}}/scripts/installers/Install-Toolset.ps1",
|
||||||
"{{template_dir}}/scripts/installers/Configure-Toolset.ps1",
|
"{{template_dir}}/scripts/installers/Configure-Toolset.ps1",
|
||||||
"{{template_dir}}/scripts/installers/Validate-Toolset.ps1"
|
"{{template_dir}}/scripts/installers/Validate-Toolset.ps1"
|
||||||
@@ -274,14 +276,14 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/cleanup.sh"
|
"{{template_dir}}/scripts/installers/cleanup.sh"
|
||||||
],
|
],
|
||||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/Install-PowerShellModules.ps1"
|
"{{template_dir}}/scripts/installers/Install-PowerShellModules.ps1"
|
||||||
],
|
],
|
||||||
"environment_vars": [
|
"environment_vars": [
|
||||||
@@ -294,7 +296,7 @@
|
|||||||
"inline": [
|
"inline": [
|
||||||
"pwsh -File {{user `image_folder`}}/SoftwareReport/SoftwareReport.Generator.ps1 -OutputDirectory {{user `image_folder`}}"
|
"pwsh -File {{user `image_folder`}}/SoftwareReport/SoftwareReport.Generator.ps1 -OutputDirectory {{user `image_folder`}}"
|
||||||
],
|
],
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"IMAGE_VERSION={{user `image_version`}}",
|
"IMAGE_VERSION={{user `image_version`}}",
|
||||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}",
|
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}",
|
||||||
"ANNOUNCEMENTS={{user `announcements`}}"
|
"ANNOUNCEMENTS={{user `announcements`}}"
|
||||||
@@ -320,7 +322,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/validate-disk-space.sh"
|
"{{template_dir}}/scripts/installers/validate-disk-space.sh"
|
||||||
],
|
],
|
||||||
"environment_vars": [
|
"environment_vars": [
|
||||||
|
|||||||
@@ -26,7 +26,10 @@
|
|||||||
"go_versions": "1.14",
|
"go_versions": "1.14",
|
||||||
"announcements": "{{env `ANNOUNCEMENTS`}}"
|
"announcements": "{{env `ANNOUNCEMENTS`}}"
|
||||||
},
|
},
|
||||||
"sensitive-variables": ["client_secret", "github_feed_token"],
|
"sensitive-variables": [
|
||||||
|
"client_secret",
|
||||||
|
"github_feed_token"
|
||||||
|
],
|
||||||
"builders": [
|
"builders": [
|
||||||
{
|
{
|
||||||
"type": "azure-arm",
|
"type": "azure-arm",
|
||||||
@@ -34,7 +37,6 @@
|
|||||||
"client_secret": "{{user `client_secret`}}",
|
"client_secret": "{{user `client_secret`}}",
|
||||||
"subscription_id": "{{user `subscription_id`}}",
|
"subscription_id": "{{user `subscription_id`}}",
|
||||||
"tenant_id": "{{user `tenant_id`}}",
|
"tenant_id": "{{user `tenant_id`}}",
|
||||||
|
|
||||||
"location": "{{user `location`}}",
|
"location": "{{user `location`}}",
|
||||||
"vm_size": "{{user `vm_size`}}",
|
"vm_size": "{{user `vm_size`}}",
|
||||||
"resource_group_name": "{{user `resource_group`}}",
|
"resource_group_name": "{{user `resource_group`}}",
|
||||||
@@ -64,7 +66,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/base/repos.sh"
|
"{{template_dir}}/scripts/base/repos.sh"
|
||||||
],
|
],
|
||||||
"environment_vars": [
|
"environment_vars": [
|
||||||
@@ -109,7 +111,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/preimagedata.sh"
|
"{{template_dir}}/scripts/installers/preimagedata.sh"
|
||||||
],
|
],
|
||||||
"environment_vars": [
|
"environment_vars": [
|
||||||
@@ -224,7 +226,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/Install-Toolset.ps1",
|
"{{template_dir}}/scripts/installers/Install-Toolset.ps1",
|
||||||
"{{template_dir}}/scripts/installers/Configure-Toolset.ps1",
|
"{{template_dir}}/scripts/installers/Configure-Toolset.ps1",
|
||||||
"{{template_dir}}/scripts/installers/Validate-Toolset.ps1"
|
"{{template_dir}}/scripts/installers/Validate-Toolset.ps1"
|
||||||
@@ -276,14 +278,14 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/cleanup.sh"
|
"{{template_dir}}/scripts/installers/cleanup.sh"
|
||||||
],
|
],
|
||||||
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
"execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{template_dir}}/scripts/installers/Install-PowerShellModules.ps1"
|
"{{template_dir}}/scripts/installers/Install-PowerShellModules.ps1"
|
||||||
],
|
],
|
||||||
"environment_vars": [
|
"environment_vars": [
|
||||||
@@ -296,7 +298,7 @@
|
|||||||
"inline": [
|
"inline": [
|
||||||
"pwsh -File {{user `image_folder`}}/SoftwareReport/SoftwareReport.Generator.ps1 -OutputDirectory {{user `image_folder`}}"
|
"pwsh -File {{user `image_folder`}}/SoftwareReport/SoftwareReport.Generator.ps1 -OutputDirectory {{user `image_folder`}}"
|
||||||
],
|
],
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"IMAGE_VERSION={{user `image_version`}}",
|
"IMAGE_VERSION={{user `image_version`}}",
|
||||||
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}",
|
"INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}",
|
||||||
"ANNOUNCEMENTS={{user `announcements`}}"
|
"ANNOUNCEMENTS={{user `announcements`}}"
|
||||||
|
|||||||
@@ -45,6 +45,17 @@ function Switch-Xcode {
|
|||||||
Invoke-Expression "sudo xcode-select --switch ${XcodeRootPath}"
|
Invoke-Expression "sudo xcode-select --switch ${XcodeRootPath}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function Test-XcodeStableRelease {
|
||||||
|
param(
|
||||||
|
[Parameter(Mandatory)]
|
||||||
|
[string] $XcodeRootPath
|
||||||
|
)
|
||||||
|
|
||||||
|
$licenseInfoPlistPath = Join-Path $XcodeRootPath "Contents" "Resources" "LicenseInfo.plist"
|
||||||
|
$releaseType = & defaults read $licenseInfoPlistPath "licenseType"
|
||||||
|
return -not ($releaseType -match "beta")
|
||||||
|
}
|
||||||
|
|
||||||
function Get-XcodeSimulatorsInfo {
|
function Get-XcodeSimulatorsInfo {
|
||||||
param(
|
param(
|
||||||
[string] $Filter
|
[string] $Filter
|
||||||
@@ -102,6 +113,6 @@ function Test-XcodeStableVersion {
|
|||||||
if ($Version -match "GM") {
|
if ($Version -match "GM") {
|
||||||
return $false
|
return $false
|
||||||
}
|
}
|
||||||
|
|
||||||
return $true
|
return $true
|
||||||
}
|
}
|
||||||
@@ -1,15 +1,15 @@
|
|||||||
# macOS 10.15 info
|
# macOS 10.15 info
|
||||||
- System Version: macOS 10.15.6 (19G2021)
|
- System Version: macOS 10.15.6 (19G2021)
|
||||||
- Kernel Version: Darwin 19.6.0
|
- Kernel Version: Darwin 19.6.0
|
||||||
- Image Version: 20200916.1
|
- Image Version: 20200918.1
|
||||||
|
|
||||||
## Installed Software
|
## Installed Software
|
||||||
### Language and Runtime
|
### Language and Runtime
|
||||||
- Clang/LLVM 10.0.1
|
- Clang/LLVM 10.0.1
|
||||||
- gcc-8 (Homebrew GCC 8.4.0_1) 8.4.0 — available by `gcc-8` alias
|
- gcc-8 (Homebrew GCC 8.4.0_1) 8.4.0 - available by `gcc-8` alias
|
||||||
- gcc-9 (Homebrew GCC 9.3.0) 9.3.0 — available by `gcc-9` alias
|
- gcc-9 (Homebrew GCC 9.3.0) 9.3.0 - available by `gcc-9` alias
|
||||||
- GNU Fortran (Homebrew GCC 8.4.0_1) 8.4.0 — available by `gfortran-8` alias
|
- GNU Fortran (Homebrew GCC 8.4.0_1) 8.4.0 - available by `gfortran-8` alias
|
||||||
- GNU Fortran (Homebrew GCC 9.3.0) 9.3.0 — available by `gfortran-9` alias
|
- GNU Fortran (Homebrew GCC 9.3.0) 9.3.0 - available by `gfortran-9` alias
|
||||||
- Node.js v12.18.3
|
- Node.js v12.18.3
|
||||||
- NVM 0.35.3
|
- NVM 0.35.3
|
||||||
- NVM - Cached node versions: v6.17.1 v8.17.0 v10.22.1 v12.18.4 v13.14.0 v14.11.0
|
- NVM - Cached node versions: v6.17.1 v8.17.0 v10.22.1 v12.18.4 v13.14.0 v14.11.0
|
||||||
@@ -24,15 +24,15 @@
|
|||||||
|
|
||||||
### Package Management
|
### Package Management
|
||||||
- Vcpkg 2020.06.15
|
- Vcpkg 2020.06.15
|
||||||
|
- Pip 19.3.1 (python 2.7)
|
||||||
|
- Pip 20.1.1 (python 3.8)
|
||||||
- Bundler version 2.1.4
|
- Bundler version 2.1.4
|
||||||
- Carthage 0.35.0
|
- Carthage 0.36.0
|
||||||
- CocoaPods 1.9.3
|
- CocoaPods 1.9.3
|
||||||
- Homebrew 2.5.1
|
- Homebrew 2.5.1
|
||||||
- NPM 6.14.6
|
- NPM 6.14.6
|
||||||
- Yarn 1.22.5
|
- Yarn 1.22.5
|
||||||
- NuGet 5.6.0.6489
|
- NuGet 5.6.0.6489
|
||||||
- Pip 19.3.1 (python 2.7)
|
|
||||||
- Pip 20.1.1 (python 3.8)
|
|
||||||
- Miniconda 4.8.3
|
- Miniconda 4.8.3
|
||||||
- RubyGems 3.1.4
|
- RubyGems 3.1.4
|
||||||
- Composer 1.10.13
|
- Composer 1.10.13
|
||||||
@@ -46,12 +46,11 @@
|
|||||||
- Curl 7.72.0
|
- Curl 7.72.0
|
||||||
- Git: 2.28.0
|
- Git: 2.28.0
|
||||||
- Git LFS: 2.12.0
|
- Git LFS: 2.12.0
|
||||||
- GitHub CLI: 0.12.0
|
- GitHub CLI: 1.0.0
|
||||||
- Hub CLI: 2.14.2
|
- Hub CLI: 2.14.2
|
||||||
- GNU Wget 1.20.3
|
- GNU Wget 1.20.3
|
||||||
- Subversion (SVN) 1.14.0
|
- Subversion (SVN) 1.14.0
|
||||||
- Packer 1.6.2
|
- Packer 1.6.2
|
||||||
- GNU parallel 20200722
|
|
||||||
- OpenSSL 1.0.2t 10 Sep 2019 `(/usr/local/opt/openssl -> /usr/local/Cellar/openssl@1.0.2t/1.0.2t)`
|
- OpenSSL 1.0.2t 10 Sep 2019 `(/usr/local/opt/openssl -> /usr/local/Cellar/openssl@1.0.2t/1.0.2t)`
|
||||||
- jq 1.6
|
- jq 1.6
|
||||||
- gpg (GnuPG) 2.2.23
|
- gpg (GnuPG) 2.2.23
|
||||||
@@ -62,24 +61,25 @@
|
|||||||
- zstd 1.4.5
|
- zstd 1.4.5
|
||||||
- bazel 3.5.0
|
- bazel 3.5.0
|
||||||
- bazelisk 1.6.1
|
- bazelisk 1.6.1
|
||||||
- helm v3.3.1+g249e521
|
- helm v3.3.2+ge507725
|
||||||
- virtualbox 6.1.14r140239
|
- virtualbox 6.1.14r140239
|
||||||
- mongo v4.4.0
|
- mongo v4.4.0
|
||||||
- mongod v4.4.0
|
- mongod v4.4.0
|
||||||
- Vagrant 2.2.10
|
- Vagrant 2.2.10
|
||||||
- 7-Zip 16.02
|
- 7-Zip 16.02
|
||||||
- Newman 5.2.0
|
- Newman 5.2.0
|
||||||
|
- GNU parallel 20200722
|
||||||
|
|
||||||
|
|
||||||
### Tools
|
### Tools
|
||||||
- Fastlane 2.159.0
|
- Fastlane 2.160.0
|
||||||
- Cmake 3.18.2
|
- Cmake 3.18.2
|
||||||
- App Center CLI 2.7.0
|
- App Center CLI 2.7.0
|
||||||
- Azure CLI 2.11.1
|
- Azure CLI 2.11.1
|
||||||
- AWS CLI 2.0.48
|
- AWS CLI 2.0.48
|
||||||
- AWS SAM CLI 1.2.0
|
- AWS SAM CLI 1.2.0
|
||||||
- AWS Session Manager CLI 1.1.61.0
|
- AWS Session Manager CLI 1.1.61.0
|
||||||
- Aliyun CLI 3.0.56
|
- Aliyun CLI 3.0.58
|
||||||
- GHCup v0.1.10
|
- GHCup v0.1.10
|
||||||
- GHC 8.10.2
|
- GHC 8.10.2
|
||||||
- Cabal 3.2.0.0
|
- Cabal 3.2.0.0
|
||||||
@@ -90,8 +90,8 @@
|
|||||||
- SwiftLint 0.40.2
|
- SwiftLint 0.40.2
|
||||||
|
|
||||||
### Browsers
|
### Browsers
|
||||||
- Safari 13.1.2 (15609.3.5.1.3)
|
- Safari 14.0 (15610.1.28.1.9)
|
||||||
- SafariDriver 13.1.2 (15609.3.5.1.3)
|
- SafariDriver 14.0 (15610.1.28.1.9)
|
||||||
- Google Chrome 85.0.4183.102
|
- Google Chrome 85.0.4183.102
|
||||||
- ChromeDriver 85.0.4183.87
|
- ChromeDriver 85.0.4183.87
|
||||||
- Microsoft Edge 85.0.564.51
|
- Microsoft Edge 85.0.564.51
|
||||||
@@ -161,7 +161,7 @@
|
|||||||
|
|
||||||
### Xamarin
|
### Xamarin
|
||||||
#### Visual Studio for Mac
|
#### Visual Studio for Mac
|
||||||
- 8.7.5.19
|
- 8.7.7.10
|
||||||
|
|
||||||
#### Mono
|
#### Mono
|
||||||
- 6.12.0.93
|
- 6.12.0.93
|
||||||
@@ -205,6 +205,7 @@
|
|||||||
### Xcode
|
### Xcode
|
||||||
| Version | Build | Path |
|
| Version | Build | Path |
|
||||||
| -------------- | -------- | ------------------------------- |
|
| -------------- | -------- | ------------------------------- |
|
||||||
|
| 12.2 | 12B5018i | /Applications/Xcode_12.2.app |
|
||||||
| 12.0 | 12A8189n | /Applications/Xcode_12_beta.app |
|
| 12.0 | 12A8189n | /Applications/Xcode_12_beta.app |
|
||||||
| 12.0 | 12A7209 | /Applications/Xcode_12.app |
|
| 12.0 | 12A7209 | /Applications/Xcode_12.app |
|
||||||
| 11.7 (default) | 11E801a | /Applications/Xcode_11.7.app |
|
| 11.7 (default) | 11E801a | /Applications/Xcode_11.7.app |
|
||||||
@@ -219,18 +220,18 @@
|
|||||||
| 10.3 | 10G8 | /Applications/Xcode_10.3.app |
|
| 10.3 | 10G8 | /Applications/Xcode_10.3.app |
|
||||||
|
|
||||||
#### Xcode Support Tools
|
#### Xcode Support Tools
|
||||||
|
- xcpretty 0.3.0
|
||||||
|
- xcversion 2.6.6
|
||||||
- Nomad CLI 3.1.4
|
- Nomad CLI 3.1.4
|
||||||
- Nomad CLI IPA ipa 0.14.3
|
- Nomad CLI IPA ipa 0.14.3
|
||||||
- xcpretty 0.3.0
|
|
||||||
- xctool 0.3.7
|
- xctool 0.3.7
|
||||||
- xcversion 2.6.6
|
|
||||||
|
|
||||||
#### Installed SDKs
|
#### Installed SDKs
|
||||||
| SDK | SDK Name | Xcode Version |
|
| SDK | SDK Name | Xcode Version |
|
||||||
| ----------------------- | -------------------- | ---------------------------------------------------------------- |
|
| ----------------------- | -------------------- | ---------------------------------------------------------------- |
|
||||||
| macOS 10.14 | macosx10.14 | 10.3 |
|
| macOS 10.14 | macosx10.14 | 10.3 |
|
||||||
| macOS 10.15 | macosx10.15 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5, 11.6, 11.7, 12.0 |
|
| macOS 10.15 | macosx10.15 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5, 11.6, 11.7, 12.0 |
|
||||||
| macOS 11.0 | macosx11.0 | 12.0 |
|
| macOS 11.0 | macosx11.0 | 12.0, 12.2 |
|
||||||
| iOS 12.4 | iphoneos12.4 | 10.3 |
|
| iOS 12.4 | iphoneos12.4 | 10.3 |
|
||||||
| iOS 13.0 | iphoneos13.0 | 11.0 |
|
| iOS 13.0 | iphoneos13.0 | 11.0 |
|
||||||
| iOS 13.1 | iphoneos13.1 | 11.1 |
|
| iOS 13.1 | iphoneos13.1 | 11.1 |
|
||||||
@@ -240,6 +241,7 @@
|
|||||||
| iOS 13.6 | iphoneos13.6 | 11.6 |
|
| iOS 13.6 | iphoneos13.6 | 11.6 |
|
||||||
| iOS 13.7 | iphoneos13.7 | 11.7 |
|
| iOS 13.7 | iphoneos13.7 | 11.7 |
|
||||||
| iOS 14.0 | iphoneos14.0 | 12.0, 12.0 |
|
| iOS 14.0 | iphoneos14.0 | 12.0, 12.0 |
|
||||||
|
| iOS 14.2 | iphoneos14.2 | 12.2 |
|
||||||
| Simulator - iOS 12.4 | iphonesimulator12.4 | 10.3 |
|
| Simulator - iOS 12.4 | iphonesimulator12.4 | 10.3 |
|
||||||
| Simulator - iOS 13.0 | iphonesimulator13.0 | 11.0 |
|
| Simulator - iOS 13.0 | iphonesimulator13.0 | 11.0 |
|
||||||
| Simulator - iOS 13.1 | iphonesimulator13.1 | 11.1 |
|
| Simulator - iOS 13.1 | iphonesimulator13.1 | 11.1 |
|
||||||
@@ -249,28 +251,33 @@
|
|||||||
| Simulator - iOS 13.6 | iphonesimulator13.6 | 11.6 |
|
| Simulator - iOS 13.6 | iphonesimulator13.6 | 11.6 |
|
||||||
| Simulator - iOS 13.7 | iphonesimulator13.7 | 11.7 |
|
| Simulator - iOS 13.7 | iphonesimulator13.7 | 11.7 |
|
||||||
| Simulator - iOS 14.0 | iphonesimulator14.0 | 12.0, 12.0 |
|
| Simulator - iOS 14.0 | iphonesimulator14.0 | 12.0, 12.0 |
|
||||||
|
| Simulator - iOS 14.2 | iphonesimulator14.2 | 12.2 |
|
||||||
| tvOS 12.4 | appletvos12.4 | 10.3 |
|
| tvOS 12.4 | appletvos12.4 | 10.3 |
|
||||||
| tvOS 13.0 | appletvos13.0 | 11.0, 11.1 |
|
| tvOS 13.0 | appletvos13.0 | 11.0, 11.1 |
|
||||||
| tvOS 13.2 | appletvos13.2 | 11.2.1, 11.3.1 |
|
| tvOS 13.2 | appletvos13.2 | 11.2.1, 11.3.1 |
|
||||||
| tvOS 13.4 | appletvos13.4 | 11.4, 11.4.1, 11.5, 11.6, 11.7 |
|
| tvOS 13.4 | appletvos13.4 | 11.4, 11.4.1, 11.5, 11.6, 11.7 |
|
||||||
| tvOS 14.0 | appletvos14.0 | 12.0, 12.0 |
|
| tvOS 14.0 | appletvos14.0 | 12.0, 12.0 |
|
||||||
|
| tvOS 14.2 | appletvos14.2 | 12.2 |
|
||||||
| Simulator - tvOS 12.4 | appletvsimulator12.4 | 10.3 |
|
| Simulator - tvOS 12.4 | appletvsimulator12.4 | 10.3 |
|
||||||
| Simulator - tvOS 13.0 | appletvsimulator13.0 | 11.0, 11.1 |
|
| Simulator - tvOS 13.0 | appletvsimulator13.0 | 11.0, 11.1 |
|
||||||
| Simulator - tvOS 13.2 | appletvsimulator13.2 | 11.2.1, 11.3.1 |
|
| Simulator - tvOS 13.2 | appletvsimulator13.2 | 11.2.1, 11.3.1 |
|
||||||
| Simulator - tvOS 13.4 | appletvsimulator13.4 | 11.4, 11.4.1, 11.5, 11.6, 11.7 |
|
| Simulator - tvOS 13.4 | appletvsimulator13.4 | 11.4, 11.4.1, 11.5, 11.6, 11.7 |
|
||||||
| Simulator - tvOS 14.0 | appletvsimulator14.0 | 12.0, 12.0 |
|
| Simulator - tvOS 14.0 | appletvsimulator14.0 | 12.0, 12.0 |
|
||||||
|
| Simulator - tvOS 14.2 | appletvsimulator14.2 | 12.2 |
|
||||||
| watchOS 5.3 | watchos5.3 | 10.3 |
|
| watchOS 5.3 | watchos5.3 | 10.3 |
|
||||||
| watchOS 6.0 | watchos6.0 | 11.0, 11.1 |
|
| watchOS 6.0 | watchos6.0 | 11.0, 11.1 |
|
||||||
| watchOS 6.1 | watchos6.1 | 11.2.1, 11.3.1 |
|
| watchOS 6.1 | watchos6.1 | 11.2.1, 11.3.1 |
|
||||||
| watchOS 6.2 | watchos6.2 | 11.4, 11.4.1, 11.5, 11.6, 11.7 |
|
| watchOS 6.2 | watchos6.2 | 11.4, 11.4.1, 11.5, 11.6, 11.7 |
|
||||||
| watchOS 7.0 | watchos7.0 | 12.0, 12.0 |
|
| watchOS 7.0 | watchos7.0 | 12.0, 12.0 |
|
||||||
|
| watchOS 7.1 | watchos7.1 | 12.2 |
|
||||||
| Simulator - watchOS 5.3 | watchsimulator5.3 | 10.3 |
|
| Simulator - watchOS 5.3 | watchsimulator5.3 | 10.3 |
|
||||||
| Simulator - watchOS 6.0 | watchsimulator6.0 | 11.0, 11.1 |
|
| Simulator - watchOS 6.0 | watchsimulator6.0 | 11.0, 11.1 |
|
||||||
| Simulator - watchOS 6.1 | watchsimulator6.1 | 11.2.1, 11.3.1 |
|
| Simulator - watchOS 6.1 | watchsimulator6.1 | 11.2.1, 11.3.1 |
|
||||||
| Simulator - watchOS 6.2 | watchsimulator6.2 | 11.4, 11.4.1, 11.5, 11.6, 11.7 |
|
| Simulator - watchOS 6.2 | watchsimulator6.2 | 11.4, 11.4.1, 11.5, 11.6, 11.7 |
|
||||||
| Simulator - watchOS 7.0 | watchsimulator7.0 | 12.0, 12.0 |
|
| Simulator - watchOS 7.0 | watchsimulator7.0 | 12.0, 12.0 |
|
||||||
|
| Simulator - watchOS 7.1 | watchsimulator7.1 | 12.2 |
|
||||||
| DriverKit 19.0 | driverkit.macosx19.0 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5, 11.6, 11.7, 12.0 |
|
| DriverKit 19.0 | driverkit.macosx19.0 | 11.0, 11.1, 11.2.1, 11.3.1, 11.4, 11.4.1, 11.5, 11.6, 11.7, 12.0 |
|
||||||
| DriverKit 20.0 | driverkit.macosx20.0 | 12.0 |
|
| DriverKit 20.0 | driverkit.macosx20.0 | 12.0, 12.2 |
|
||||||
|
|
||||||
#### Installed Simulators
|
#### Installed Simulators
|
||||||
| OS | Xcode Version | Simulators |
|
| OS | Xcode Version | Simulators |
|
||||||
@@ -284,18 +291,18 @@
|
|||||||
| iOS 13.5 | 11.5 | iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (7th generation)<br>iPad Air (3rd generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Pro (9.7-inch) |
|
| iOS 13.5 | 11.5 | iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (7th generation)<br>iPad Air (3rd generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Pro (9.7-inch) |
|
||||||
| iOS 13.6 | 11.6 | iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (7th generation)<br>iPad Air (3rd generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Pro (9.7-inch) |
|
| iOS 13.6 | 11.6 | iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (7th generation)<br>iPad Air (3rd generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Pro (9.7-inch) |
|
||||||
| iOS 13.7 | 11.7 | iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (7th generation)<br>iPad Air (3rd generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Pro (9.7-inch) |
|
| iOS 13.7 | 11.7 | iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (7th generation)<br>iPad Air (3rd generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Pro (9.7-inch) |
|
||||||
| iOS 14.0 | 12.0 | iPod touch (7th generation)<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (7th generation)<br>iPad Air (3rd generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Pro (9.7-inch) |
|
| iOS 14.0 | 12.0<br>12.0 | iPod touch (7th generation)<br>iPhone 11<br>iPhone 11 Pro<br>iPhone 11 Pro Max<br>iPhone 8<br>iPhone 8 Plus<br>iPhone SE (2nd generation)<br>iPad (7th generation)<br>iPad (8th generation)<br>iPad Air (3rd generation)<br>iPad Air (4th generation)<br>iPad Pro (11-inch) (2nd generation)<br>iPad Pro (12.9-inch) (4th generation)<br>iPad Pro (9.7-inch) |
|
||||||
| tvOS 12.4 | 10.3 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
| tvOS 12.4 | 10.3 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||||
| tvOS 13.0 | 11.0<br>11.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
| tvOS 13.0 | 11.0<br>11.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||||
| tvOS 13.2 | 11.2.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
| tvOS 13.2 | 11.2.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||||
| tvOS 13.3 | 11.3.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
| tvOS 13.3 | 11.3.1 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||||
| tvOS 13.4 | 11.4<br>11.4.1<br>11.5<br>11.6<br>11.7 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
| tvOS 13.4 | 11.4<br>11.4.1<br>11.5<br>11.6<br>11.7 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||||
| tvOS 14.0 | 12.0 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
| tvOS 14.0 | 12.0<br>12.0 | Apple TV<br>Apple TV 4K<br>Apple TV 4K (at 1080p) |
|
||||||
| watchOS 5.3 | 10.3 | Apple Watch Series 2 - 38mm<br>Apple Watch Series 2 - 42mm<br>Apple Watch Series 3 - 38mm<br>Apple Watch Series 3 - 42mm<br>Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm |
|
| watchOS 5.3 | 10.3 | Apple Watch Series 2 - 38mm<br>Apple Watch Series 2 - 42mm<br>Apple Watch Series 3 - 38mm<br>Apple Watch Series 3 - 42mm<br>Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm |
|
||||||
| watchOS 6.0 | 11.0<br>11.1 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
| watchOS 6.0 | 11.0<br>11.1 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
||||||
| watchOS 6.1 | 11.2.1<br>11.3.1 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
| watchOS 6.1 | 11.2.1<br>11.3.1 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
||||||
| watchOS 6.2 | 11.4<br>11.4.1<br>11.5<br>11.6<br>11.7 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
| watchOS 6.2 | 11.4<br>11.4.1<br>11.5<br>11.6<br>11.7 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
||||||
| watchOS 7.0 | 12.0 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm |
|
| watchOS 7.0 | 12.0<br>12.0 | Apple Watch Series 4 - 40mm<br>Apple Watch Series 4 - 44mm<br>Apple Watch Series 5 - 40mm<br>Apple Watch Series 5 - 44mm<br>Apple Watch Series 6 - 40mm<br>Apple Watch Series 6 - 44mm |
|
||||||
|
|
||||||
### Android
|
### Android
|
||||||
#### Android SDK Tools
|
#### Android SDK Tools
|
||||||
|
|||||||
@@ -27,4 +27,7 @@ sudo "/Library/Application Support/VMware Tools/vmware-resolutionSet" 1176 885
|
|||||||
# sudo security delete-certificate -Z FF6797793A3CD798DC5B2ABEF56F73EDC9F83A64 /Library/Keychains/System.keychain
|
# sudo security delete-certificate -Z FF6797793A3CD798DC5B2ABEF56F73EDC9F83A64 /Library/Keychains/System.keychain
|
||||||
curl https://www.apple.com/certificateauthority/AppleWWDRCAG3.cer --output $HOME/AppleWWDRCAG3.cer --silent
|
curl https://www.apple.com/certificateauthority/AppleWWDRCAG3.cer --output $HOME/AppleWWDRCAG3.cer --silent
|
||||||
sudo security add-trusted-cert -d -r unspecified -k /Library/Keychains/System.keychain $HOME/AppleWWDRCAG3.cer
|
sudo security add-trusted-cert -d -r unspecified -k /Library/Keychains/System.keychain $HOME/AppleWWDRCAG3.cer
|
||||||
rm $HOME/AppleWWDRCAG3.cer
|
rm $HOME/AppleWWDRCAG3.cer
|
||||||
|
|
||||||
|
# Disable spotlight indexing to prevent possible high CPU usage after startup
|
||||||
|
sudo mdutil -ai off
|
||||||
@@ -3,6 +3,7 @@ export LC_ALL=en_US.UTF-8
|
|||||||
export LANG=en_US.UTF-8
|
export LANG=en_US.UTF-8
|
||||||
|
|
||||||
export ANDROID_HOME=${HOME}/Library/Android/sdk
|
export ANDROID_HOME=${HOME}/Library/Android/sdk
|
||||||
|
export ANDROID_SDK_ROOT=${HOME}/Library/Android/sdk
|
||||||
export ANDROID_NDK_HOME=${ANDROID_HOME}/ndk-bundle
|
export ANDROID_NDK_HOME=${ANDROID_HOME}/ndk-bundle
|
||||||
|
|
||||||
export NUNIT_BASE_PATH=/Library/Developer/nunit
|
export NUNIT_BASE_PATH=/Library/Developer/nunit
|
||||||
|
|||||||
@@ -12,8 +12,3 @@ brew install sox
|
|||||||
echo "set Soundflower (2ch) as input/output device"
|
echo "set Soundflower (2ch) as input/output device"
|
||||||
SwitchAudioSource -s "Soundflower (2ch)" -t input
|
SwitchAudioSource -s "Soundflower (2ch)" -t input
|
||||||
SwitchAudioSource -s "Soundflower (2ch)" -t output
|
SwitchAudioSource -s "Soundflower (2ch)" -t output
|
||||||
|
|
||||||
echo "grant microphone permission for simulators"
|
|
||||||
sudo sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db "insert into access values('kTCCServiceMicrophone','com.apple.CoreSimulator.SimulatorTrampoline', 0,1,1,NULL,NULL,NULL,'UNUSED',NULL,NULL,1576347152)"
|
|
||||||
sudo sqlite3 /Library/Application\ Support/com.apple.TCC/TCC.db "insert into access values('kTCCServiceMicrophone','/usr/local/opt/runner/runprovisioner.sh', 1,1,1,NULL,NULL,NULL,'UNUSED',NULL,NULL,1576661342)"
|
|
||||||
sudo sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db "insert into access values('kTCCServiceMicrophone','/usr/local/opt/runner/runprovisioner.sh', 1,1,1,NULL,NULL,NULL,'UNUSED',NULL,NULL,1576661342)"
|
|
||||||
|
|||||||
@@ -66,16 +66,20 @@ function InstallPyPy
|
|||||||
rm -f $PACKAGE_TAR_TEMP_PATH
|
rm -f $PACKAGE_TAR_TEMP_PATH
|
||||||
}
|
}
|
||||||
|
|
||||||
# PyPy 7.3.1 relies on system libffi.6.dylib, which is not existed in in libffi 3.3 release. As a workaround symlink can be created
|
|
||||||
ln -s libffi.7.dylib /usr/local/opt/libffi/lib/libffi.6.dylib
|
|
||||||
|
|
||||||
uri="https://downloads.python.org/pypy/"
|
uri="https://downloads.python.org/pypy/"
|
||||||
pypyVersions=$(curl -4 -s --compressed $uri | grep 'osx64' | awk -v uri="$uri" -F'>|<' '{print uri$5}')
|
pypyVersions=$(curl -4 -s --compressed $uri | grep 'osx64' | awk -v uri="$uri" -F'>|<' '{print uri$5}')
|
||||||
|
|
||||||
toolsetVersions=$(get_toolset_value '.toolcache[] | select(.name | contains("PyPy")) | .versions[]')
|
toolsetVersions=$(get_toolset_value '.toolcache[] | select(.name | contains("PyPy")) | .versions[]')
|
||||||
|
versionPattern="v[0-9]+\.[0-9]+\.[0-9]+-"
|
||||||
|
|
||||||
|
# PyPy 7.3.2 for High Sierra is broken, use 7.3.1 instead https://foss.heptapod.net/pypy/pypy/-/issues/3311
|
||||||
|
if is_HighSierra; then
|
||||||
|
versionPattern="v7.3.1-"
|
||||||
|
# PyPy 7.3.1 relies on system libffi.6.dylib, which is not existed in in libffi 3.3 release. As a workaround symlink can be created
|
||||||
|
ln -s libffi.7.dylib /usr/local/opt/libffi/lib/libffi.6.dylib
|
||||||
|
fi
|
||||||
|
|
||||||
for toolsetVersion in $toolsetVersions; do
|
for toolsetVersion in $toolsetVersions; do
|
||||||
latestMajorPyPyVersion=$(echo "${pypyVersions}" | grep -E "pypy${toolsetVersion}-v[0-9]+\.[0-9]+\.[0-9]+-" | head -1)
|
latestMajorPyPyVersion=$(echo "${pypyVersions}" | grep -E "pypy${toolsetVersion}-${versionPattern}" | head -1)
|
||||||
if [[ -z "$latestMajorPyPyVersion" ]]; then
|
if [[ -z "$latestMajorPyPyVersion" ]]; then
|
||||||
echo "Failed to get PyPy version '$toolsetVersion'"
|
echo "Failed to get PyPy version '$toolsetVersion'"
|
||||||
exit 1
|
exit 1
|
||||||
|
|||||||
@@ -3,6 +3,9 @@ source ~/utils/utils.sh
|
|||||||
source ~/utils/xamarin-utils.sh
|
source ~/utils/xamarin-utils.sh
|
||||||
|
|
||||||
VSMAC_VERSION=$(get_toolset_value '.xamarin.vsmac')
|
VSMAC_VERSION=$(get_toolset_value '.xamarin.vsmac')
|
||||||
|
if [ $VSMAC_VERSION == "latest" ]; then
|
||||||
|
VSMAC_VERSION=$(curl https://formulae.brew.sh/api/cask/visual-studio.json 2>/dev/null | jq .version | tr -d \")
|
||||||
|
fi
|
||||||
VSMAC_DOWNLOAD_URL=$(buildVSMacDownloadUrl $VSMAC_VERSION)
|
VSMAC_DOWNLOAD_URL=$(buildVSMacDownloadUrl $VSMAC_VERSION)
|
||||||
|
|
||||||
TMPMOUNT=`/usr/bin/mktemp -d /tmp/visualstudio.XXXX`
|
TMPMOUNT=`/usr/bin/mktemp -d /tmp/visualstudio.XXXX`
|
||||||
|
|||||||
@@ -289,6 +289,8 @@ $markdown += New-MDList -Lines (Build-XamarinAndroidList) -Style Unordered
|
|||||||
$markdown += New-MDHeader "Unit Test Framework" -Level 4
|
$markdown += New-MDHeader "Unit Test Framework" -Level 4
|
||||||
$markdown += New-MDList -Lines @(Get-NUnitVersion) -Style Unordered
|
$markdown += New-MDList -Lines @(Get-NUnitVersion) -Style Unordered
|
||||||
|
|
||||||
|
# First run doesn't provide full data about devices and runtimes
|
||||||
|
Get-XcodeInfoList | Out-Null
|
||||||
# Xcode section
|
# Xcode section
|
||||||
$xcodeInfo = Get-XcodeInfoList
|
$xcodeInfo = Get-XcodeInfoList
|
||||||
$markdown += New-MDHeader "Xcode" -Level 3
|
$markdown += New-MDHeader "Xcode" -Level 3
|
||||||
@@ -301,12 +303,9 @@ $markdown += New-MDHeader "Installed SDKs" -Level 4
|
|||||||
$markdown += Build-XcodeSDKTable $xcodeInfo | New-MDTable
|
$markdown += Build-XcodeSDKTable $xcodeInfo | New-MDTable
|
||||||
$markdown += New-MDNewLine
|
$markdown += New-MDNewLine
|
||||||
|
|
||||||
# Disable simulators table on 11.0 beta for now since "simctl" tool doesn't work properly
|
$markdown += New-MDHeader "Installed Simulators" -Level 4
|
||||||
if (-not $os.IsBigSur) {
|
$markdown += Build-XcodeSimulatorsTable $xcodeInfo | New-MDTable
|
||||||
$markdown += New-MDHeader "Installed Simulators" -Level 4
|
$markdown += New-MDNewLine
|
||||||
$markdown += Build-XcodeSimulatorsTable $xcodeInfo | New-MDTable
|
|
||||||
$markdown += New-MDNewLine
|
|
||||||
}
|
|
||||||
|
|
||||||
# Android section
|
# Android section
|
||||||
$markdown += New-MDHeader "Android" -Level 3
|
$markdown += New-MDHeader "Android" -Level 3
|
||||||
|
|||||||
@@ -46,7 +46,8 @@ function Get-XcodeInfoList {
|
|||||||
$versionInfo = Get-XcodeVersionInfo
|
$versionInfo = Get-XcodeVersionInfo
|
||||||
$versionInfo.Path = $xcodeRootPath
|
$versionInfo.Path = $xcodeRootPath
|
||||||
$versionInfo.IsDefault = ($xcodeRootPath -eq $defaultXcodeRootPath)
|
$versionInfo.IsDefault = ($xcodeRootPath -eq $defaultXcodeRootPath)
|
||||||
|
$versionInfo.IsStable = Test-XcodeStableRelease -XcodeRootPath $xcodeRootPath
|
||||||
|
|
||||||
$xcodeInfo.Add($xcodeRootPath, [PSCustomObject] @{
|
$xcodeInfo.Add($xcodeRootPath, [PSCustomObject] @{
|
||||||
VersionInfo = $versionInfo
|
VersionInfo = $versionInfo
|
||||||
SDKInfo = Get-XcodeSDKList
|
SDKInfo = Get-XcodeSDKList
|
||||||
@@ -91,6 +92,7 @@ function Build-XcodeTable {
|
|||||||
$xcodeList = $xcodeInfo.Values | ForEach-Object { $_.VersionInfo } | Sort-Object $sortRules
|
$xcodeList = $xcodeInfo.Values | ForEach-Object { $_.VersionInfo } | Sort-Object $sortRules
|
||||||
return $xcodeList | ForEach-Object {
|
return $xcodeList | ForEach-Object {
|
||||||
$defaultPostfix = If ($_.IsDefault) { " (default)" } else { "" }
|
$defaultPostfix = If ($_.IsDefault) { " (default)" } else { "" }
|
||||||
|
$betaPostfix = If ($_.IsStable) { "" } else { " (beta)" }
|
||||||
return [PSCustomObject] @{
|
return [PSCustomObject] @{
|
||||||
"Version" = $_.Version.ToString() + $betaPostfix + $defaultPostfix
|
"Version" = $_.Version.ToString() + $betaPostfix + $defaultPostfix
|
||||||
"Build" = $_.Build
|
"Build" = $_.Build
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"xamarin": {
|
"xamarin": {
|
||||||
"vsmac": "8.7.8.4",
|
"vsmac": "latest",
|
||||||
"mono-versions": [
|
"mono-versions": [
|
||||||
"6.12.0.93", "6.10.0.106", "6.8.0.123", "6.6.0.166", "6.4.0.208"
|
"6.12.0.93", "6.10.0.106", "6.8.0.123", "6.6.0.166", "6.4.0.208"
|
||||||
],
|
],
|
||||||
@@ -19,35 +19,35 @@
|
|||||||
"android-versions": [
|
"android-versions": [
|
||||||
"11.0.2.0", "10.3.1.4", "10.2.0.100", "10.1.3.7", "10.0.6.2"
|
"11.0.2.0", "10.3.1.4", "10.2.0.100", "10.1.3.7", "10.0.6.2"
|
||||||
],
|
],
|
||||||
"bundle-default": "latest",
|
"bundle-default": "6_12_0",
|
||||||
"bundles": [
|
"bundles": [
|
||||||
{
|
{
|
||||||
"symlink": "6_12_1",
|
"symlink": "6_12_1",
|
||||||
"mono":"6.12",
|
"mono":"6.12",
|
||||||
"ios": "14.0",
|
"ios": "14.0",
|
||||||
"mac": "6.20",
|
"mac": "6.20",
|
||||||
"android": "11.0"
|
"android": "11.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"symlink": "6_12_0",
|
"symlink": "6_12_0",
|
||||||
"mono":"6.12",
|
"mono":"6.12",
|
||||||
"ios": "13.20",
|
"ios": "13.20",
|
||||||
"mac": "6.20",
|
"mac": "6.20",
|
||||||
"android": "11.0"
|
"android": "11.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"symlink": "6_10_0",
|
"symlink": "6_10_0",
|
||||||
"mono":"6.10",
|
"mono":"6.10",
|
||||||
"ios": "13.18",
|
"ios": "13.18",
|
||||||
"mac": "6.18",
|
"mac": "6.18",
|
||||||
"android": "10.3"
|
"android": "10.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"symlink": "6_8_1",
|
"symlink": "6_8_1",
|
||||||
"mono":"6.8",
|
"mono":"6.8",
|
||||||
"ios": "13.16",
|
"ios": "13.16",
|
||||||
"mac": "6.16",
|
"mac": "6.16",
|
||||||
"android": "10.2"
|
"android": "10.2"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"symlink": "6_8_0",
|
"symlink": "6_8_0",
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"xamarin": {
|
"xamarin": {
|
||||||
"vsmac": "8.7.8.4",
|
"vsmac": "latest",
|
||||||
"mono-versions": [
|
"mono-versions": [
|
||||||
"6.12.0.93"
|
"6.12.0.93"
|
||||||
],
|
],
|
||||||
@@ -19,21 +19,21 @@
|
|||||||
"android-versions": [
|
"android-versions": [
|
||||||
"11.0.2.0"
|
"11.0.2.0"
|
||||||
],
|
],
|
||||||
"bundle-default": "latest",
|
"bundle-default": "6_12_0",
|
||||||
"bundles": [
|
"bundles": [
|
||||||
{
|
{
|
||||||
"symlink": "6_12_1",
|
"symlink": "6_12_1",
|
||||||
"mono":"6.12",
|
"mono":"6.12",
|
||||||
"ios": "14.0",
|
"ios": "14.0",
|
||||||
"mac": "6.20",
|
"mac": "6.20",
|
||||||
"android": "11.0"
|
"android": "11.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"symlink": "6_12_0",
|
"symlink": "6_12_0",
|
||||||
"mono":"6.12",
|
"mono":"6.12",
|
||||||
"ios": "13.20",
|
"ios": "13.20",
|
||||||
"mac": "6.20",
|
"mac": "6.20",
|
||||||
"android": "11.0"
|
"android": "11.0"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -15,7 +15,6 @@
|
|||||||
"private_virtual_network_with_public_ip": "{{env `PRIVATE_VIRTUAL_NETWORK_WITH_PUBLIC_IP`}}",
|
"private_virtual_network_with_public_ip": "{{env `PRIVATE_VIRTUAL_NETWORK_WITH_PUBLIC_IP`}}",
|
||||||
"vm_size": "Standard_DS4_v2",
|
"vm_size": "Standard_DS4_v2",
|
||||||
"run_scan_antivirus": "false",
|
"run_scan_antivirus": "false",
|
||||||
|
|
||||||
"root_folder": "C:",
|
"root_folder": "C:",
|
||||||
"toolset_json_path": "{{env `TEMP`}}\\toolset.json",
|
"toolset_json_path": "{{env `TEMP`}}\\toolset.json",
|
||||||
"image_folder": "C:\\image",
|
"image_folder": "C:\\image",
|
||||||
@@ -30,7 +29,11 @@
|
|||||||
"github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}",
|
"github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}",
|
||||||
"announcements": "{{env `ANNOUNCEMENTS`}}"
|
"announcements": "{{env `ANNOUNCEMENTS`}}"
|
||||||
},
|
},
|
||||||
"sensitive-variables": ["install_password", "client_secret", "github_feed_token"],
|
"sensitive-variables": [
|
||||||
|
"install_password",
|
||||||
|
"client_secret",
|
||||||
|
"github_feed_token"
|
||||||
|
],
|
||||||
"builders": [
|
"builders": [
|
||||||
{
|
{
|
||||||
"name": "vhd",
|
"name": "vhd",
|
||||||
@@ -65,7 +68,7 @@
|
|||||||
"provisioners": [
|
"provisioners": [
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"inline":[
|
"inline": [
|
||||||
"New-Item -Path {{user `image_folder`}} -ItemType Directory -Force"
|
"New-Item -Path {{user `image_folder`}} -ItemType Directory -Force"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -79,6 +82,11 @@
|
|||||||
"source": "{{ template_dir }}/scripts/SoftwareReport",
|
"source": "{{ template_dir }}/scripts/SoftwareReport",
|
||||||
"destination": "{{user `image_folder`}}"
|
"destination": "{{user `image_folder`}}"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "file",
|
||||||
|
"source": "{{ template_dir }}/post-generation",
|
||||||
|
"destination": "C:/post-generation"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "file",
|
"type": "file",
|
||||||
"source": "{{ template_dir }}/scripts/Tests",
|
"source": "{{ template_dir }}/scripts/Tests",
|
||||||
@@ -97,7 +105,7 @@
|
|||||||
{
|
{
|
||||||
"type": "windows-shell",
|
"type": "windows-shell",
|
||||||
"inline": [
|
"inline": [
|
||||||
"net user {{user `install_user`}} {{user `install_password`}} /add /passwordchg:no /passwordreq:yes /active:yes /Y" ,
|
"net user {{user `install_user`}} {{user `install_password`}} /add /passwordchg:no /passwordreq:yes /active:yes /Y",
|
||||||
"net localgroup Administrators {{user `install_user`}} /add",
|
"net localgroup Administrators {{user `install_user`}} /add",
|
||||||
"winrm set winrm/config/service/auth @{Basic=\"true\"}",
|
"winrm set winrm/config/service/auth @{Basic=\"true\"}",
|
||||||
"winrm get winrm/config/service/auth"
|
"winrm get winrm/config/service/auth"
|
||||||
@@ -116,7 +124,7 @@
|
|||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
||||||
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
|
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-PowerShellModules.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-PowerShellModules.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Initialize-VM.ps1",
|
"{{ template_dir }}/scripts/Installers/Initialize-VM.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-WebPlatformInstaller.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-WebPlatformInstaller.ps1"
|
||||||
@@ -125,7 +133,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1",
|
"{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-ContainersFeature.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-ContainersFeature.ps1"
|
||||||
]
|
]
|
||||||
@@ -137,8 +145,8 @@
|
|||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"inline": [
|
"inline": [
|
||||||
"setx ImageVersion {{user `image_version` }} /m",
|
"setx ImageVersion {{user `image_version` }} /m",
|
||||||
"setx ImageOS {{user `image_os` }} /m"
|
"setx ImageOS {{user `image_os` }} /m"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -147,7 +155,7 @@
|
|||||||
"IMAGE_VERSION={{user `image_version`}}",
|
"IMAGE_VERSION={{user `image_version`}}",
|
||||||
"IMAGEDATA_FILE={{user `imagedata_file`}}"
|
"IMAGEDATA_FILE={{user `imagedata_file`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Update-ImageData.ps1",
|
"{{ template_dir }}/scripts/Installers/Update-ImageData.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Docker.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Docker.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-PowershellCore.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-PowershellCore.ps1"
|
||||||
@@ -157,22 +165,17 @@
|
|||||||
"type": "windows-restart",
|
"type": "windows-restart",
|
||||||
"restart_timeout": "30m"
|
"restart_timeout": "30m"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"type": "powershell",
|
|
||||||
"scripts":[
|
|
||||||
"{{ template_dir }}/scripts/Installers/Update-DockerImages.ps1"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"valid_exit_codes": [
|
"valid_exit_codes": [
|
||||||
0,
|
0,
|
||||||
3010
|
3010
|
||||||
],
|
],
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
|
"{{ template_dir }}/scripts/Installers/Update-DockerImages.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-VS.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-VS.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-NET48.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-NET48.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Windows2016/Install-SSDT.ps1"
|
"{{ template_dir }}/scripts/Installers/Windows2016/Install-SSDT.ps1"
|
||||||
@@ -182,10 +185,10 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Nuget.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Nuget.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Wix.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Wix.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-WDK.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-WDK.ps1",
|
||||||
@@ -194,7 +197,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-ServiceFabricSDK.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-ServiceFabricSDK.ps1"
|
||||||
],
|
],
|
||||||
"execution_policy": "remotesigned"
|
"execution_policy": "remotesigned"
|
||||||
@@ -205,7 +208,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-AzureCli.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-AzureCli.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-AzureDevOpsCli.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-AzureDevOpsCli.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-AzCopy.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-AzCopy.ps1",
|
||||||
@@ -222,12 +225,12 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"GITHUB_FEED_TOKEN={{ user `github_feed_token` }}",
|
"GITHUB_FEED_TOKEN={{ user `github_feed_token` }}",
|
||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
||||||
"ROOT_FOLDER={{user `root_folder`}}"
|
"ROOT_FOLDER={{user `root_folder`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Download-ToolCache.ps1",
|
"{{ template_dir }}/scripts/Installers/Download-ToolCache.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-PyPy.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-PyPy.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Toolset.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Toolset.ps1",
|
||||||
@@ -238,7 +241,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Sbt.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Sbt.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Perl.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Perl.ps1",
|
||||||
@@ -257,7 +260,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Enable-DeveloperMode.ps1"
|
"{{ template_dir }}/scripts/Installers/Enable-DeveloperMode.ps1"
|
||||||
],
|
],
|
||||||
"elevated_user": "{{user `install_user`}}",
|
"elevated_user": "{{user `install_user`}}",
|
||||||
@@ -265,21 +268,23 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "windows-shell",
|
"type": "windows-shell",
|
||||||
"inline": ["wmic product where \"name like '%%microsoft azure powershell%%'\" call uninstall /nointeractive"]
|
"inline": [
|
||||||
|
"wmic product where \"name like '%%microsoft azure powershell%%'\" call uninstall /nointeractive"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
||||||
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
|
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-AzureModules.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-AzureModules.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-VSWhere.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-VSWhere.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-WinAppDriver.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-WinAppDriver.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Cmake.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Cmake.ps1",
|
||||||
@@ -291,18 +296,17 @@
|
|||||||
"{{ template_dir }}/scripts/Installers/Install-DotnetSDK.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-DotnetSDK.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"elevated_user": "SYSTEM",
|
"elevated_user": "SYSTEM",
|
||||||
"elevated_password": "",
|
"elevated_password": "",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Msys2.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-Msys2.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Mingw64.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Mingw64.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-TypeScript.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-TypeScript.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Haskell.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Haskell.ps1",
|
||||||
@@ -326,7 +330,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-WindowsUpdates.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-WindowsUpdates.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Configure-DynamicPort.ps1"
|
"{{ template_dir }}/scripts/Installers/Configure-DynamicPort.ps1"
|
||||||
],
|
],
|
||||||
@@ -339,10 +343,10 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Tests/RunAll-Tests.ps1"
|
"{{ template_dir }}/scripts/Tests/RunAll-Tests.ps1"
|
||||||
],
|
],
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
||||||
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}",
|
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}",
|
||||||
"ROOT_FOLDER={{user `root_folder`}}"
|
"ROOT_FOLDER={{user `root_folder`}}"
|
||||||
@@ -353,7 +357,7 @@
|
|||||||
"inline": [
|
"inline": [
|
||||||
"pwsh -File '{{user `image_folder`}}\\SoftwareReport\\SoftwareReport.Generator.ps1'"
|
"pwsh -File '{{user `image_folder`}}\\SoftwareReport\\SoftwareReport.Generator.ps1'"
|
||||||
],
|
],
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
||||||
"ANNOUNCEMENTS={{user `announcements`}}"
|
"ANNOUNCEMENTS={{user `announcements`}}"
|
||||||
]
|
]
|
||||||
@@ -366,7 +370,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Finalize-VM.ps1"
|
"{{ template_dir }}/scripts/Installers/Finalize-VM.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -376,16 +380,16 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"RUN_SCAN_ANTIVIRUS={{user `run_scan_antivirus`}}"
|
"RUN_SCAN_ANTIVIRUS={{user `run_scan_antivirus`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Run-Antivirus.ps1"
|
"{{ template_dir }}/scripts/Installers/Run-Antivirus.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Configure-Antivirus.ps1",
|
"{{ template_dir }}/scripts/Installers/Configure-Antivirus.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Disable-JITDebugger.ps1"
|
"{{ template_dir }}/scripts/Installers/Disable-JITDebugger.ps1"
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -15,7 +15,6 @@
|
|||||||
"private_virtual_network_with_public_ip": "{{env `PRIVATE_VIRTUAL_NETWORK_WITH_PUBLIC_IP`}}",
|
"private_virtual_network_with_public_ip": "{{env `PRIVATE_VIRTUAL_NETWORK_WITH_PUBLIC_IP`}}",
|
||||||
"vm_size": "Standard_D4_v2",
|
"vm_size": "Standard_D4_v2",
|
||||||
"run_scan_antivirus": "false",
|
"run_scan_antivirus": "false",
|
||||||
|
|
||||||
"root_folder": "C:",
|
"root_folder": "C:",
|
||||||
"toolset_json_path": "{{env `TEMP`}}\\toolset.json",
|
"toolset_json_path": "{{env `TEMP`}}\\toolset.json",
|
||||||
"image_folder": "C:\\image",
|
"image_folder": "C:\\image",
|
||||||
@@ -30,7 +29,11 @@
|
|||||||
"github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}",
|
"github_feed_token": "{{env `GITHUB_FEED_TOKEN`}}",
|
||||||
"announcements": "{{env `ANNOUNCEMENTS`}}"
|
"announcements": "{{env `ANNOUNCEMENTS`}}"
|
||||||
},
|
},
|
||||||
"sensitive-variables": ["install_password", "client_secret", "github_feed_token"],
|
"sensitive-variables": [
|
||||||
|
"install_password",
|
||||||
|
"client_secret",
|
||||||
|
"github_feed_token"
|
||||||
|
],
|
||||||
"builders": [
|
"builders": [
|
||||||
{
|
{
|
||||||
"name": "vhd",
|
"name": "vhd",
|
||||||
@@ -65,7 +68,7 @@
|
|||||||
"provisioners": [
|
"provisioners": [
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"inline":[
|
"inline": [
|
||||||
"New-Item -Path {{user `image_folder`}} -ItemType Directory -Force"
|
"New-Item -Path {{user `image_folder`}} -ItemType Directory -Force"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -79,6 +82,11 @@
|
|||||||
"source": "{{ template_dir }}/scripts/SoftwareReport",
|
"source": "{{ template_dir }}/scripts/SoftwareReport",
|
||||||
"destination": "{{user `image_folder`}}"
|
"destination": "{{user `image_folder`}}"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "file",
|
||||||
|
"source": "{{ template_dir }}/post-generation",
|
||||||
|
"destination": "C:/post-generation"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "file",
|
"type": "file",
|
||||||
"source": "{{ template_dir }}/scripts/Tests",
|
"source": "{{ template_dir }}/scripts/Tests",
|
||||||
@@ -97,7 +105,7 @@
|
|||||||
{
|
{
|
||||||
"type": "windows-shell",
|
"type": "windows-shell",
|
||||||
"inline": [
|
"inline": [
|
||||||
"net user {{user `install_user`}} {{user `install_password`}} /add /passwordchg:no /passwordreq:yes /active:yes /Y" ,
|
"net user {{user `install_user`}} {{user `install_password`}} /add /passwordchg:no /passwordreq:yes /active:yes /Y",
|
||||||
"net localgroup Administrators {{user `install_user`}} /add",
|
"net localgroup Administrators {{user `install_user`}} /add",
|
||||||
"winrm set winrm/config/service/auth @{Basic=\"true\"}",
|
"winrm set winrm/config/service/auth @{Basic=\"true\"}",
|
||||||
"winrm get winrm/config/service/auth"
|
"winrm get winrm/config/service/auth"
|
||||||
@@ -116,7 +124,7 @@
|
|||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
||||||
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
|
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-PowerShellModules.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-PowerShellModules.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Initialize-VM.ps1",
|
"{{ template_dir }}/scripts/Installers/Initialize-VM.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-WebPlatformInstaller.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-WebPlatformInstaller.ps1"
|
||||||
@@ -127,13 +135,13 @@
|
|||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"elevated_user": "SYSTEM",
|
"elevated_user": "SYSTEM",
|
||||||
"elevated_password": "",
|
"elevated_password": "",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Windows2019/Install-WSL.ps1"
|
"{{ template_dir }}/scripts/Installers/Windows2019/Install-WSL.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1",
|
"{{ template_dir }}/scripts/Installers/Update-DotnetTLS.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-ContainersFeature.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-ContainersFeature.ps1"
|
||||||
]
|
]
|
||||||
@@ -141,8 +149,8 @@
|
|||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"inline": [
|
"inline": [
|
||||||
"setx ImageVersion {{user `image_version` }} /m",
|
"setx ImageVersion {{user `image_version` }} /m",
|
||||||
"setx ImageOS {{user `image_os` }} /m"
|
"setx ImageOS {{user `image_os` }} /m"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -155,7 +163,7 @@
|
|||||||
"IMAGE_VERSION={{user `image_version`}}",
|
"IMAGE_VERSION={{user `image_version`}}",
|
||||||
"IMAGEDATA_FILE={{user `imagedata_file`}}"
|
"IMAGEDATA_FILE={{user `imagedata_file`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Update-ImageData.ps1",
|
"{{ template_dir }}/scripts/Installers/Update-ImageData.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Docker.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Docker.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-PowershellCore.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-PowershellCore.ps1"
|
||||||
@@ -167,7 +175,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Update-DockerImages.ps1"
|
"{{ template_dir }}/scripts/Installers/Update-DockerImages.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -177,10 +185,11 @@
|
|||||||
0,
|
0,
|
||||||
3010
|
3010
|
||||||
],
|
],
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
|
"{{ template_dir }}/scripts/Installers/Update-DockerImages.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-VS.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-VS.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-NET48.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-NET48.ps1"
|
||||||
],
|
],
|
||||||
@@ -189,10 +198,10 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Nuget.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Nuget.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Wix.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Wix.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-WDK.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-WDK.ps1",
|
||||||
@@ -210,7 +219,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-ServiceFabricSDK.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-ServiceFabricSDK.ps1"
|
||||||
],
|
],
|
||||||
"execution_policy": "remotesigned"
|
"execution_policy": "remotesigned"
|
||||||
@@ -221,38 +230,39 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"GITHUB_FEED_TOKEN={{ user `github_feed_token` }}",
|
"GITHUB_FEED_TOKEN={{ user `github_feed_token` }}",
|
||||||
"ROOT_FOLDER={{user `root_folder`}}"
|
"ROOT_FOLDER={{user `root_folder`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Download-ToolCache.ps1"
|
"{{ template_dir }}/scripts/Installers/Download-ToolCache.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "windows-shell",
|
"type": "windows-shell",
|
||||||
"inline": ["wmic product where \"name like '%%microsoft azure powershell%%'\" call uninstall /nointeractive"]
|
"inline": [
|
||||||
|
"wmic product where \"name like '%%microsoft azure powershell%%'\" call uninstall /nointeractive"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
||||||
"ROOT_FOLDER={{user `root_folder`}}",
|
"ROOT_FOLDER={{user `root_folder`}}",
|
||||||
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
|
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-PyPy.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-PyPy.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Toolset.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Toolset.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Configure-Toolset.ps1",
|
"{{ template_dir }}/scripts/Installers/Configure-Toolset.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-YAMLLint.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-YAMLLint.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Update-AndroidSDK.ps1",
|
"{{ template_dir }}/scripts/Installers/Update-AndroidSDK.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-AzureModules.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-AzureModules.ps1"
|
||||||
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-OpenSSL.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Perl.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Perl.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Git.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Git.ps1",
|
||||||
@@ -271,7 +281,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Enable-DeveloperMode.ps1"
|
"{{ template_dir }}/scripts/Installers/Enable-DeveloperMode.ps1"
|
||||||
],
|
],
|
||||||
"elevated_user": "{{user `install_user`}}",
|
"elevated_user": "{{user `install_user`}}",
|
||||||
@@ -281,13 +291,13 @@
|
|||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"elevated_user": "SYSTEM",
|
"elevated_user": "SYSTEM",
|
||||||
"elevated_password": "",
|
"elevated_password": "",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Msys2.ps1"
|
"{{ template_dir }}/scripts/Installers/Install-Msys2.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-VSWhere.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-VSWhere.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-WinAppDriver.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-WinAppDriver.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Install-Cmake.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-Cmake.ps1",
|
||||||
@@ -324,7 +334,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Install-WindowsUpdates.ps1",
|
"{{ template_dir }}/scripts/Installers/Install-WindowsUpdates.ps1",
|
||||||
"{{ template_dir }}/scripts/Installers/Configure-DynamicPort.ps1"
|
"{{ template_dir }}/scripts/Installers/Configure-DynamicPort.ps1"
|
||||||
],
|
],
|
||||||
@@ -337,10 +347,10 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Tests/RunAll-Tests.ps1"
|
"{{ template_dir }}/scripts/Tests/RunAll-Tests.ps1"
|
||||||
],
|
],
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
||||||
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}",
|
"PSMODULES_ROOT_FOLDER={{user `psmodules_root_folder`}}",
|
||||||
"ROOT_FOLDER={{user `root_folder`}}"
|
"ROOT_FOLDER={{user `root_folder`}}"
|
||||||
@@ -351,7 +361,7 @@
|
|||||||
"inline": [
|
"inline": [
|
||||||
"pwsh -File '{{user `image_folder`}}\\SoftwareReport\\SoftwareReport.Generator.ps1'"
|
"pwsh -File '{{user `image_folder`}}\\SoftwareReport\\SoftwareReport.Generator.ps1'"
|
||||||
],
|
],
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
"TOOLSET_JSON_PATH={{user `toolset_json_path`}}",
|
||||||
"ANNOUNCEMENTS={{user `announcements`}}"
|
"ANNOUNCEMENTS={{user `announcements`}}"
|
||||||
]
|
]
|
||||||
@@ -364,7 +374,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Finalize-VM.ps1"
|
"{{ template_dir }}/scripts/Installers/Finalize-VM.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -374,28 +384,28 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"environment_vars":[
|
"environment_vars": [
|
||||||
"RUN_SCAN_ANTIVIRUS={{user `run_scan_antivirus`}}"
|
"RUN_SCAN_ANTIVIRUS={{user `run_scan_antivirus`}}"
|
||||||
],
|
],
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Run-Antivirus.ps1"
|
"{{ template_dir }}/scripts/Installers/Run-Antivirus.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Configure-Antivirus.ps1"
|
"{{ template_dir }}/scripts/Installers/Configure-Antivirus.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Disable-JITDebugger.ps1"
|
"{{ template_dir }}/scripts/Installers/Disable-JITDebugger.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "powershell",
|
"type": "powershell",
|
||||||
"scripts":[
|
"scripts": [
|
||||||
"{{ template_dir }}/scripts/Installers/Run-NGen.ps1"
|
"{{ template_dir }}/scripts/Installers/Run-NGen.ps1"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
8
images/win/post-generation/Dotnet.ps1
Normal file
8
images/win/post-generation/Dotnet.ps1
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
$latestPath = [System.Environment]::GetEnvironmentVariable('PATH', [System.EnvironmentVariableTarget]::Machine)
|
||||||
|
$dotnetPath = "$env:USERPROFILE\.dotnet\tools"
|
||||||
|
|
||||||
|
if (-not $latestPath.Contains($dotnetPath))
|
||||||
|
{
|
||||||
|
$latestPath = "$dotnetPath;$latestPath"
|
||||||
|
[System.Environment]::SetEnvironmentVariable('PATH', $latestPath, [System.EnvironmentVariableTarget]::Machine)
|
||||||
|
}
|
||||||
12
images/win/post-generation/RustJunction.ps1
Normal file
12
images/win/post-generation/RustJunction.ps1
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# Create Rust junction points to cargo and rustup folder
|
||||||
|
$cargoTarget = "$env:USERPROFILE\.cargo"
|
||||||
|
if (-not (Test-Path $cargoTarget))
|
||||||
|
{
|
||||||
|
New-Item -ItemType Junction -Path $cargoTarget -Target "C:\Rust\.cargo"
|
||||||
|
}
|
||||||
|
|
||||||
|
$rustupTarget = "$env:USERPROFILE\.rustup"
|
||||||
|
if (-not (Test-Path $rustupTarget))
|
||||||
|
{
|
||||||
|
New-Item -ItemType Junction -Path $rustupTarget -Target "C:\Rust\.rustup"
|
||||||
|
}
|
||||||
4
images/win/post-generation/VSConfiguration.ps1
Normal file
4
images/win/post-generation/VSConfiguration.ps1
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
$vsInstallRoot = Get-VisualStudioPath
|
||||||
|
$devEnvPath = "$vsInstallRoot\Common7\IDE\devenv.exe"
|
||||||
|
|
||||||
|
cmd.exe /c "`"$devEnvPath`" /updateconfiguration"
|
||||||
@@ -37,6 +37,9 @@ Export-ModuleMember -Function @(
|
|||||||
'Get-VsCatalogJsonPath'
|
'Get-VsCatalogJsonPath'
|
||||||
'Get-VisualStudioPath'
|
'Get-VisualStudioPath'
|
||||||
'Install-AndroidSDKPackages'
|
'Install-AndroidSDKPackages'
|
||||||
|
'Get-AndroidPackages'
|
||||||
|
'Get-AndroidPackagesByName'
|
||||||
|
'Get-AndroidPackagesByVersion'
|
||||||
'Get-VisualStudioPackages'
|
'Get-VisualStudioPackages'
|
||||||
'Get-VisualStudioComponents'
|
'Get-VisualStudioComponents'
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -418,3 +418,41 @@ function Install-AndroidSDKPackages {
|
|||||||
& $AndroidSDKManagerPath --sdk_root=$AndroidSDKRootPath "$PrefixPackageName$package"
|
& $AndroidSDKManagerPath --sdk_root=$AndroidSDKRootPath "$PrefixPackageName$package"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function Get-AndroidPackages {
|
||||||
|
Param
|
||||||
|
(
|
||||||
|
[Parameter(Mandatory=$true)]
|
||||||
|
[string]$AndroidSDKManagerPath
|
||||||
|
)
|
||||||
|
|
||||||
|
return (& $AndroidSDKManagerPath --list --verbose).Trim() | Foreach-Object { $_.Split()[0] } | Where-Object {$_}
|
||||||
|
}
|
||||||
|
|
||||||
|
function Get-AndroidPackagesByName {
|
||||||
|
Param (
|
||||||
|
[Parameter(Mandatory=$true)]
|
||||||
|
[string[]]$AndroidPackages,
|
||||||
|
[Parameter(Mandatory=$true)]
|
||||||
|
[string]$PrefixPackageName
|
||||||
|
)
|
||||||
|
|
||||||
|
return $AndroidPackages | Where-Object { "$_".StartsWith($PrefixPackageName) }
|
||||||
|
}
|
||||||
|
|
||||||
|
function Get-AndroidPackagesByVersion {
|
||||||
|
Param (
|
||||||
|
[Parameter(Mandatory=$true)]
|
||||||
|
[string[]]$AndroidPackages,
|
||||||
|
[Parameter(Mandatory=$true)]
|
||||||
|
[string]$PrefixPackageName,
|
||||||
|
[object]$MinimumVersion,
|
||||||
|
[char]$Delimiter,
|
||||||
|
[int]$Index = 0
|
||||||
|
)
|
||||||
|
|
||||||
|
$Type = $MinimumVersion.GetType()
|
||||||
|
$packagesByName = Get-AndroidPackagesByName -AndroidPackages $AndroidPackages -PrefixPackageName $PrefixPackageName
|
||||||
|
$packagesByVersion = $packagesByName | Where-Object { ($_.Split($Delimiter)[$Index] -as $Type) -ge $MinimumVersion }
|
||||||
|
return $packagesByVersion | Sort-Object { $_.Split($Delimiter)[$Index] -as $Type} -Unique
|
||||||
|
}
|
||||||
|
|||||||
@@ -40,5 +40,10 @@ Choco-Install -PackageName hub
|
|||||||
|
|
||||||
Add-MachinePathItem "C:\Program Files\Git\bin"
|
Add-MachinePathItem "C:\Program Files\Git\bin"
|
||||||
|
|
||||||
|
# Add well-known SSH host keys to ssh_known_hosts
|
||||||
|
|
||||||
|
ssh-keyscan -t rsa github.com >> "C:\Program Files\Git\etc\ssh\ssh_known_hosts"
|
||||||
|
ssh-keyscan -t rsa ssh.dev.azure.com >> "C:\Program Files\Git\etc\ssh\ssh_known_hosts"
|
||||||
|
|
||||||
Invoke-PesterTests -TestFile "Git" -TestName "Git"
|
Invoke-PesterTests -TestFile "Git" -TestName "Git"
|
||||||
Invoke-PesterTests -TestFile "CLI.Tools" -TestName "Hub CLI"
|
Invoke-PesterTests -TestFile "CLI.Tools" -TestName "Hub CLI"
|
||||||
|
|||||||
@@ -3,14 +3,7 @@
|
|||||||
## Desc: Install and update Android SDK and tools
|
## Desc: Install and update Android SDK and tools
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
# Download the latest command line tools so that we can accept all of the licenses.
|
$ErrorActionPreference = "Stop"
|
||||||
# See https://developer.android.com/studio/#command-tools
|
|
||||||
$sdkArchPath = Start-DownloadWithRetry -Url "https://dl.google.com/android/repository/sdk-tools-windows-4333796.zip" -Name "android-sdk-tools.zip"
|
|
||||||
|
|
||||||
# Don't replace the one that VS installs as it seems to break things.
|
|
||||||
Expand-Archive -Path $sdkArchPath -DestinationPath android-sdk -Force
|
|
||||||
|
|
||||||
$sdk = Get-Item -Path .\android-sdk
|
|
||||||
|
|
||||||
# Install the standard Android SDK licenses. In the past, there wasn't a better way to do this,
|
# Install the standard Android SDK licenses. In the past, there wasn't a better way to do this,
|
||||||
# so we are base64-encoding a zip of the licenses directory from another installation.
|
# so we are base64-encoding a zip of the licenses directory from another installation.
|
||||||
@@ -30,7 +23,6 @@ $content = [System.Convert]::FromBase64String($base64Content)
|
|||||||
Set-Content -Path .\android-sdk-licenses.zip -Value $content -Encoding Byte
|
Set-Content -Path .\android-sdk-licenses.zip -Value $content -Encoding Byte
|
||||||
Expand-Archive -Path .\android-sdk-licenses.zip -DestinationPath 'C:\Program Files (x86)\Android\android-sdk' -Force
|
Expand-Archive -Path .\android-sdk-licenses.zip -DestinationPath 'C:\Program Files (x86)\Android\android-sdk' -Force
|
||||||
|
|
||||||
|
|
||||||
# run the updates.
|
# run the updates.
|
||||||
# keep newer versions in descending order
|
# keep newer versions in descending order
|
||||||
|
|
||||||
@@ -42,15 +34,32 @@ $sdkManager = "$sdkRoot\tools\bin\sdkmanager.bat"
|
|||||||
|
|
||||||
& $sdkManager --sdk_root=$sdkRoot "platform-tools"
|
& $sdkManager --sdk_root=$sdkRoot "platform-tools"
|
||||||
|
|
||||||
Install-AndroidSDKPackages -AndroidSDKManagerPath $sdkManager `
|
# get packages info
|
||||||
-AndroidSDKRootPath $sdkRoot `
|
$androidPackages = Get-AndroidPackages -AndroidSDKManagerPath $sdkManager
|
||||||
-AndroidPackages $androidToolset.platform_list `
|
|
||||||
-PrefixPackageName "platforms;"
|
# platforms
|
||||||
|
[int]$platformMinVersion = $androidToolset.platform_min_version
|
||||||
|
$platformList = Get-AndroidPackagesByVersion -AndroidPackages $androidPackages `
|
||||||
|
-PrefixPackageName "platforms;" `
|
||||||
|
-MinimumVersion $platformMinVersion `
|
||||||
|
-Delimiter "-" `
|
||||||
|
-Index 1
|
||||||
|
|
||||||
|
# build-tools
|
||||||
|
[version]$buildToolsMinVersion = $androidToolset.build_tools_min_version
|
||||||
|
$buildToolsList = Get-AndroidPackagesByVersion -AndroidPackages $androidPackages `
|
||||||
|
-PrefixPackageName "build-tools;" `
|
||||||
|
-MinimumVersion $buildToolsMinVersion `
|
||||||
|
-Delimiter ";" `
|
||||||
|
-Index 1
|
||||||
|
|
||||||
Install-AndroidSDKPackages -AndroidSDKManagerPath $sdkManager `
|
Install-AndroidSDKPackages -AndroidSDKManagerPath $sdkManager `
|
||||||
-AndroidSDKRootPath $sdkRoot `
|
-AndroidSDKRootPath $sdkRoot `
|
||||||
-AndroidPackages $androidToolset.build_tools `
|
-AndroidPackages $platformList
|
||||||
-PrefixPackageName "build-tools;"
|
|
||||||
|
Install-AndroidSDKPackages -AndroidSDKManagerPath $sdkManager `
|
||||||
|
-AndroidSDKRootPath $sdkRoot `
|
||||||
|
-AndroidPackages $buildToolsList
|
||||||
|
|
||||||
Install-AndroidSDKPackages -AndroidSDKManagerPath $sdkManager `
|
Install-AndroidSDKPackages -AndroidSDKManagerPath $sdkManager `
|
||||||
-AndroidSDKRootPath $sdkRoot `
|
-AndroidSDKRootPath $sdkRoot `
|
||||||
@@ -71,6 +80,7 @@ $ndkRoot = "C:\Program Files (x86)\Android\android-sdk\ndk-bundle"
|
|||||||
|
|
||||||
if (Test-Path $ndkRoot) {
|
if (Test-Path $ndkRoot) {
|
||||||
setx ANDROID_HOME $sdkRoot /M
|
setx ANDROID_HOME $sdkRoot /M
|
||||||
|
setx ANDROID_SDK_ROOT $sdkRoot /M
|
||||||
setx ANDROID_NDK_HOME $ndkRoot /M
|
setx ANDROID_NDK_HOME $ndkRoot /M
|
||||||
setx ANDROID_NDK_PATH $ndkRoot /M
|
setx ANDROID_NDK_PATH $ndkRoot /M
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -16,18 +16,7 @@ function DockerPull {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Test-IsWin16) {
|
$dockerToolset = (Get-ToolsetContent).docker
|
||||||
DockerPull mcr.microsoft.com/windows/servercore:ltsc2016
|
foreach($dockerImage in $dockerToolset.images) {
|
||||||
DockerPull mcr.microsoft.com/windows/nanoserver:10.0.14393.953
|
DockerPull $dockerImage
|
||||||
DockerPull mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2016
|
|
||||||
DockerPull mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2016
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Test-IsWin19) {
|
|
||||||
DockerPull mcr.microsoft.com/windows/servercore:ltsc2019
|
|
||||||
DockerPull mcr.microsoft.com/windows/nanoserver:1809
|
|
||||||
DockerPull mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019
|
|
||||||
DockerPull mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019
|
|
||||||
}
|
|
||||||
|
|
||||||
DockerPull microsoft/aspnetcore-build:1.0-2.0
|
|
||||||
|
|||||||
@@ -31,7 +31,6 @@ function Get-AndroidInstalledPackages {
|
|||||||
return $androidInstalledPackages
|
return $androidInstalledPackages
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function Build-AndroidTable {
|
function Build-AndroidTable {
|
||||||
$packageInfo = Get-AndroidInstalledPackages
|
$packageInfo = Get-AndroidInstalledPackages
|
||||||
return @(
|
return @(
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
$ErrorActionPreference = "Stop"
|
||||||
|
|
||||||
Import-Module MarkdownPS
|
Import-Module MarkdownPS
|
||||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Android.psm1") -DisableNameChecking
|
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Android.psm1") -DisableNameChecking
|
||||||
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Browsers.psm1") -DisableNameChecking
|
Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Browsers.psm1") -DisableNameChecking
|
||||||
@@ -72,7 +74,6 @@ $markdown += New-MDList -Style Unordered -Lines @(
|
|||||||
|
|
||||||
$markdown += New-MDHeader "Tools" -Level 3
|
$markdown += New-MDHeader "Tools" -Level 3
|
||||||
$markdown += New-MDList -Style Unordered -Lines @(
|
$markdown += New-MDList -Style Unordered -Lines @(
|
||||||
(Get-AzCosmosDBEmulatorVersion),
|
|
||||||
(Get-AzCopyVersion),
|
(Get-AzCopyVersion),
|
||||||
(Get-BazelVersion),
|
(Get-BazelVersion),
|
||||||
(Get-BazeliskVersion),
|
(Get-BazeliskVersion),
|
||||||
@@ -89,15 +90,12 @@ $markdown += New-MDList -Style Unordered -Lines @(
|
|||||||
(Get-KubectlVersion),
|
(Get-KubectlVersion),
|
||||||
(Get-KindVersion),
|
(Get-KindVersion),
|
||||||
(Get-MinGWVersion),
|
(Get-MinGWVersion),
|
||||||
(Get-MySQLVersion),
|
|
||||||
(Get-MercurialVersion),
|
(Get-MercurialVersion),
|
||||||
(Get-NSISVersion),
|
(Get-NSISVersion),
|
||||||
(Get-NewmanVersion),
|
(Get-NewmanVersion),
|
||||||
(Get-OpenSSLVersion),
|
(Get-OpenSSLVersion),
|
||||||
(Get-PackerVersion),
|
(Get-PackerVersion),
|
||||||
(Get-PulumiVersion),
|
(Get-PulumiVersion),
|
||||||
(Get-SQLPSVersion),
|
|
||||||
(Get-SQLServerPSVersion),
|
|
||||||
(Get-SVNVersion),
|
(Get-SVNVersion),
|
||||||
(Get-GHCVersion),
|
(Get-GHCVersion),
|
||||||
(Get-CabalVersion),
|
(Get-CabalVersion),
|
||||||
@@ -167,6 +165,14 @@ $markdown += New-MDHeader "Databases" -Level 3
|
|||||||
$markdown += Build-DatabasesMarkdown
|
$markdown += Build-DatabasesMarkdown
|
||||||
$markdown += New-MDNewLine
|
$markdown += New-MDNewLine
|
||||||
|
|
||||||
|
$markdown += New-MDHeader "Database tools" -Level 3
|
||||||
|
$markdown += New-MDList -Style Unordered -Lines @(
|
||||||
|
(Get-AzCosmosDBEmulatorVersion),
|
||||||
|
(Get-SQLPSVersion),
|
||||||
|
(Get-MySQLVersion)
|
||||||
|
)
|
||||||
|
$markdown += New-MDNewLine
|
||||||
|
|
||||||
$vs = Get-VisualStudioVersion
|
$vs = Get-VisualStudioVersion
|
||||||
$markdown += New-MDHeader "$($vs.Name)" -Level 3
|
$markdown += New-MDHeader "$($vs.Name)" -Level 3
|
||||||
$markdown += $vs | New-MDTable
|
$markdown += $vs | New-MDTable
|
||||||
@@ -229,4 +235,8 @@ $markdown += New-MDHeader "Android" -Level 3
|
|||||||
$markdown += Build-AndroidTable | New-MDTable
|
$markdown += Build-AndroidTable | New-MDTable
|
||||||
$markdown += New-MDNewLine
|
$markdown += New-MDNewLine
|
||||||
|
|
||||||
|
# Docker images section
|
||||||
|
$markdown += New-MDHeader "Cached Docker images" -Level 3
|
||||||
|
$markdown += New-MDList -Style Unordered -Lines @(Get-CachedDockerImages)
|
||||||
|
|
||||||
$markdown | Out-File -FilePath "C:\InstalledSoftware.md"
|
$markdown | Out-File -FilePath "C:\InstalledSoftware.md"
|
||||||
@@ -34,7 +34,7 @@ function Get-CodeQLBundleVersion {
|
|||||||
$CodeQLVersionsWildcard = Join-Path $Env:AGENT_TOOLSDIRECTORY -ChildPath "codeql" | Join-Path -ChildPath "*"
|
$CodeQLVersionsWildcard = Join-Path $Env:AGENT_TOOLSDIRECTORY -ChildPath "codeql" | Join-Path -ChildPath "*"
|
||||||
$CodeQLVersionPath = Get-ChildItem $CodeQLVersionsWildcard | Select-Object -First 1 -Expand FullName
|
$CodeQLVersionPath = Get-ChildItem $CodeQLVersionsWildcard | Select-Object -First 1 -Expand FullName
|
||||||
$CodeQLPath = Join-Path $CodeQLVersionPath -ChildPath "x64" | Join-Path -ChildPath "codeql" | Join-Path -ChildPath "codeql.exe"
|
$CodeQLPath = Join-Path $CodeQLVersionPath -ChildPath "x64" | Join-Path -ChildPath "codeql" | Join-Path -ChildPath "codeql.exe"
|
||||||
$CodeQLVersion = $($CodeQLPath version --quiet)
|
$CodeQLVersion = & $CodeQLPath version --quiet
|
||||||
return "CodeQL Action Bundle $CodeQLVersion"
|
return "CodeQL Action Bundle $CodeQLVersion"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -125,12 +125,6 @@ function Get-SQLPSVersion {
|
|||||||
return "SQLPS $version"
|
return "SQLPS $version"
|
||||||
}
|
}
|
||||||
|
|
||||||
function Get-SQLServerPSVersion {
|
|
||||||
$module = Get-Module -Name SQLServer -ListAvailable
|
|
||||||
$version = $module.Version
|
|
||||||
return "SQLServer PS $version"
|
|
||||||
}
|
|
||||||
|
|
||||||
function Get-SVNVersion {
|
function Get-SVNVersion {
|
||||||
$svnVersion = $(svn --version --quiet)
|
$svnVersion = $(svn --version --quiet)
|
||||||
return "Subversion (SVN) $svnVersion"
|
return "Subversion (SVN) $svnVersion"
|
||||||
|
|||||||
@@ -2,16 +2,27 @@ Import-Module (Join-Path $PSScriptRoot "..\SoftwareReport\SoftwareReport.Android
|
|||||||
|
|
||||||
Describe "Android SDK" {
|
Describe "Android SDK" {
|
||||||
$androidToolset = (Get-ToolsetContent).android
|
$androidToolset = (Get-ToolsetContent).android
|
||||||
|
$androidPackages = Get-AndroidPackages -AndroidSDKManagerPath (Get-AndroidSDKManagerPath)
|
||||||
$androidInstalledPackages = Get-AndroidInstalledPackages
|
$androidInstalledPackages = Get-AndroidInstalledPackages
|
||||||
|
|
||||||
$platformTestCases = @()
|
$platformTestCases = @()
|
||||||
$platformList = $androidToolset.platform_list
|
[int]$platformMinVersion = $androidToolset.platform_min_version
|
||||||
|
$platformList = Get-AndroidPackagesByVersion -AndroidPackages $androidPackages `
|
||||||
|
-PrefixPackageName "platforms;" `
|
||||||
|
-MinimumVersion $platformMinVersion `
|
||||||
|
-Delimiter "-" `
|
||||||
|
-Index 1
|
||||||
$platformList | ForEach-Object {
|
$platformList | ForEach-Object {
|
||||||
$platformTestCases += @{ platformVersion = $_; installedPackages = $androidInstalledPackages }
|
$platformTestCases += @{ platformVersion = $_; installedPackages = $androidInstalledPackages }
|
||||||
}
|
}
|
||||||
|
|
||||||
$buildToolsTestCases = @()
|
$buildToolsTestCases = @()
|
||||||
$buildToolsList = $androidToolset.build_tools
|
[version]$buildToolsMinVersion = $androidToolset.build_tools_min_version
|
||||||
|
$buildToolsList = Get-AndroidPackagesByVersion -AndroidPackages $androidPackages `
|
||||||
|
-PrefixPackageName "build-tools;" `
|
||||||
|
-MinimumVersion $buildToolsMinVersion `
|
||||||
|
-Delimiter ";" `
|
||||||
|
-Index 1
|
||||||
$buildToolsList | ForEach-Object {
|
$buildToolsList | ForEach-Object {
|
||||||
$buildToolsTestCases += @{ buildToolsVersion = $_; installedPackages = $androidInstalledPackages }
|
$buildToolsTestCases += @{ buildToolsVersion = $_; installedPackages = $androidInstalledPackages }
|
||||||
}
|
}
|
||||||
@@ -35,14 +46,14 @@ Describe "Android SDK" {
|
|||||||
}
|
}
|
||||||
|
|
||||||
It "Platform version <platformVersion> is installed" -TestCases $platformTestCases {
|
It "Platform version <platformVersion> is installed" -TestCases $platformTestCases {
|
||||||
"$installedPackages" | Should -Match "platforms;$platformVersion"
|
"$installedPackages" | Should -Match "$platformVersion"
|
||||||
}
|
}
|
||||||
|
|
||||||
It "Platform build tools <buildToolsVersion> is installed" -TestCases $buildToolsTestCases {
|
It "Platform build tools <buildToolsVersion> is installed" -TestCases $buildToolsTestCases {
|
||||||
"$installedPackages" | Should -Match "build-tools;$buildToolsVersion"
|
"$installedPackages" | Should -Match "$buildToolsVersion"
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Test-isWin19) {
|
if (Test-IsWin19) {
|
||||||
It "Extra package <extraPackage> is installed" -TestCases $extraPackagesTestCases {
|
It "Extra package <extraPackage> is installed" -TestCases $extraPackagesTestCases {
|
||||||
"$installedPackages" | Should -Match "extras;$extraPackage"
|
"$installedPackages" | Should -Match "extras;$extraPackage"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -121,17 +121,14 @@
|
|||||||
"3.8.0",
|
"3.8.0",
|
||||||
"4.3.0",
|
"4.3.0",
|
||||||
"4.4.0",
|
"4.4.0",
|
||||||
"4.6.0"
|
"4.6.0",
|
||||||
|
"4.7.0"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"android": {
|
"android": {
|
||||||
"platform_list": [
|
"platform_min_version": "19",
|
||||||
"android-30", "android-29", "android-28", "android-27", "android-26", "android-25", "android-24", "android-23", "android-22", "android-21", "android-19"
|
"build_tools_min_version": "19.1.0",
|
||||||
],
|
|
||||||
"build_tools": [
|
|
||||||
"30.0.2", "30.0.1", "30.0.0", "29.0.3", "29.0.2", "29.0.1", "29.0.0", "28.0.3", "28.0.2", "28.0.1", "28.0.0", "27.0.3", "27.0.2", "27.0.1", "27.0.0", "26.0.3", "26.0.2", "26.0.1", "26.0.0", "25.0.3", "25.0.2", "25.0.1", "25.0.0", "24.0.3", "24.0.2", "24.0.1", "24.0.0", "23.0.3", "23.0.2", "23.0.1", "22.0.1", "21.1.2", "20.0.0", "19.1.0"
|
|
||||||
],
|
|
||||||
"extra_list": [
|
"extra_list": [
|
||||||
"android;m2repository",
|
"android;m2repository",
|
||||||
"google;m2repository",
|
"google;m2repository",
|
||||||
@@ -230,5 +227,14 @@
|
|||||||
],
|
],
|
||||||
"vsix": [
|
"vsix": [
|
||||||
]
|
]
|
||||||
|
},
|
||||||
|
"docker": {
|
||||||
|
"images": [
|
||||||
|
"mcr.microsoft.com/windows/servercore:ltsc2016",
|
||||||
|
"mcr.microsoft.com/windows/nanoserver:10.0.14393.953",
|
||||||
|
"mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2016",
|
||||||
|
"mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2016",
|
||||||
|
"microsoft/aspnetcore-build:1.0-2.0"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -130,17 +130,14 @@
|
|||||||
"3.8.0",
|
"3.8.0",
|
||||||
"4.3.0",
|
"4.3.0",
|
||||||
"4.4.0",
|
"4.4.0",
|
||||||
"4.6.0"
|
"4.6.0",
|
||||||
|
"4.7.0"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"android": {
|
"android": {
|
||||||
"platform_list": [
|
"platform_min_version": "19",
|
||||||
"android-30", "android-29", "android-28", "android-27", "android-26", "android-25", "android-24", "android-23", "android-22", "android-21", "android-19"
|
"build_tools_min_version": "19.1.0",
|
||||||
],
|
|
||||||
"build_tools": [
|
|
||||||
"30.0.2", "30.0.1", "30.0.0", "29.0.3", "29.0.2", "29.0.1", "29.0.0", "28.0.3", "28.0.2", "28.0.1", "28.0.0", "27.0.3", "27.0.2", "27.0.1", "27.0.0", "26.0.3", "26.0.2", "26.0.1", "26.0.0", "25.0.3", "25.0.2", "25.0.1", "25.0.0", "24.0.3", "24.0.2", "24.0.1", "24.0.0", "23.0.3", "23.0.2", "23.0.1", "22.0.1", "21.1.2", "20.0.0", "19.1.0"
|
|
||||||
],
|
|
||||||
"extra_list": [
|
"extra_list": [
|
||||||
"android;m2repository",
|
"android;m2repository",
|
||||||
"google;m2repository",
|
"google;m2repository",
|
||||||
@@ -282,5 +279,14 @@
|
|||||||
"id": "VSInstallerProjects"
|
"id": "VSInstallerProjects"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
},
|
||||||
|
"docker": {
|
||||||
|
"images": [
|
||||||
|
"mcr.microsoft.com/windows/servercore:ltsc2019",
|
||||||
|
"mcr.microsoft.com/windows/nanoserver:1809",
|
||||||
|
"mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019",
|
||||||
|
"mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019",
|
||||||
|
"microsoft/aspnetcore-build:1.0-2.0"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user