Partilhar via


HelmDeploy@1 - Empacotar e implantar gráficos Helm v1 tarefa

Implante, configure, atualize um cluster Kubernetes no Serviço de Contêiner do Azure executando comandos helm.

Sintaxe

# Package and deploy Helm charts v1
# Deploy, configure, update a Kubernetes cluster in Azure Container Service by running helm commands.
- task: HelmDeploy@1
  inputs:
  # Kubernetes Cluster
    #connectionType: 'Azure Resource Manager' # 'Azure Resource Manager' | 'Kubernetes Service Connection' | 'None'. Required when command != logout && command != package. Connection Type. Default: Azure Resource Manager.
    #azureSubscription: # string. Alias: azureSubscriptionEndpoint. Required when connectionType = Azure Resource Manager && command != logout && command != package. Azure subscription. 
    #azureResourceGroup: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package. Resource group. 
    #kubernetesCluster: # string. Required when connectionType = Azure Resource Manager && command != logout && command != package. Kubernetes cluster. 
    #useClusterAdmin: false # boolean. Optional. Use when connectionType = Azure Resource Manager && command != logout && command != package. Use cluster admin credentials. Default: false.
    #kubernetesServiceConnection: # string. Alias: kubernetesServiceEndpoint. Required when connectionType = Kubernetes Service Connection && command != logout && command != package. Kubernetes Service Connection. 
    #namespace: # string. Optional. Use when command != logout && command != package. Namespace. 
  # Azure Container Registry
    #azureSubscriptionForACR: # string. Alias: azureSubscriptionEndpointForACR. Required when command == login || command == package. Azure subscription for Container Registry. 
    #azureResourceGroupForACR: # string. Required when command == login || command == package. Resource group. 
    #azureContainerRegistry: # string. Required when command == login || command == package. Azure Container Registry. 
  # Commands
    command: 'ls' # 'create' | 'delete' | 'expose' | 'get' | 'init' | 'install' | 'login' | 'logout' | 'ls' | 'package' | 'rollback' | 'upgrade' | 'uninstall'. Required. Command. Default: ls.
    #chartType: 'Name' # 'Name' | 'FilePath'. Required when command == install || command == upgrade. Chart Type. Default: Name.
    chartName: # string. Required when chartType == Name. Chart Name. 
    #chartPath: # string. Required when chartType == FilePath || command == package. Chart Path. 
    #chartVersion: # string. Alias: version. Optional. Use when command == package || command == install || command == upgrade. Version. 
    #releaseName: # string. Optional. Use when command == install || command == upgrade. Release Name. 
    #overrideValues: # string. Optional. Use when command == install || command == upgrade. Set Values. 
    #valueFile: # string. Optional. Use when command == install || command == upgrade. Value File. 
    #destination: '$(Build.ArtifactStagingDirectory)' # string. Optional. Use when command == package. Destination. Default: $(Build.ArtifactStagingDirectory).
    #canaryimage: false # boolean. Optional. Use when command == init. Use canary image version. Default: false.
    #upgradetiller: true # boolean. Optional. Use when command == init. Upgrade Tiller. Default: true.
    #updatedependency: false # boolean. Optional. Use when command == install || command == package. Update Dependency. Default: false.
    #save: true # boolean. Optional. Use when command == package. Save. Default: true.
    #install: true # boolean. Optional. Use when command == upgrade. Install if release not present. Default: true.
    #recreate: false # boolean. Optional. Use when command == upgrade. Recreate Pods. Default: false.
    #resetValues: false # boolean. Optional. Use when command == upgrade. Reset Values. Default: false.
    #force: false # boolean. Optional. Use when command == upgrade. Force. Default: false.
    #waitForExecution: true # boolean. Optional. Use when command == init || command == install || command == upgrade. Wait. Default: true.
    #arguments: # string. Optional. Use when command != login && command != logout. Arguments. 
    #chartNameForACR: # string. Required when command == package. Chart Name For Azure Container Registry. 
    #chartPathForACR: # string. Required when command == package. Chart Path for Azure Container Registry. 
  # TLS
    #enableTls: false # boolean. Optional. Use when command != login && command != logout && command != package. Enable TLS. Default: false.
    #caCert: # string. Required when enableTls == true && command != login && command != logout && command != package. CA certificate. 
    #certificate: # string. Required when enableTls == true && command != login && command != logout && command != package. Certificate. 
    #privatekey: # string. Required when enableTls == true && command != login && command != logout && command != package. Key. 
  # Advanced
    #tillernamespace: # string. Optional. Use when command != login && command != logout && command != package. Tiller namespace. 
    #failOnStderr: false # boolean. Optional. Use when command != login && command != logout && command != package. Fail on Standard Error. Default: false.
    #publishPipelineMetadata: true # boolean. Optional. Use when command != login && command != logout && command != package. Publish pipeline metadata. Default: true.

