mirror of
https://github.com/actions/runner-images.git
synced 2026-01-06 10:09:20 +08:00
41 lines
2.1 KiB
PowerShell
41 lines
2.1 KiB
PowerShell
param(
|
|
[ValidateSet('Windows2019-Azure','Windows2016-Azure','ubuntu1604','ubuntu1804')]
|
|
[String] [Parameter (Mandatory=$true)] $Image,
|
|
[String] [Parameter (Mandatory=$true)] $ClientId,
|
|
[String] [Parameter (Mandatory=$true)] $ClientSecret,
|
|
[String] [Parameter (Mandatory=$true)] $GitHubFeedToken,
|
|
[String] [Parameter (Mandatory=$true)] $ResourcesNamePrefix,
|
|
[String] [Parameter (Mandatory=$true)] $Location,
|
|
[String] [Parameter (Mandatory=$true)] $ResourceGroup,
|
|
[String] [Parameter (Mandatory=$true)] $StorageAccount,
|
|
[String] [Parameter (Mandatory=$true)] $SubscriptionId,
|
|
[String] [Parameter (Mandatory=$true)] $TenantId,
|
|
[String] [Parameter (Mandatory=$true)] $VirtualNetworkName,
|
|
[String] [Parameter (Mandatory=$true)] $VirtualNetworkRG,
|
|
[String] [Parameter (Mandatory=$true)] $VirtualNetworkSubnet
|
|
)
|
|
|
|
$TemplatePath = (Get-ChildItem -Path "images" -Include "$Image.json" -Recurse -Depth 2).FullName
|
|
$TempResourceGroupName = "${ResourcesNamePrefix}_${Image}"
|
|
$InstallPassword = [System.GUID]::NewGuid().ToString().ToUpper()
|
|
|
|
Write-Host "TemplatePath = $TemplatePath"
|
|
Write-Host "ResourcesNamePrefix = $ResourcesNamePrefix"
|
|
Write-Host "TempResourceGroupName = $TempResourceGroupName"
|
|
|
|
Write-Host "Build $Image VM"
|
|
packer build -var "capture_name_prefix=$ResourcesNamePrefix" `
|
|
-var "client_id=$ClientId" `
|
|
-var "client_secret=$ClientSecret" `
|
|
-var "install_password=$InstallPassword" `
|
|
-var "github_feed_token=$GitHubFeedToken" `
|
|
-var "location=$Location" `
|
|
-var "resource_group=$ResourceGroup" `
|
|
-var "storage_account=$StorageAccount" `
|
|
-var "subscription_id=$SubscriptionId" `
|
|
-var "temp_resource_group_name=$TempResourceGroupName" `
|
|
-var "tenant_id=$TenantId" `
|
|
-var "virtual_network_name=$VirtualNetworkName" `
|
|
-var "virtual_network_resource_group_name=$VirtualNetworkRG" `
|
|
-var "virtual_network_subnet_name=$VirtualNetworkSubnet" `
|
|
$TemplatePath |