Bagikan melalui


PackerBuild@1 - Membangun tugas v1 gambar komputer

Gunakan tugas ini untuk membangun citra komputer menggunakan Packer, yang dapat digunakan untuk penyebaran set skala komputer Virtual Azure.

Sintaks

# Build machine image v1
# Build a machine image using Packer, which may be used for Azure Virtual machine scale set deployment.
- task: PackerBuild@1
  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. 
    #isManagedImage: true # boolean. Optional. Use when templateType = builtin. Managed VM disk image. Default: true.
    #managedImageName: # string. Required when isManagedImage = true && templateType = builtin. Managed VM Disk Image Name. 
    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' | 'Canonical:UbuntuServer:18.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: '{"vm_size":"Standard_D3_v2"}' # string. Optional. Use when templateType = builtin. Additional Builder parameters. Default: {"vm_size":"Standard_D3_v2"}.
    #skipTempFileCleanupDuringVMDeprovision: true # boolean. Optional. Use when templateType = builtin. Skip temporary file cleanup during deprovision. Default: true.
    #packerVersion: # string. Optional. Use when templateType = custom. Packer Version. 
  # Output
    #imageUri: # string. Image URL or Name. 
    #imageId: # string. Azure Resource Id.
# Build machine image v1
# Build a machine image using Packer, which may be used for Azure Virtual machine scale set deployment.
- task: PackerBuild@1
  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. 
    #isManagedImage: true # boolean. Optional. Use when templateType = builtin. Managed VM disk image. Default: true.
    #managedImageName: # string. Required when isManagedImage = true && templateType = builtin. Managed VM Disk Image Name. 
    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: '{"vm_size":"Standard_D3_v2"}' # string. Optional. Use when templateType = builtin. Additional Builder parameters. Default: {"vm_size":"Standard_D3_v2"}.
    #skipTempFileCleanupDuringVMDeprovision: true # boolean. Optional. Use when templateType = builtin. Skip temporary file cleanup during deprovision. Default: true.
  # Output
    #imageUri: # string. Image URL or Name. 
    #imageId: # string. Azure Resource Id.

Input

templateType - Templat pengemas
string. Wajib diisi. Nilai yang diizinkan: builtin (Dibuat secara otomatis), custom (Disediakan pengguna). Nilai default: builtin.

Menentukan apakah tugas secara otomatis menghasilkan templat Packer atau menggunakan templat kustom yang disediakan oleh Anda.


customTemplateLocation - Lokasi templat pengemas
string. Diperlukan saat templateType = custom.

Menentukan jalur ke templat yang disediakan pengguna kustom.


customTemplateParameters - Parameter templat
string. Pilihan. Gunakan saat templateType = custom. Nilai default: {}.

Menentukan parameter yang akan diteruskan ke Packer untuk membangun templat kustom. Ini harus memetakan ke variables bagian di templat kustom Anda. Misalnya, jika templat memiliki variabel bernama drop-location, tambahkan parameter di sini dengan nama drop-location dan nilai yang ingin Anda gunakan. Anda juga dapat menautkan nilai ke variabel rilis. Untuk melihat/mengedit parameter tambahan dalam kisi, klik di samping kotak teks.


ConnectedServiceName - Langganan Azure
string. Diperlukan saat templateType = builtin.

Menentukan langganan Azure Resource Manager untuk membuat kue dan menyimpan gambar komputer.


isManagedImage - Gambar disk VM terkelola
boolean. Pilihan. Gunakan saat templateType = builtin. Nilai default: true.

Memeriksa apakah gambar yang dihasilkan harus berupa gambar terkelola.


managedImageName - Nama Gambar Disk VM Terkelola
string. Diperlukan saat isManagedImage = true && templateType = builtin.

Menentukan nama gambar disk Terkelola untuk templat yang dibuat secara otomatis.


location - Lokasi penyimpanan
string. Diperlukan saat templateType = builtin.

Menentukan lokasi untuk menyimpan gambar komputer yang dibuat. Lokasi ini juga akan digunakan untuk membuat VM sementara untuk tujuan membangun gambar.


storageAccountName - Akun penyimpanan
string. Diperlukan saat templateType = builtin.

Menentukan akun penyimpanan untuk menyimpan gambar komputer yang dibuat. Akun penyimpanan ini harus sudah ada sebelumnya di lokasi yang dipilih.


azureResourceGroup - Grup sumber daya
string. Diperlukan saat templateType = builtin.

Menentukan grup Sumber Daya Azure yang berisi akun penyimpanan yang dipilih.


baseImageSource - Sumber gambar dasar
string. Diperlukan saat templateType = builtin. Nilai yang diizinkan: default (Galeri), customVhd (Kustom). Nilai default: default.

Menentukan sumber gambar dasar. Anda dapat memilih dari galeri gambar OS yang dikumpulkan atau memberikan URL gambar VHD kustom Anda.

Catatan

Jika Anda telah memilih opsi untuk membuat gambar Terkelola dengan mencentang Managed VM disk image opsi , maka Anda hanya boleh memilih opsi di Gallery sini. Custom sumber tidak didukung untuk membuat gambar terkelola.


baseImage - Gambar dasar
string. Diperlukan saat baseImageSource = default && templateType = builtin. Nilai yang diizinkan: 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), Canonical:UbuntuServer:18.04-LTS:linux (Ubuntu 18.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), OpenLogic:CentOS:6.8:linux (CentOS 6.8), 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). Nilai default: MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows.

Memilih dari daftar gambar OS yang dikumpulkan. Ini akan digunakan untuk menginstal prasyarat dan aplikasi sebelum menangkap citra mesin.