Insumos

connectionType - Tipo de conexão
string. Necessário quando command != logout && command != package. Valores permitidos: Azure Resource Manager, Kubernetes Service Connection, None. Valor padrão: Azure Resource Manager.

Selecione 'Azure Resource Manager' para se conectar a um Serviço Kubernetes do Azure usando o Azure Service Connection. Selecione 'Conexão de serviço Kubernetes' para se conectar a qualquer cluster Kubernetes usando kubeconfig ou conta de serviço.


azureSubscription - de assinatura do Azure
Alias de entrada: azureSubscriptionEndpoint. string. Necessário quando connectionType = Azure Resource Manager && command != logout && command != package.

Selecione uma assinatura do Azure, que tenha seu Registro de Contêiner do Azure.


azureResourceGroup - Grupo de recursos
string. Necessário quando connectionType = Azure Resource Manager && command != logout && command != package.

Selecione um Grupo de Recursos do Azure.


kubernetesCluster - de cluster do Kubernetes
string. Necessário quando connectionType = Azure Resource Manager && command != logout && command != package.

Selecione um cluster gerenciado do Azure.


useClusterAdmin - Usar credenciais de administrador de cluster
boolean. Opcional. Use quando connectionType = Azure Resource Manager && command != logout && command != package. Valor padrão: false.

Use credenciais de administrador de cluster em vez de credenciais de usuário de cluster padrão.


kubernetesServiceConnection - de conexão de serviço Kubernetes
Alias de entrada: kubernetesServiceEndpoint. string. Necessário quando connectionType = Kubernetes Service Connection && command != logout && command != package.

Selecione uma conexão de serviço Kubernetes.


namespace - Namespace
string. Opcional. Use quando command != logout && command != package.

Especifique o namespace K8 a ser usado. Use o namespace Tiller pode ser especificado na seção avançada da tarefa ou passando a opção --tiller-namespace como argumento.


azureSubscriptionForACR - assinatura do Azure para o Registro de Contêiner
Alias de entrada: azureSubscriptionEndpointForACR. string. Necessário quando command == login || command == package.

Selecione uma assinatura do Azure, que tenha seu Registro de Contêiner do Azure.


azureResourceGroupForACR - Grupo de recursos
string. Necessário quando command == login || command == package.

Selecione um Grupo de Recursos do Azure, que tem seu Registro de Contêiner.


azureContainerRegistry - Registro de Contêiner do Azure
string. Necessário quando command == login || command == package.

Selecione um Registro de Contêiner do Azure que será usado para gráficos de leme.


command - de comando
string. Necessário. Valores permitidos: create, delete, expose, get, init, install, login, logout, ls, package, rollback, upgrade, uninstall. Valor padrão: ls.

Selecione um comando helm.


chartType - Tipo de gráfico
string. Necessário quando command == install || command == upgrade. Valores permitidos: Name, FilePath (Caminho do arquivo). Valor padrão: Name.

Selecione como deseja inserir as informações do gráfico. Você pode fornecer o nome do gráfico ou o caminho da pasta/arquivo para o gráfico.


chartName - Nome do gráfico
string. Necessário quando chartType == Name.

Referência de gráfico para instalar, pode ser um url ou um nome de gráfico. Por exemplo, se o nome do gráfico for 'stable/mysql', a tarefa executará 'helm install stable/mysql'.


chartPath - do caminho do gráfico
string. Necessário quando chartType == FilePath || command == package.

Caminho para o gráfico a ser instalado. Isso pode ser um caminho para um gráfico empacotado ou um caminho para um diretório de gráfico descompactado. Por exemplo, se './redis' for especificado, a tarefa executará 'helm install ./redis'.


chartVersion - Versão
Alias de entrada: version. string. Opcional. Use quando command == package || command == install || command == upgrade.

Especifique a versão exata do gráfico a ser instalada. Se isso não for especificado, a versão mais recente será instalada. Defina a versão no gráfico para esta versão semver.


releaseName - Nome da versão
string. Opcional. Use quando command == install || command == upgrade.

Nome da versão. Se não for especificado, ele irá gerar automaticamente um para você.


overrideValues - Definir valores
string. Opcional. Use quando command == install || command == upgrade.

Defina valores na linha de comando (pode especificar valores múltiplos ou separados com vírgulas ou novas linhas: key1=val1,key2=val2 ou
chave1=val1
chave2=val2
). A tarefa construirá o comando helm usando esses valores definidos. Por exemplo, helm install --set key1=val1 ./redis.


valueFile - arquivo de valor
string. Opcional. Use quando command == install || command == upgrade.

