Freigeben über


HelmDeploy@1 – Packen und Bereitstellen von Helmdiagrammen v1-Aufgabe

Bereitstellen, Konfigurieren, Aktualisieren eines Kubernetes-Clusters im Azure-Containerdienst durch Ausführen von Helmbefehlen.

Syntax

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

Eingänge

connectionType - Verbindungstyp
string. Erforderlich, wenn command != logout && command != package. Zulässige Werte: Azure Resource Manager, Kubernetes Service Connection, None. Standardwert: Azure Resource Manager.

Wählen Sie "Azure Resource Manager" aus, um mithilfe der Azure Service-Verbindung eine Verbindung mit einem Azure Kubernetes-Dienst herzustellen. Wählen Sie "Kubernetes-Dienstverbindung" aus, um eine Verbindung mit einem beliebigen Kubernetes-Cluster herzustellen, indem Sie kubeconfig oder Service Account verwenden.


azureSubscription - Azure-Abonnement
Eingabealias: azureSubscriptionEndpoint. string. Erforderlich, wenn connectionType = Azure Resource Manager && command != logout && command != package.

Wählen Sie ein Azure-Abonnement aus, das über Ihre Azure-Containerregistrierung verfügt.


azureResourceGroup - Ressourcengruppe
string. Erforderlich, wenn connectionType = Azure Resource Manager && command != logout && command != package.

Wählen Sie eine Azure-Ressourcengruppe aus.


kubernetesCluster - Kubernetes-Cluster
string. Erforderlich, wenn connectionType = Azure Resource Manager && command != logout && command != package.

Wählen Sie einen azure managed Cluster aus.


useClusterAdmin - Verwenden von Clusteradministratoranmeldeinformationen
boolean. Wahlfrei. Wird verwendet, wenn connectionType = Azure Resource Manager && command != logout && command != package. Standardwert: false.

Verwenden Sie Clusteradministratoranmeldeinformationen anstelle von Standardbenutzeranmeldeinformationen für Clusterbenutzer.


kubernetesServiceConnection - Kubernetes-Dienstverbindung
Eingabealias: kubernetesServiceEndpoint. string. Erforderlich, wenn connectionType = Kubernetes Service Connection && command != logout && command != package.

Wählen Sie eine Kubernetes-Dienstverbindung aus.


namespace - Namespace-
string. Wahlfrei. Wird verwendet, wenn command != logout && command != package.

Geben Sie den zu verwendenden K8-Namespace an. Verwenden Sie tiller namespace can be specified in the advanced section of the task or by passing the --tiller-namespace option as argument.


azureSubscriptionForACR - Azure-Abonnement für containerregistrierung
Eingabealias: azureSubscriptionEndpointForACR. string. Erforderlich, wenn command == login || command == package.

Wählen Sie ein Azure-Abonnement aus, das über Ihre Azure-Containerregistrierung verfügt.


azureResourceGroupForACR - Ressourcengruppe
string. Erforderlich, wenn command == login || command == package.

Wählen Sie eine Azure-Ressourcengruppe aus, die über Ihre Containerregistrierung verfügt.


azureContainerRegistry - Azure Container Registry
string. Erforderlich, wenn command == login || command == package.

Wählen Sie eine Azure-Containerregistrierung aus, die für Steuerdiagramme verwendet wird.


command - Command
string. Erforderlich. Zulässige Werte: create, delete, expose, get, init, install, login, logout, ls, package, rollback, upgrade, uninstall. Standardwert: ls.

Wählen Sie einen Helmbefehl aus.


chartType - Diagrammtyp-
string. Erforderlich, wenn command == install || command == upgrade. Zulässige Werte: Name, FilePath (Dateipfad). Standardwert: Name.

Wählen Sie aus, wie Diagramminformationen eingegeben werden sollen. Sie können entweder den Namen des Diagramms oder des Ordner-/Dateipfads zum Diagramm angeben.


chartName - Diagrammname
string. Erforderlich, wenn chartType == Name.