baseImage - Gambar dasar
string. Diperlukan saat baseImageSource = default && templateType = builtin. Nilai yang diizinkan: 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), (Ubuntu 14.04.4-LTS), Canonical:UbuntuServer:16.04-LTS:linux (Ubuntu 16.04-LTS) Canonical:UbuntuServer:14.04.4-LTS:linux ), RedHat:RHEL:7.2:linux (RHEL 7.2), RedHat:RHEL:6.8:linux (RHEL 6.8), OpenLogic:CentOS:7.2:linux (CentOS 7.2), OpenLogic:CentOS:6.8:linux (CentOS 6.8), 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). Nilai default: MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows.

Memilih dari daftar gambar OS yang dikumpulkan. Ini akan digunakan untuk menginstal prasyarat dan aplikasi sebelum menangkap citra mesin.


customImageUrl - URL gambar dasar
string. Diperlukan saat baseImageSource = customVhd && templateType = builtin.

Menentukan URL gambar dasar. Ini akan digunakan untuk menginstal prasyarat dan aplikasi sebelum menangkap citra mesin.


customImageOSType - OS gambar dasar
string. Diperlukan saat baseImageSource = customVhd && templateType = builtin. Nilai yang diizinkan: windows, linux. Nilai default: windows.


packagePath - Paket Penyebaran
string. Diperlukan saat templateType = builtin.

Menentukan jalur untuk direktori paket penyebaran relatif terhadap $(System.DefaultWorkingDirectory). Mendukung pola minimatch. Jalur contoh: FrontendWebApp/**/GalleryApp

Catatan

Paket ini akan disalin ke komputer virtual sementara yang dibuat Packer. Jika paket berisi sejumlah besar file dan/atau file berukuran sangat besar, unggahan dapat memakan waktu lama (mungkin berjalan selama beberapa jam). Untuk mengoptimalkan waktu pengunggahan, silakan lihat apakah ukuran paket dapat dikurangi secara bermakna. Alternatif lain adalah menggunakan akun penyimpanan Azure perantara. Unggah paket ke akun penyimpanan sebelum menjalankan tugas ini. Untuk tugas ini, gunakan paket yang berisi skrip yang akan mengunduh paket yang diperlukan dari akun penyimpanan.


deployScriptPath - Skrip penyebaran
string. Diperlukan saat templateType = builtin.

Menentukan jalur relatif ke skrip powershell (untuk Windows) atau skrip shell (untuk Linux) yang menyebarkan paket. Skrip ini harus dimuat dalam jalur paket yang dipilih di atas. Mendukung pola minimatch. Contoh jalur: deploy/**/scripts/windows/deploy.ps1.


deployScriptArguments - Argumen skrip penyebaran
string. Opsional. Gunakan saat templateType = builtin.

Menentukan argumen yang akan diteruskan ke skrip penyebaran.


additionalBuilderParameters - Parameter Penyusun Tambahan
string. Pilihan. Gunakan saat templateType = builtin. Nilai default: {"vm_size":"Standard_D3_v2"}.

Dalam mode templat Packer yang dibuat secara otomatis, tugas membuat templat Packer dengan penyusun Azure. Penyusun ini digunakan untuk menghasilkan citra komputer. Anda dapat menambahkan kunci ke penyusun Azure untuk menyesuaikan templat Packer yang dihasilkan. Misalnya: Mengatur ssh_tty=true jika Anda menggunakan gambar dasar CentOS dan Anda harus memiliki tty untuk menjalankan sudo. Untuk melihat/mengedit parameter tambahan dalam kisi, klik di samping kotak teks.


skipTempFileCleanupDuringVMDeprovision - Lewati pembersihan file sementara selama deprovisi
boolean. Pilihan. Gunakan saat templateType = builtin. Nilai default: true.

Selama pembatalan penyediaan VM, lewati pembersihan file sementara yang diunggah ke VM. Pelajari selengkapnya tentang Azure Virtual Machine Image Builders di Packer.


packerVersion - Versi Packer
string. Pilihan. Gunakan saat templateType = custom.

Menentukan versi Packer yang akan diinstal. Ini hanya akan berfungsi dengan templat kustom.


imageUri - URL atau Nama Gambar
string.

Menentukan nama untuk variabel output yang akan menyimpan URL VHD gambar komputer yang dihasilkan untuk gambar VM yang tidak dikelola atau nama gambar untuk gambar VM terkelola.


imageId - Id Sumber Daya Azure
string.

Menentukan nama untuk variabel output yang akan menyimpan ID Sumber Daya Azure untuk gambar yang baru dibuat. Ini hanya untuk gambar terkelola.


Opsi kontrol tugas

Semua tugas memiliki opsi kontrol selain input tugas mereka. Untuk informasi selengkapnya, lihat Opsi kontrol dan properti tugas umum.

Variabel output

Tidak ada.

Keterangan

Gunakan tugas ini untuk membangun citra komputer menggunakan Packer. Gambar ini dapat digunakan untuk penyebaran set skala komputer Virtual Azure.

Catatan

Jika Anda ingin mengaktifkan log terperinci, navigasikan ke Alur>Edit>Variabel, lalu tambahkan variabel baru PACKER_LOG dan atur nilainya ke 1.

Persyaratan

Persyaratan Deskripsi
Jenis alur YAML, Build klasik, Rilis klasik
Berjalan pada Agen, DeploymentGroup
Permintaan Tidak ada
Kemampuan Tugas ini tidak memenuhi tuntutan apa pun untuk tugas berikutnya dalam pekerjaan.
Pembatasan perintah Apa pun
Variabel yang dapat diatur Apa pun
Versi agen 2.0.0 atau lebih tinggi
Kategori tugas Sebarkan