Especifique valores em um arquivo YAML ou uma URL. Por exemplo, especificar myvalues.yaml resultará em 'helm install --values=myvals.yaml'.


destination - Destino
string. Opcional. Use quando command == package. Valor padrão: $(Build.ArtifactStagingDirectory).

Especifique valores em um arquivo YAML ou uma URL.


canaryimage - Use a versão de imagem canária.
boolean. Opcional. Use quando command == init. Valor padrão: false.

Use a imagem canary Tiller, a última versão de pré-lançamento do Tiller.


upgradetiller - Atualizar Tiller
boolean. Opcional. Use quando command == init. Valor padrão: true.

Atualize se o Tiller já estiver instalado.


updatedependency - de dependência de atualização
boolean. Opcional. Use quando command == install || command == package. Valor padrão: false.

Execute a atualização de dependência do leme antes de instalar o gráfico. Atualize as dependências de 'requirements.yaml' para dir 'charts/' antes de empacotar.


save - Poupe
boolean. Opcional. Use quando command == package. Valor padrão: true.

Salve o gráfico empacotado no repositório de gráficos local (true padrão).


install - Instalar se a versão não estiver presente.
boolean. Opcional. Use quando command == upgrade. Valor padrão: true.

Se ainda não existir uma versão com este nome, execute uma instalação.


recreate - Recriar pods.
boolean. Opcional. Use quando command == upgrade. Valor padrão: false.

Executa a reinicialização de pods para o recurso, se aplicável.


resetValues - Redefinir valores.
boolean. Opcional. Use quando command == upgrade. Valor padrão: false.

Redefina os valores para os incorporados no gráfico.


force - Força
boolean. Opcional. Use quando command == upgrade. Valor padrão: false.

Forçar a atualização de recursos através da exclusão/recriação, se necessário.


waitForExecution - Aguarde
boolean. Opcional. Use quando command == init || command == install || command == upgrade. Valor padrão: true.

Bloquear até que a execução do comando seja concluída.


arguments - Argumentos
string. Opcional. Use quando command != login && command != logout.

Opções de comando do leme.


enableTls - Ativar TLS
boolean. Opcional. Use quando command != login && command != logout && command != package. Valor padrão: false.

Permite o uso de SSL entre Helm e Tiller.


caCert - certificado de autoridade de certificação
string. Necessário quando enableTls == true && command != login && command != logout && command != package.

CA cert usado para emitir certificado para o cliente do leme e leme.


certificate - Certificado
string. Necessário quando enableTls == true && command != login && command != logout && command != package.

Especifique o certificado Tiller ou o certificado do cliente Helm.


privatekey - Key
string. Necessário quando enableTls == true && command != login && command != logout && command != package.

Especifique a chave Tiller ou a chave do cliente Helm.


tillernamespace - namespace Tiller
string. Opcional. Use quando command != login && command != logout && command != package.

Especifique o namespace K8 do perfilhador.


failOnStderr - falha no erro padrão
boolean. Opcional. Use quando command != login && command != logout && command != package. Valor padrão: false.

Se isso for verdadeiro, essa tarefa falhará se algum erro for gravado no pipeline de erros ou se algum dado for gravado no fluxo de erro padrão. Caso contrário, a tarefa dependerá do código de saída para determinar a falha.


publishPipelineMetadata - Publicar metadados de pipeline
boolean. Opcional. Use quando command != login && command != logout && command != package. Valor padrão: true.

Se isso for verdade, a tarefa coletará e publicará metadados de implantação.


Nome do gráfico chartNameForACR - para o Registro de Contêiner do Azure
string. Necessário quando command == package.

Nome do gráfico com o qual o gráfico será armazenado no Registro de Contêiner do Azure.


chartPathForACR - caminho do gráfico para o Registro de Contêiner do Azure
string. Necessário quando command == package.

Caminho para o diretório gráfico.


Opções de controlo de tarefas

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

Variáveis de saída

Esta tarefa define as seguintes variáveis de saída , que você pode consumir em etapas, trabalhos e estágios downstream.

helmExitCode
Código de saída emitido a partir da execução do comando Helm especificado

helmOutput
Saída emitida pela execução do comando Helm especificado

Comentários

Uma grande mudança para HelmDeploy@1 tarefa é que os comandos do gráfico de leme são removidos:

  • O subcomando helm chart foi removido
  • helm chart push foi removido
  • helm chart remove foi removido
  • helm chart save foi substituído por helm package
  • helm save foi removido

Requerimentos

Exigência Descrição
Tipos de pipeline YAML, Construção clássica, Versão clássica
Funciona em Agente, DeploymentGroup
Exigências Nenhum
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente Todas as versões de agente suportadas.
Categoria de tarefa Implantar