Diagrammverweis zur Installation, dies kann eine URL oder ein Diagrammname sein. Wenn beispielsweise der Diagrammname "stable/mysql" lautet, führt die Aufgabe "helm install stable/mysql" aus.


chartPath - Diagrammpfad
string. Erforderlich, wenn chartType == FilePath || command == package.

Pfad zum zu installierenden Diagramm. Dies kann ein Pfad zu einem verpackten Diagramm oder ein Pfad zu einem entpackten Diagrammverzeichnis sein. Wenn beispielsweise "./redis" angegeben wird, führt die Aufgabe "helm install ./redis" aus.


chartVersion - Version
Eingabealias: version. string. Wahlfrei. Wird verwendet, wenn command == package || command == install || command == upgrade.

Geben Sie die zu installierende genaue Diagrammversion an. Wenn dies nicht angegeben ist, wird die neueste Version installiert. Legen Sie die Version im Diagramm auf diese Semver-Version fest.


releaseName - Veröffentlichungsname
string. Wahlfrei. Wird verwendet, wenn command == install || command == upgrade.

Releasename. Wenn nicht angegeben, generiert sie automatisch eins für Sie.


overrideValues - Festlegen von Werten
string. Wahlfrei. Wird verwendet, wenn command == install || command == upgrade.

Festlegen von Werten in der Befehlszeile (kann mehrere oder separate Werte mit Kommas oder Newlines angeben: key1=val1,key2=val2 oder
key1=val1
key2=val2
). Die Aufgabe erstellt den Steuerbefehl mithilfe dieser festgelegten Werte. Beispiel: Helm install --set key1=val1 ./redis.


valueFile - Wertdatei
string. Wahlfrei. Wird verwendet, wenn command == install || command == upgrade.

Geben Sie Werte in einer YAML-Datei oder einer URL an. Beispielsweise führt die Angabe von myvalues.yaml zu "helm install --values=myvals.yaml".


destination - Ziel-
string. Wahlfrei. Wird verwendet, wenn command == package. Standardwert: $(Build.ArtifactStagingDirectory).

Geben Sie Werte in einer YAML-Datei oder einer URL an.


canaryimage - Verwenden Sie die Canary-Bildversion.
boolean. Wahlfrei. Wird verwendet, wenn command == init. Standardwert: false.

Verwenden Sie das Canary Tiller Image, die neueste Vorabversion von Tiller.


upgradetiller - Upgrade Tiller
boolean. Wahlfrei. Wird verwendet, wenn command == init. Standardwert: true.

Upgrade, wenn Tiller bereits installiert ist.


updatedependency - Updateabhängigkeits-
boolean. Wahlfrei. Wird verwendet, wenn command == install || command == package. Standardwert: false.

Führen Sie vor der Installation des Diagramms ein Helmabhängigkeitsupdate aus. Aktualisieren Sie Abhängigkeiten von "requirements.yaml" in dir "charts/" vor dem Verpacken.


save - speichern
boolean. Wahlfrei. Wird verwendet, wenn command == package. Standardwert: true.

Speichern Sie verpacktes Diagramm im lokalen Diagramm-Repository (Standard true).


install - Installieren, wenn die Version nicht vorhanden ist.
boolean. Wahlfrei. Wird verwendet, wenn command == upgrade. Standardwert: true.

Wenn eine Version mit diesem Namen noch nicht vorhanden ist, führen Sie eine Installation aus.


recreate - Pods neu erstellen.
boolean. Wahlfrei. Wird verwendet, wenn command == upgrade. Standardwert: false.

Führt pods restart for the resource if applicable.


resetValues - Werte zurücksetzen.
boolean. Wahlfrei. Wird verwendet, wenn command == upgrade. Standardwert: false.

Setzen Sie die Werte auf die werte zurück, die in das Diagramm integriert sind.


force - erzwingen
boolean. Wahlfrei. Wird verwendet, wenn command == upgrade. Standardwert: false.

