PackerBuild@0 - 建置機器映射 v0 工作
使用此工作來使用 Packer 建置機器映射,此映射可用於 Azure 虛擬機器擴展集部署。
注意
Syntax
# Build machine image v0
# Build a machine image using Packer, which may be used for Azure Virtual machine scale set deployment.
- task: PackerBuild@0
inputs:
templateType: 'builtin' # 'builtin' | 'custom'. Required. Packer template. Default: builtin.
#customTemplateLocation: # string. Required when templateType = custom. Packer template location.
#customTemplateParameters: '{}' # string. Optional. Use when templateType = custom. Template parameters. Default: {}.
# Azure Details
ConnectedServiceName: # string. Required when templateType = builtin. Azure subscription.
location: # string. Required when templateType = builtin. Storage location.
storageAccountName: # string. Required when templateType = builtin. Storage account.
azureResourceGroup: # string. Required when templateType = builtin. Resource group.
# Deployment Inputs
baseImageSource: 'default' # 'default' | 'customVhd'. Required when templateType = builtin. Base image source. Default: default.
#baseImage: 'MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows' # 'MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows' | 'MicrosoftWindowsServer:WindowsServer:2016-Datacenter:windows' | 'MicrosoftWindowsServer:WindowsServer:2012-Datacenter:windows' | 'MicrosoftWindowsServer:WindowsServer:2008-R2-SP1:windows' | 'Canonical:UbuntuServer:14.04.4-LTS:linux' | 'Canonical:UbuntuServer:16.04-LTS:linux' | 'RedHat:RHEL:7.2:linux' | 'RedHat:RHEL:6.8:linux' | 'OpenLogic:CentOS:7.2:linux' | 'OpenLogic:CentOS:6.8:linux' | 'credativ:Debian:8:linux' | 'credativ:Debian:7:linux' | 'SUSE:openSUSE-Leap:42.2:linux' | 'SUSE:SLES:12-SP2:linux' | 'SUSE:SLES:11-SP4:linux'. Required when baseImageSource = default && templateType = builtin. Base image. Default: MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows.
#customImageUrl: # string. Required when baseImageSource = customVhd && templateType = builtin. Base image URL.
#customImageOSType: 'windows' # 'windows' | 'linux'. Required when baseImageSource = customVhd && templateType = builtin. Base image OS. Default: windows.
packagePath: # string. Required when templateType = builtin. Deployment Package.
deployScriptPath: # string. Required when templateType = builtin. Deployment script.
#deployScriptArguments: # string. Optional. Use when templateType = builtin. Deployment script arguments.
# Advanced
#additionalBuilderParameters: '{}' # string. Optional. Use when templateType = builtin. Additional Builder parameters. Default: {}.
#skipTempFileCleanupDuringVMDeprovision: true # boolean. Optional. Use when templateType = builtin. Skip temporary file cleanup during deprovision. Default: true.
# Output
#imageUri: # string. Image URL.
# Build Machine Image v0
# Build machine image using Packer. This image can be used for Azure Virtual machine scale set deployment.
- task: PackerBuild@0
inputs:
templateType: 'builtin' # 'builtin' | 'custom'. Required. Packer template. Default: builtin.
#customTemplateLocation: # string. Required when templateType = custom. Packer template location.
#customTemplateParameters: '{}' # string. Optional. Use when templateType = custom. Template parameters. Default: {}.
# Azure Details
ConnectedServiceName: # string. Required when templateType = builtin. Azure subscription.
location: # string. Required when templateType = builtin. Storage location.
storageAccountName: # string. Required when templateType = builtin. Storage account.
azureResourceGroup: # string. Required when templateType = builtin. Resource group.
# Deployment Inputs
baseImageSource: 'default' # 'default' | 'customVhd'. Required when templateType = builtin. Base image source. Default: default.
#baseImage: 'MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows' # 'MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows' | 'MicrosoftWindowsServer:WindowsServer:2016-Datacenter:windows' | 'MicrosoftWindowsServer:WindowsServer:2012-Datacenter:windows' | 'MicrosoftWindowsServer:WindowsServer:2008-R2-SP1:windows' | 'Canonical:UbuntuServer:14.04.4-LTS:linux' | 'Canonical:UbuntuServer:16.04-LTS:linux' | 'RedHat:RHEL:7.2:linux' | 'RedHat:RHEL:6.8:linux' | 'OpenLogic:CentOS:7.2:linux' | 'OpenLogic:CentOS:6.8:linux' | 'credativ:Debian:8:linux' | 'credativ:Debian:7:linux' | 'SUSE:openSUSE-Leap:42.2:linux' | 'SUSE:SLES:12-SP2:linux' | 'SUSE:SLES:11-SP4:linux'. Required when baseImageSource = default && templateType = builtin. Base image. Default: MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows.
#customImageUrl: # string. Required when baseImageSource = customVhd && templateType = builtin. Base image URL.
#customImageOSType: 'windows' # 'windows' | 'linux'. Required when baseImageSource = customVhd && templateType = builtin. Base image OS. Default: windows.
packagePath: # string. Required when templateType = builtin. Deployment Package.
deployScriptPath: # string. Required when templateType = builtin. Deployment script.
#deployScriptArguments: # string. Optional. Use when templateType = builtin. Deployment script arguments.
# Advanced
#additionalBuilderParameters: '{}' # string. Optional. Use when templateType = builtin. Additional Builder parameters. Default: {}.
#skipTempFileCleanupDuringVMDeprovision: true # boolean. Optional. Use when templateType = builtin. Skip temporary file cleanup during deprovision. Default: true.
# Output
#imageUri: # string. Image URL.
輸入
templateType
- Packer 範本
string
. 必要。 允許的值: builtin
(自動產生) , custom
(使用者提供) 。 預設值:builtin
。
指定是否要讓工作自動產生 Packer 範本,或使用您提供的自訂範本。
customTemplateLocation
- Packer 範本位置
string
. 當 templateType = custom
時為必要。
指定自訂使用者提供的範本路徑。
customTemplateParameters
- 範本參數
string
. 選擇性。 使用 時 templateType = custom
。 預設值:{}
。
指定將傳遞至 Packer 以建置自訂範本的參數。 這應該對應至自訂範本中的 區 variables
段。 例如,如果範本有名為 drop-location
的變數,請在這裡新增參數,其中包含您要使用的名稱 drop-location
和值。 您也可以將值連結至發行變數。 若要在方格中檢視/編輯其他參數,請按一下 …
文字方塊旁的 。
ConnectedServiceName
- Azure 訂用帳戶
string
. 當 templateType = builtin
時為必要。
指定用於製作和儲存機器映射的 Azure Resource Manager訂用帳戶。
location
- 儲存位置
string
. 當 templateType = builtin
時為必要。
指定儲存所建置機器映射的位置。 此位置也可用來建立暫存 VM,以便建置映射。
storageAccountName
- 儲存體帳戶
string
. 當 templateType = builtin
時為必要。
指定用來儲存所建置機器映射的儲存體帳戶。 此儲存體帳戶必須在選取的位置中預先存在。
azureResourceGroup
- 資源群組
string
. 當 templateType = builtin
時為必要。
指定包含所選儲存體帳戶的 Azure 資源群組。
baseImageSource
- 基底映射來源
string
. 當 templateType = builtin
時為必要。 允許的值: default
(資源庫) , customVhd
(自訂) 。 預設值:default
。
指定基底映射的來源。 您可以從 OS 映射的策劃資源庫中選擇,或提供自訂映射的 URL。
baseImage
- 基底映射
string
. 當 baseImageSource = default && templateType = builtin
時為必要。 允許的值: MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows
(Windows 2012-R2-Datacenter) 、 MicrosoftWindowsServer:WindowsServer:2016-Datacenter:windows
(Windows 2016-Datacenter) 、 MicrosoftWindowsServer:WindowsServer:2012-Datacenter:windows
(Windows 2012-Datacenter) 、 MicrosoftWindowsServer:WindowsServer:2008-R2-SP1:windows
(Windows 2008-R2-SP1 Canonical:UbuntuServer:14.04.4-LTS:linux
) 、 (Ubuntu 14.04.4-LTS Canonical:UbuntuServer:16.04-LTS:linux
) 、 (Ubuntu 16.04-LTS) 、 RedHat:RHEL:7.2:linux
(RHEL 7.2) 、 RedHat:RHEL:6.8:linux
(RHEL 6.8) 、 OpenLogic:CentOS:7.2:linux
(CentOS 7.2) 、 (CentOS 6.8) 、 OpenLogic:CentOS:6.8:linux
credativ:Debian:8:linux
(Debian 8) 、 credativ:Debian:7:linux
(Debian 7) 、 SUSE:openSUSE-Leap:42.2:linux
(openSUSE-Leap 42.2) , SUSE:SLES:12-SP2:linux
(SLES 12-SP2) , SUSE:SLES:11-SP4:linux
(SLES 11-SP4) 。 預設值:MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows
。
從策劃的 OS 映射清單中選擇。 這會用於在擷取機器映射之前先安裝必要 () 和應用程式 () 。
customImageUrl
- 基底映射 URL
string
. 當 baseImageSource = customVhd && templateType = builtin
時為必要。
指定基底映射的 URL。 這會用於在擷取機器映射之前先安裝必要 () 和應用程式 () 。
customImageOSType
- 基底映射 OS
string
. 當 baseImageSource = customVhd && templateType = builtin
時為必要。 允許值:windows
和 linux
。 預設值:windows
。
packagePath
- 部署套件
string
. 當 templateType = builtin
時為必要。
指定相對於 的部署套件目錄 $(System.DefaultWorkingDirectory)
路徑。 支援迷你模式。 範例路徑: FrontendWebApp/**/GalleryApp
。
deployScriptPath
- 部署腳本
string
. 當 templateType = builtin
時為必要。
針對 Windows) 指定 powershell 腳本 (的相對路徑,或部署套件之 Linux) 的殼層腳本 (。 此腳本應該包含在上面選取的套件路徑中。 支援迷你模式。 範例路徑: deploy/**/scripts/windows/deploy.ps1
。
deployScriptArguments
- 部署腳本引數
string
. 選擇性。 使用 時 templateType = builtin
。
指定要傳遞至部署腳本的引數。
additionalBuilderParameters
- 其他產生器參數
string
. 選擇性。 使用 時 templateType = builtin
。 預設值:{}
。
在自動產生的 Packer 範本模式中,工作會使用 Azure 建立器建立 Packer 範本。 此產生器可用來產生電腦映射。 您可以將金鑰新增至 Azure 產生器,以自訂產生的 Packer 範本。 例如, ssh_tty=true
如果您使用的是 CentOS 基底映射,而且您需要有 tty 來執行 sudo。
若要在方格中檢視或編輯其他參數,請按一下 …
文字方塊旁的 。
skipTempFileCleanupDuringVMDeprovision
- 在取消布建期間略過暫存檔清除
boolean
. 選擇性。 使用 時 templateType = builtin
。 預設值:true
。
在取消布建 VM 期間,會略過上傳至 VM 的暫存檔清除。 如需詳細資訊,請參閱 Azure 虛擬機器映射產生器。
imageUri
- 影像 URL
string
.
指定輸出變數的名稱,以儲存產生的電腦映射 URL。
工作控制選項
除了工作輸入之外,所有工作都有控制選項。 如需詳細資訊,請參閱 控制選項和一般工作屬性。
輸出變數
無。
備註
使用此工作來使用 Packer 建置電腦映射。 此映射可用於 Azure 虛擬機器擴展集部署。
注意
如果您想要啟用詳細的記錄,請流覽至[管線>編輯>變數],然後新增變數PACKER_LOG並將其值設定為 1。
規格需求
需求 | 描述 |
---|---|
管線類型 | YAML、傳統組建、傳統版本 |
在 上執行 | Agent、DeploymentGroup |
要求 | 無 |
Capabilities | 此工作不符合作業中後續工作的任何需求。 |
命令限制 | 任何 |
可設定變數 | 任何 |
代理程式版本 | 2.0.0 或更新版本 |
工作類別 | 部署 |