PackerBuild@0 - Tâche générer une image machine v0
Utilisez cette tâche pour générer une image machine à l’aide de Packer, qui peut être utilisé pour le déploiement de groupes de machines virtuelles identiques Azure.
Notes
Cette tâche ne prend pas en charge l’authentification Azure Resource Manager avec la fédération d’identité de workflow.
Syntaxe
# 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.
Entrées
templateType
- Modèle Packer
string
. Obligatoire. Valeurs autorisées : builtin
(généré automatiquement), custom
(Utilisateur fourni). Valeur par défaut : builtin
.
Spécifie si vous souhaitez que la tâche génère automatiquement un modèle Packer ou utilise un modèle personnalisé que vous avez fourni.
customTemplateLocation
- Emplacement du modèle Packer
string
. Nécessaire lorsque templateType = custom
.
Spécifie le chemin d’accès à un modèle personnalisé fourni par l’utilisateur.
customTemplateParameters
- Paramètres de modèle
string
. facultatif. Utilisez quand templateType = custom
. Valeur par défaut : {}
.
Spécifie les paramètres qui seront transmis à Packer pour la création d’un modèle personnalisé. Cela doit être mappé à la variables
section de votre modèle personnalisé. Par exemple, si le modèle a une variable nommée drop-location
, ajoutez ici un paramètre avec le nom drop-location
et une valeur que vous souhaitez utiliser. Vous pouvez également lier la valeur à une variable de mise en production. Pour afficher/modifier les paramètres supplémentaires dans une grille, cliquez sur en …
regard de la zone de texte.
ConnectedServiceName
- Abonnement Azure
string
. Nécessaire lorsque templateType = builtin
.
Spécifie l’abonnement Azure Resource Manager pour la cuisson et le stockage de l’image de machine.
location
- Emplacement de stockage
string
. Nécessaire lorsque templateType = builtin
.
Spécifie l’emplacement de stockage de l’image de machine générée. Cet emplacement sera également utilisé pour créer une machine virtuelle temporaire dans le but de créer une image.
storageAccountName
- Compte de stockage
string
. Nécessaire lorsque templateType = builtin
.
Spécifie le compte de stockage pour le stockage de l’image de machine générée. Ce compte de stockage doit être préexistant à l’emplacement sélectionné.
azureResourceGroup
- Groupe de ressources
string
. Nécessaire lorsque templateType = builtin
.
Spécifie le groupe de ressources Azure qui contient le compte de stockage sélectionné.
baseImageSource
- Source d’image de base
string
. Nécessaire lorsque templateType = builtin
. Valeurs autorisées : default
(Galerie), customVhd
(Personnalisé). Valeur par défaut : default
.
Spécifie la source d’une image de base. Vous pouvez choisir parmi une galerie organisée d’images de système d’exploitation ou fournir une URL de votre image personnalisée.
baseImage
- Image de base
string
. Nécessaire lorsque baseImageSource = default && templateType = builtin
. Valeurs autorisées : 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), OpenLogic:CentOS:6.8:linux
(CentOS 6.8), (Debian 8), credativ:Debian:7:linux
credativ:Debian:8: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). Valeur par défaut : MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows
.
Choisit dans une liste organisée d’images de système d’exploitation. Il est utilisé pour installer les prérequis et les applications avant de capturer une image de machine.
customImageUrl
- URL de l’image de base
string
. Nécessaire lorsque baseImageSource = customVhd && templateType = builtin
.
Spécifie l’URL d’une image de base. Il est utilisé pour installer les prérequis et les applications avant de capturer une image de machine.
customImageOSType
- Image de base du système d’exploitation
string
. Nécessaire lorsque baseImageSource = customVhd && templateType = builtin
. Valeurs autorisées : windows
, linux
. Valeur par défaut : windows
.
packagePath
- Package de déploiement
string
. Nécessaire lorsque templateType = builtin
.
Spécifie le chemin d’accès pour le répertoire du package de déploiement relatif à $(System.DefaultWorkingDirectory)
. Prend en charge un modèle de mini-correspondance. Exemple de chemin d’accès : FrontendWebApp/**/GalleryApp
.
deployScriptPath
- Script de déploiement
string
. Nécessaire lorsque templateType = builtin
.
Spécifie le chemin relatif d’un script PowerShell (pour Windows) ou d’un script shell (pour Linux) qui déploie le package. Ce script doit être contenu dans le chemin du package sélectionné ci-dessus. Prend en charge un modèle de mini-correspondance. Exemple de chemin d’accès : deploy/**/scripts/windows/deploy.ps1
.
deployScriptArguments
- Arguments de script de déploiement
string
. facultatif. Utilisez quand templateType = builtin
.
Spécifie les arguments à passer au script de déploiement.
additionalBuilderParameters
- Paramètres de générateur supplémentaires
string
. facultatif. Utilisez quand templateType = builtin
. Valeur par défaut : {}
.
En mode modèle Packer généré automatiquement, la tâche crée un modèle Packer avec un générateur Azure. Ce générateur est utilisé pour générer une image de machine. Vous pouvez ajouter des clés au générateur Azure pour personnaliser le modèle Packer généré. Par exemple, si ssh_tty=true
vous utilisez une image de base CentOS et que vous avez besoin d’un tty pour exécuter sudo.
Pour afficher ou modifier les paramètres supplémentaires dans une grille, cliquez sur en …
regard de la zone de texte.
skipTempFileCleanupDuringVMDeprovision
- Ignorer le nettoyage de fichier temporaire pendant le déprovisionnement
boolean
. facultatif. Utilisez quand templateType = builtin
. Valeur par défaut : true
.
Pendant le déprovisionnement d’une machine virtuelle, ignore le nettoyage des fichiers temporaires chargés sur la machine virtuelle. Pour plus d’informations, consultez Azure Virtual Machine Image Builders.
imageUri
- URL de l’image
string
.
Spécifie un nom pour la variable de sortie qui stocke l’URL de l’image de machine générée.
Options de contrôle de la tâche
Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâches. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.
Variables de sortie
Aucun.
Notes
Utilisez cette tâche pour générer une image de machine à l’aide de Packer. Cette image peut être utilisée pour le déploiement d’un groupe de machines virtuelles identiques Azure.
Notes
Si vous souhaitez activer les journaux détaillés, accédez à Variables demodification>des pipelines>, puis ajoutez une nouvelle variable PACKER_LOG et définissez sa valeur sur 1.
Spécifications
Condition requise | Description |
---|---|
Types de pipelines | YAML, build classique, version classique |
S’exécute sur | Agent, DeploymentGroup |
Demandes | None |
Capabilities | Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail. |
Restrictions de commande | Quelconque |
Variables paramétrables | Quelconque |
Version de l’agent | 2.0.0 ou version ultérieure |
Catégorie de la tâche | Déployer |