PackerBuild@1 - Machineinstallatiekopieën v1-taak bouwen
Gebruik deze taak om een machineinstallatiekopieën te bouwen met Packer, die kan worden gebruikt voor de implementatie van virtuele-machineschaalsets in Azure.
Syntaxis
# 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.
Invoer
templateType
-
Packer-sjabloon
string
. Verplicht. Toegestane waarden: builtin
(automatisch gegenereerd), custom
(door gebruiker opgegeven). Standaardwaarde: builtin
.
Hiermee geeft u op of de taak automatisch een Packer-sjabloon genereert of een aangepaste sjabloon gebruikt die door u wordt geleverd.
customTemplateLocation
-
Packer-sjabloonlocatie
string
. Vereist wanneer templateType = custom
.
Hiermee geeft u het pad naar een aangepaste door de gebruiker geleverde sjabloon.
customTemplateParameters
-
sjabloonparameters
string
. Facultatief. Gebruiken wanneer templateType = custom
. Standaardwaarde: {}
.
Hiermee geeft u de parameters op die worden doorgegeven aan packer voor het bouwen van een aangepaste sjabloon. Dit moet worden toegewezen aan een variables
sectie in uw aangepaste sjabloon. Als de sjabloon bijvoorbeeld een variabele heeft met de naam drop-location
, voegt u hier een parameter toe met de naam drop-location
en een waarde die u wilt gebruiken. U kunt de waarde ook koppelen aan een releasevariabele. Als u de extra parameters in een raster wilt weergeven/bewerken, klikt u op …
naast het tekstvak.
ConnectedServiceName
-
Azure-abonnement
string
. Vereist wanneer templateType = builtin
.
Hiermee geeft u het Azure Resource Manager-abonnement op voor het bakken en opslaan van de installatiekopieën van de machine.
isManagedImage
-
beheerde VM-schijfinstallatiekopieën
boolean
. Facultatief. Gebruiken wanneer templateType = builtin
. Standaardwaarde: true
.
Controleert of de gegenereerde installatiekopieën een beheerde installatiekopieën moeten zijn.
managedImageName
-
naam van beheerde VM-schijfinstallatiekopieën
string
. Vereist wanneer isManagedImage = true && templateType = builtin
.
Hiermee geeft u de naam van de installatiekopieën van de beheerde schijf voor automatisch gegenereerde sjablonen.
location
-
opslaglocatie
string
. Vereist wanneer templateType = builtin
.
Hiermee geeft u de locatie voor het opslaan van de ingebouwde computerinstallatiekopie. Deze locatie wordt ook gebruikt om een tijdelijke VM te maken voor het bouwen van een installatiekopieën.
storageAccountName
-
storage-account
string
. Vereist wanneer templateType = builtin
.
Hiermee geeft u het opslagaccount op voor het opslaan van de ingebouwde machineinstallatiekopie. Dit opslagaccount moet al aanwezig zijn op de geselecteerde locatie.
azureResourceGroup
-
resourcegroep
string
. Vereist wanneer templateType = builtin
.
Hiermee geeft u de Azure-resourcegroep op die het geselecteerde opslagaccount bevat.
baseImageSource
-
bronbron van basisinstallatiekopieën
string
. Vereist wanneer templateType = builtin
. Toegestane waarden: default
(galerie), customVhd
(aangepast). Standaardwaarde: default
.
Hiermee geeft u de bron van de basisinstallatiekopieën. U kunt kiezen uit een gecureerde galerie met installatiekopieën van het besturingssysteem of een URL van uw aangepaste VHD-installatiekopieën opgeven.
Notitie
Als u de optie voor het maken van een beheerde installatiekopieën hebt geselecteerd door de optie Managed VM disk image
te controleren, moet u hier alleen de optie Gallery
kiezen.
Custom
bron wordt niet ondersteund om een beheerde installatiekopieën te maken.
baseImage
-
basisinstallatiekopieën
string
. Vereist wanneer baseImageSource = default && templateType = builtin
. Toegestane waarden: 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 6.8)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). Standaardwaarde: MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows
.
U kunt kiezen uit een gecureerde lijst met installatiekopieën van het besturingssysteem. Dit wordt gebruikt voor het installeren van vereisten en toepassingen voordat u een computerinstallatiekopieën vastlegt.
URL van customImageUrl
- basisinstallatiekopieën
string
. Vereist wanneer baseImageSource = customVhd && templateType = builtin
.
Hiermee geeft u de URL van een basisinstallatiekopieën op. Dit wordt gebruikt voor het installeren van vereisten en toepassingen voordat u een computerinstallatiekopieën vastlegt.
customImageOSType
-
besturingssysteem voor basisinstallatiekopieën
string
. Vereist wanneer baseImageSource = customVhd && templateType = builtin
. Toegestane waarden: windows
, linux
. Standaardwaarde: windows
.
packagePath
-
-implementatiepakket
string
. Vereist wanneer templateType = builtin
.
Hiermee geeft u het pad voor een implementatiepakketmap ten opzichte van $(System.DefaultWorkingDirectory)
. Ondersteunt een minimatch-patroon. Voorbeeldpad: FrontendWebApp/**/GalleryApp
Notitie
Dit pakket wordt gekopieerd naar een tijdelijke virtuele machine die Packer maakt. Als het pakket een groot aantal bestanden bevat en/of de bestanden erg groot zijn, kan het uploaden lang duren (mogelijk enkele uren). Als u de uploadtijd wilt optimaliseren, controleert u of de grootte van het pakket zinvol kan worden verminderd. Een ander alternatief is het gebruik van een tussenliggend Azure-opslagaccount. Upload het pakket naar een opslagaccount voordat u deze taak uitvoert. Gebruik voor deze taak een pakket met een script waarmee het vereiste pakket uit het opslagaccount wordt gedownload.
deployScriptPath
-
-implementatiescript
string
. Vereist wanneer templateType = builtin
.
Hiermee geeft u het relatieve pad naar het PowerShell-script (voor Windows) of het shellscript (voor Linux) waarmee het pakket wordt geïmplementeerd. Dit script moet zijn opgenomen in het pakketpad dat hierboven is geselecteerd. Ondersteunt een minimatch-patroon. Voorbeeldpad: deploy/**/scripts/windows/deploy.ps1
.
deployScriptArguments
-
implementatiescriptargumenten
string
. Facultatief. Gebruiken wanneer templateType = builtin
.
Hiermee geeft u de argumenten die moeten worden doorgegeven aan het implementatiescript.
additionalBuilderParameters
-
Aanvullende opbouwfunctieparameters
string
. Facultatief. Gebruiken wanneer templateType = builtin
. Standaardwaarde: {"vm_size":"Standard_D3_v2"}
.
In de automatisch gegenereerde Packer-sjabloonmodus maakt de taak een Packer-sjabloon met een Azure-opbouwfunctie. Deze opbouwfunctie wordt gebruikt om een machineinstallatiekopieën te genereren. U kunt sleutels toevoegen aan de Opbouwfunctie van Azure om de gegenereerde Packer-sjabloon aan te passen. Bijvoorbeeld: Het instellen van ssh_tty=true
als u een CentOS-basisinstallatiekopieën gebruikt en u een tty moet hebben om sudo
uit te voeren.
Als u de extra parameters in een raster wilt weergeven/bewerken, klikt u op …
naast het tekstvak.
skipTempFileCleanupDuringVMDeprovision
-
tijdelijke bestandsopruiming overslaan tijdens het ongedaan maken van de inrichting
boolean
. Facultatief. Gebruiken wanneer templateType = builtin
. Standaardwaarde: true
.
Tijdens het ongedaan maken van de inrichting van een VIRTUELE machine slaat u het opschonen van tijdelijke bestanden over die naar de VIRTUELE machine zijn geüpload. Meer informatie over Azure Virtual Machine Image Builders in Packer.
packerVersion
-
Packer-versie
string
. Facultatief. Gebruiken wanneer templateType = custom
.
Hiermee geeft u de versie van Packer te installeren. Dit werkt alleen met aangepaste sjablonen.
imageUri
-
afbeeldings-URL of naam
string
.
Hiermee geeft u een naam op voor de uitvoervariabele waarmee de gegenereerde VHD-URL van de machine-installatiekopieën wordt opgeslagen voor een niet-beheerde VM-installatiekopieën of de naam van de installatiekopieën voor een beheerde VM.
imageId
-
Azure-resource-id
string
.
Hiermee geeft u een naam op voor de uitvoervariabele waarmee de Azure-resource-id voor de zojuist gemaakte installatiekopieën worden opgeslagen. Dit geldt alleen voor beheerde installatiekopieën.
Opties voor taakbeheer
Alle taken hebben besturingsopties naast hun taakinvoer. Zie Opties en algemene taakeigenschappenvoor meer informatie.
Uitvoervariabelen
Geen.
Opmerkingen
Gebruik deze taak om een machineinstallatiekopieën te bouwen met Packer. Deze installatiekopieën kunnen worden gebruikt voor de implementatie van virtuele-machineschaalsets in Azure.
Notitie
Als u gedetailleerde logboeken wilt inschakelen, gaat u naar Pipelines>Edit>Variablesen voegt u vervolgens een nieuwe variabele PACKER_LOG toe en stelt u de waarde in op 1.
Vereisten
Voorwaarde | Beschrijving |
---|---|
Pijplijntypen | YAML, klassieke build, klassieke release |
Wordt uitgevoerd op | Agent, DeploymentGroup |
eisen | Geen |
mogelijkheden | Deze taak voldoet niet aan de vereisten voor volgende taken in de taak. |
opdrachtbeperkingen | Welk dan ook |
variabelen instellen | Welk dan ook |
Agentversie | 2.0.0 of hoger |
Taakcategorie | Implementeren |