HelmDeploy@1 - Creare un pacchetto e distribuire l'attività Grafici Helm v1
Distribuire, configurare e aggiornare un cluster Kubernetes nel servizio Azure Container eseguendo comandi helm.
Sintassi
# 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.
Ingressi
connectionType
-
tipo di connessione
string
. Obbligatorio quando command != logout && command != package
. Valori consentiti: Azure Resource Manager
, Kubernetes Service Connection
, None
. Valore predefinito: Azure Resource Manager
.
Selezionare "Azure Resource Manager" per connettersi a un servizio Azure Kubernetes usando la connessione al servizio di Azure. Selezionare "Connessione al servizio Kubernetes" per connettersi a qualsiasi cluster Kubernetes usando kubeconfig o account del servizio.
azureSubscription
-
sottoscrizione di Azure
Alias di input: azureSubscriptionEndpoint
.
string
. Obbligatorio quando connectionType = Azure Resource Manager && command != logout && command != package
.
Selezionare una sottoscrizione di Azure con Registro Azure Container.
azureResourceGroup
-
gruppo di risorse
string
. Obbligatorio quando connectionType = Azure Resource Manager && command != logout && command != package
.
Selezionare un gruppo di risorse di Azure.
kubernetesCluster
-
cluster Kubernetes
string
. Obbligatorio quando connectionType = Azure Resource Manager && command != logout && command != package
.
Selezionare un cluster gestito di Azure.
useClusterAdmin
-
Usare le credenziali di amministratore del cluster
boolean
. Opzionale. Usare quando connectionType = Azure Resource Manager && command != logout && command != package
. Valore predefinito: false
.
Usare le credenziali di amministratore del cluster anziché le credenziali utente del cluster predefinite.
kubernetesServiceConnection
-
connessione al servizio Kubernetes
Alias di input: kubernetesServiceEndpoint
.
string
. Obbligatorio quando connectionType = Kubernetes Service Connection && command != logout && command != package
.
Selezionare una connessione al servizio Kubernetes.
namespace
-
spazio dei nomi
string
. Opzionale. Usare quando command != logout && command != package
.
Specificare lo spazio dei nomi K8 da usare. È possibile specificare lo spazio dei nomi Tiller nella sezione avanzata dell'attività o passando l'opzione --tiller-namespace come argomento.
azureSubscriptionForACR
-
sottoscrizione di Azure per l' del Registro Container
Alias di input: azureSubscriptionEndpointForACR
.
string
. Obbligatorio quando command == login || command == package
.
Selezionare una sottoscrizione di Azure con Registro Azure Container.
azureResourceGroupForACR
-
gruppo di risorse
string
. Obbligatorio quando command == login || command == package
.
Selezionare un gruppo di risorse di Azure con registro contenitori.
azureContainerRegistry
-
registro Azure Container
string
. Obbligatorio quando command == login || command == package
.
Selezionare un Registro Azure Container che verrà usato per i grafici Helm.
command
-
comando
string
. Obbligatorio. Valori consentiti: create
, delete
, expose
, get
, init
, install
, login
, logout
, ls
, package
, rollback
, upgrade
, uninstall
. Valore predefinito: ls
.
Selezionare un comando helm.
chartType
-
tipo di grafico
string
. Obbligatorio quando command == install || command == upgrade
. Valori consentiti: Name
, FilePath
(percorso file). Valore predefinito: Name
.
Selezionare la modalità di immissione delle informazioni sul grafico. È possibile specificare il nome del grafico o del percorso cartella/file del grafico.
chartName
-
nome grafico
string
. Obbligatorio quando chartType == Name
.
Riferimento al grafico da installare, può essere un URL o un nome di grafico. Ad esempio, se il nome del grafico è 'stable/mysql', l'attività eseguirà 'helm install stable/mysql'.
chartPath
-
percorso grafico
string
. Obbligatorio quando chartType == FilePath || command == package
.
Percorso del grafico da installare. Può trattarsi di un percorso di un grafico in pacchetto o di un percorso di una directory del grafico decompresso. Ad esempio, se si specifica './redis', l'attività eseguirà 'helm install ./redis'.
chartVersion
-
versione
Alias di input: version
.
string
. Opzionale. Usare quando command == package || command == install || command == upgrade
.
Specificare la versione esatta del grafico da installare. Se non viene specificato, viene installata la versione più recente. Impostare la versione nel grafico su questa versione semver.
releaseName
-
nome versione
string
. Opzionale. Usare quando command == install || command == upgrade
.
Nome della versione. Se non specificato, ne verrà generato automaticamente uno automaticamente.
overrideValues
-
impostare valori
string
. Opzionale. Usare quando command == install || command == upgrade
.
Impostare i valori nella riga di comando (può specificare più valori o separarli con virgole o nuove righe: key1=val1,key2=val2 o
key1=val1
key2=val2
). L'attività creerà il comando helm usando questi valori impostati. Ad esempio, helm install --set key1=val1 ./redis.
valueFile
-
file valore
string
. Opzionale. Usare quando command == install || command == upgrade
.
Specificare i valori in un file YAML o in un URL. Ad esempio, se si specifica myvalues.yaml verrà restituito "helm install --values=myvals.yaml".
destination
-
destinazione
string
. Opzionale. Usare quando command == package
. Valore predefinito: $(Build.ArtifactStagingDirectory)
.
Specificare i valori in un file YAML o in un URL.
canaryimage
-
Usare la versione dell'immagine canary.
boolean
. Opzionale. Usare quando command == init
. Valore predefinito: false
.
Usare l'immagine canary Tiller, la versione non definitiva più recente di Tiller.
upgradetiller
-
Upgrade Tiller
boolean
. Opzionale. Usare quando command == init
. Valore predefinito: true
.
Aggiornare se Tiller è già installato.
updatedependency
-
Aggiornare dipendenze
boolean
. Opzionale. Usare quando command == install || command == package
. Valore predefinito: false
.
Eseguire l'aggiornamento delle dipendenze helm prima di installare il grafico. Aggiornare le dipendenze da 'requirements.yaml' a 'charts/' prima della creazione del pacchetto.
save
-
Salva
boolean
. Opzionale. Usare quando command == package
. Valore predefinito: true
.
Salvare il grafico in pacchetto nel repository grafico locale (valore predefinito true).
install
-
Installare se la versione non è presente.
boolean
. Opzionale. Usare quando command == upgrade
. Valore predefinito: true
.
Se una versione con questo nome non esiste già, eseguire un'installazione.
recreate
-
ricreare i pod.
boolean
. Opzionale. Usare quando command == upgrade
. Valore predefinito: false
.
Esegue il riavvio dei pod per la risorsa, se applicabile.
resetValues
-
reimpostare i valori.
boolean
. Opzionale. Usare quando command == upgrade
. Valore predefinito: false
.
Reimpostare i valori su quelli incorporati nel grafico.
force
-
Force
boolean
. Opzionale. Usare quando command == upgrade
. Valore predefinito: false
.
Forzare l'aggiornamento delle risorse tramite eliminazione/ricreazione, se necessario.
waitForExecution
-
Attesa
boolean
. Opzionale. Usare quando command == init || command == install || command == upgrade
. Valore predefinito: true
.
Blocca fino al completamento dell'esecuzione del comando.
arguments
-
argomenti
string
. Opzionale. Usare quando command != login && command != logout
.
Opzioni di comando Helm.
enableTls
-
Abilitare TLS
boolean
. Opzionale. Usare quando command != login && command != logout && command != package
. Valore predefinito: false
.
Abilita l'uso di SSL tra Helm e Tiller.
caCert
-
certificato ca
string
. Obbligatorio quando enableTls == true && command != login && command != logout && command != package
.
Certificato CA usato per rilasciare il certificato per tiller e client Helm.
certificate
-
certificato
string
. Obbligatorio quando enableTls == true && command != login && command != logout && command != package
.
Specificare il certificato Tiller o il certificato client Helm.
privatekey
-
chiave
string
. Obbligatorio quando enableTls == true && command != login && command != logout && command != package
.
Specificare la chiave Tiller o la chiave client Helm.
tillernamespace
-
dello spazio dei nomi Tiller
string
. Opzionale. Usare quando command != login && command != logout && command != package
.
Specificare lo spazio dei nomi K8 di tiller.
failOnStderr
-
errore standard
boolean
. Opzionale. Usare quando command != login && command != logout && command != package
. Valore predefinito: false
.
Se questo è vero, questa attività avrà esito negativo se vengono scritti errori nella pipeline di errore o se i dati vengono scritti nel flusso di errore standard. In caso contrario, l'attività si baserà sul codice di uscita per determinare l'errore.
publishPipelineMetadata
-
Pubblicare i metadati della pipeline
boolean
. Opzionale. Usare quando command != login && command != logout && command != package
. Valore predefinito: true
.
In questo caso, l'attività raccoglierà e pubblicherà i metadati di distribuzione.
chartNameForACR
-
nome del grafico per registro Azure Container
string
. Obbligatorio quando command == package
.
Nome del grafico con cui verrà archiviato il grafico in Registro Azure Container.
percorso grafico chartPathForACR
- per registro Azure Container
string
. Obbligatorio quando command == package
.
Percorso della directory del grafico.
Opzioni di controllo attività
Tutte le attività hanno opzioni di controllo oltre ai relativi input di attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.
Variabili di output
Questa attività definisce le variabili di output seguenti , che è possibile utilizzare nei passaggi downstream, nei processi e nelle fasi.
helmExitCode
Codice di uscita generato dall'esecuzione del comando Helm specificato
helmOutput
output generato dall'esecuzione del comando Helm specificato
Osservazioni
Una modifica importante per HelmDeploy@1
'attività consiste nel fatto che i comandi del grafico Helm vengono rimossi:
- Il sottocomando
helm chart
è stato rimosso -
helm chart push
rimosso -
helm chart remove
rimosso -
helm chart save
è stato sostituito conhelm package
-
helm save
rimosso
Fabbisogno
Requisito | Descrizione |
---|---|
Tipi di pipeline | YAML, build classica, versione classica |
Viene eseguito in | Agente, DeploymentGroup |
richieste | Nessuno |
funzionalità di |
Questa attività non soddisfa alcuna richiesta di attività successive nel processo. |
restrizioni dei comandi | Qualunque |
variabili impostabili | Qualunque |
Versione dell'agente | Tutte le versioni dell'agente supportate. |
Categoria attività | Schierare |