Compartilhar via


PackerBuild@0 – Tarefa Compilar imagem do computador v0

Use essa tarefa para criar uma imagem de computador usando o Packer, que pode ser usado para a implantação do conjunto de dimensionamento de máquinas virtuais do Azure.

Sintaxe

# 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.

Entradas

templateType - Modelo do Packer
string. Obrigatórios. Valores permitidos: builtin (Gerado automaticamente) custom (Fornecido pelo usuário). Valor padrão: builtin.

Especifica se você deseja que a tarefa gere automaticamente um modelo do Packer ou use um modelo personalizado fornecido por você.


customTemplateLocation - Local do modelo do Packer
string. Obrigatório quando templateType = custom.

Especifica o caminho para um modelo personalizado fornecido pelo usuário.


customTemplateParameters - Parâmetros de modelo
string. Opcional. Use quando templateType = custom. Valor padrão: {}.

Especifica os parâmetros que serão passados para o Packer para a criação de um modelo personalizado. Isso deve ser mapeado para a variables seção em seu modelo personalizado. Por exemplo, se o modelo tiver uma variável chamada drop-location, adicione um parâmetro aqui com o nome drop-location e um valor que você deseja usar. Você também pode vincular o valor a uma variável de versão. Para exibir/editar os parâmetros adicionais em uma grade, clique em ao lado da caixa de texto.


ConnectedServiceName - Assinatura do Azure
string. Obrigatório quando templateType = builtin.

Especifica a assinatura do Azure Resource Manager para assar e armazenar a imagem do computador.


location - Local de armazenamento
string. Obrigatório quando templateType = builtin.

Especifica o local para armazenar a imagem de computador criada. Esse local também será usado para criar uma VM temporária com a finalidade de criar uma imagem.


storageAccountName - Conta de armazenamento
string. Obrigatório quando templateType = builtin.

Especifica a conta de armazenamento para armazenar a imagem de computador criada. Essa conta de armazenamento precisa ser pré-existente no local selecionado.


azureResourceGroup - Grupo de recursos
string. Obrigatório quando templateType = builtin.

Especifica o grupo de recursos do Azure que contém a conta de armazenamento selecionada.


baseImageSource - Origem da imagem base
string. Obrigatório quando templateType = builtin. Valores permitidos: default (Galeria), customVhd (Personalizado). Valor padrão: default.

Especifica a origem de uma imagem base. Você pode escolher entre uma galeria coletada de imagens do sistema operacional ou fornecer uma URL de sua imagem personalizada.


baseImage - Imagem base
string. Obrigatório quando baseImageSource = default && templateType = builtin. Valores permitidos: 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-SP) 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). Valor padrão: MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows.

Escolhe entre uma lista coletada de imagens do sistema operacional. Isso é usado para instalar pré-requisitos e aplicativos antes de capturar uma imagem de computador.


customImageUrl - URL da imagem base
string. Obrigatório quando baseImageSource = customVhd && templateType = builtin.

Especifica a URL de uma imagem base. Isso é usado para instalar pré-requisitos e aplicativos antes de capturar uma imagem de computador.


customImageOSType - Sistema operacional de imagem base
string. Obrigatório quando baseImageSource = customVhd && templateType = builtin. Valores Permitidos: windows e linux. Valor padrão: windows.


packagePath - Pacote de implantação
string. Obrigatório quando templateType = builtin.

Especifica o caminho para o diretório do pacote de implantação em relação a $(System.DefaultWorkingDirectory). Dá suporte a um padrão de minimatch. Caminho de exemplo: FrontendWebApp/**/GalleryApp.


deployScriptPath - Script de implantação
string. Obrigatório quando templateType = builtin.

Especifica o caminho relativo para um script do PowerShell (para Windows) ou um script de shell (para Linux) que implanta o pacote. Esse script deve estar contido no caminho do pacote selecionado acima. Dá suporte a um padrão de minimatch. Caminho de exemplo: deploy/**/scripts/windows/deploy.ps1.


deployScriptArguments - Argumentos de script de implantação
string. Opcional. Use quando templateType = builtin.

Especifica os argumentos a serem passados para o script de implantação.


additionalBuilderParameters - Parâmetros adicionais do Construtor
string. Opcional. Use quando templateType = builtin. Valor padrão: {}.

Em um modo de modelo do Packer gerado automaticamente, a tarefa cria um modelo do Packer com um construtor do Azure. Esse compilador é usado para gerar uma imagem de computador. Você pode adicionar chaves ao compilador do Azure para personalizar o modelo do Packer gerado. Por exemplo, definindo ssh_tty=true caso você esteja usando uma imagem base do CentOS e precise ter um tty para executar o sudo.

Para exibir ou editar os parâmetros adicionais em uma grade, clique em ao lado da caixa de texto.


skipTempFileCleanupDuringVMDeprovision - Ignorar a limpeza temporária de arquivos durante o desprovisionamento
boolean. Opcional. Use quando templateType = builtin. Valor padrão: true.

Durante o desprovisionamento de uma VM, ignora a limpeza de arquivos temporários carregados na VM. Para obter mais informações, consulte Construtores de Imagens de Máquina Virtual do Azure.


imageUri - URL da imagem
string.

Especifica um nome para a variável de saída que armazena a URL de imagem do computador gerada.


Opções de controle da tarefa

Todas as tarefas têm opções de controle além de suas entradas de tarefa. Para obter mais informações, consulte Opções de controle e propriedades comuns da tarefa.

Variáveis de saída

Nenhum.

Comentários

Use essa tarefa para criar uma imagem de computador usando o Packer. Essa imagem pode ser usada para a implantação do conjunto de dimensionamento de máquinas virtuais do Azure.

Observação

Se você quiser habilitar logs detalhados, navegue até Pipelines>Editar>Variáveis, adicione uma nova variável PACKER_LOG e defina o valor dela como 1.

Requisitos

Requisito Descrição
Tipos de pipeline YAML, build clássico, versão clássica
É executado em Agent, DeploymentGroup
Demandas Nenhum
Funcionalidades Essa tarefa não atende a nenhuma demanda por tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente 2.0.0 ou superior
Categoria da tarefa Implantar