Erzwingen der Ressourcenaktualisierung durch Löschen/Neustellen bei Bedarf.


waitForExecution - Warten
boolean. Wahlfrei. Wird verwendet, wenn command == init || command == install || command == upgrade. Standardwert: true.

Block till command executions completes.


arguments - Argumente
string. Wahlfrei. Wird verwendet, wenn command != login && command != logout.

Helmbefehlsoptionen.


enableTls - TLS- aktivieren
boolean. Wahlfrei. Wird verwendet, wenn command != login && command != logout && command != package. Standardwert: false.

Ermöglicht die Verwendung von SSL zwischen Helm und Tiller.


caCert - Zertifizierungsstellenzertifikat
string. Erforderlich, wenn enableTls == true && command != login && command != logout && command != package.

Zertifizierungsstellenzertifikat, das zum Ausgeben des Zertifikats für tiller und helm client verwendet wird.


certificate - Zertifikat
string. Erforderlich, wenn enableTls == true && command != login && command != logout && command != package.

Geben Sie Tiller-Zertifikat oder Helm-Clientzertifikat an.


privatekey - Key-
string. Erforderlich, wenn enableTls == true && command != login && command != logout && command != package.

Geben Sie Tiller-Taste oder Helm-Clientschlüssel an.


tillernamespace - Tiller-Namespace
string. Wahlfrei. Wird verwendet, wenn command != login && command != logout && command != package.

Geben Sie den K8-Namespace der Tiller an.


failOnStderr - fehler bei Standardfehler-
boolean. Wahlfrei. Wird verwendet, wenn command != login && command != logout && command != package. Standardwert: false.

Wenn dies zutrifft, schlägt diese Aufgabe fehl, wenn Fehler in die Fehlerpipeline geschrieben werden oder daten in den Standardfehlerdatenstrom geschrieben werden. Andernfalls hängt die Aufgabe vom Beendigungscode ab, um einen Fehler zu ermitteln.


publishPipelineMetadata - Veröffentlichen von Pipelinemetadaten
boolean. Wahlfrei. Wird verwendet, wenn command != login && command != logout && command != package. Standardwert: true.

Wenn dies zutrifft, sammelt und veröffentlicht die Aufgabe Bereitstellungsmetadaten.


chartNameForACR - Diagrammname für die Azure-Containerregistrierung
string. Erforderlich, wenn command == package.

Diagrammname, mit dem das Diagramm in der Azure-Containerregistrierung gespeichert wird.


chartPathForACR - Diagrammpfad für die Azure-Containerregistrierung
string. Erforderlich, wenn command == package.

Pfad zum Diagrammverzeichnis.


Aufgabensteuerungsoptionen

Alle Aufgaben verfügen zusätzlich zu ihren Aufgabeneingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerelementoptionen und allgemeinen Aufgabeneigenschaften.

Ausgabevariablen

Mit dieser Aufgabe werden die folgenden Ausgabevariablendefiniert, die Sie in nachgeschalteten Schritten, Aufträgen und Phasen verwenden können.

helmExitCode
aus der Ausführung des angegebenen Helmbefehls ausgegebenen Exit-Code

helmOutput
Ausgabe, die aus der Ausführung des angegebenen Helmbefehls ausgegeben wird

Bemerkungen

Eine wesentliche Änderung für HelmDeploy@1 Aufgabe besteht darin, dass Steuerdiagrammbefehle entfernt werden:

  • Der unterbefehl helm chart wurde entfernt.
  • helm chart push wurde entfernt.
  • helm chart remove wurde entfernt.
  • helm chart save wurde durch helm package ersetzt.
  • helm save wurde entfernt.

Anforderungen

Anforderung Beschreibung
Pipelinetypen YAML, Classic Build, Classic Release
Läuft auf Agent, DeploymentGroup
Anforderungen Nichts
Funktionen Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag.
Befehlseinschränkungen Jegliche
Settable-Variablen Jegliche
Agentversion Alle unterstützten Agentversionen.
Vorgangskategorie Aufstellen