Freigeben über


ServiceFabricUpdateManifests@2: Update Service Fabric manifests v2 task

Verwenden Sie diesen Task in einer Buildpipeline, um die Versionen einer gepackten Service Fabric-App automatisch zu aktualisieren. Dieser Task fügt ein Versionssuffix an alle Dienst- und App-Versionen an, die in den Manifestdateien in einem Azure Service Fabric-App-Paket angegeben sind.

Syntax

# Update Service Fabric manifests v2
# Automatically update portions of application and service manifests in a packaged Azure Service Fabric application.
- task: ServiceFabricUpdateManifests@2
  inputs:
    updateType: 'Manifest versions' # 'Manifest versions' | 'Docker image settings'. Required. Update Type. Default: Manifest versions.
    applicationPackagePath: # string. Required. Application Package. 
    #versionSuffix: '.$(Build.BuildNumber)' # string. Required when updateType = Manifest versions. Version Value. Default: .$(Build.BuildNumber).
    #versionBehavior: 'Append' # 'Append' | 'Replace'. Optional. Use when updateType = Manifest versions. Version Behavior. Default: Append.
    #updateOnlyChanged: false # boolean. Optional. Use when updateType = Manifest versions. Update only if changed. Default: false.
    #pkgArtifactName: # string. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Package Artifact Name. 
    #logAllChanges: true # boolean. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Log all changes. Default: true.
    #compareType: 'LastSuccessful' # 'LastSuccessful' | 'Specific'. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Compare against. Default: LastSuccessful.
    #buildNumber: # string. Optional. Use when updateType = Manifest versions && compareType = Specific. Build Number. 
    #overwriteExistingPkgArtifact: true # boolean. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Overwrite Existing Package Artifact. Default: true.
    #imageNamesPath: # string. Optional. Use when updateType = Docker image settings. Image Names Path. 
    #imageDigestsPath: # string. Required when updateType = Docker image settings. Image Digests Path.
# Update Service Fabric Manifests v2
# Automatically updates portions of the application and service manifests within a packaged Service Fabric application.
- task: ServiceFabricUpdateManifests@2
  inputs:
    updateType: 'Manifest versions' # 'Manifest versions' | 'Docker image settings'. Required. Update Type. Default: Manifest versions.
    applicationPackagePath: # string. Required. Application Package. 
    #versionSuffix: '.$(Build.BuildNumber)' # string. Required when updateType = Manifest versions. Version Value. Default: .$(Build.BuildNumber).
    #versionBehavior: 'Append' # 'Append' | 'Replace'. Optional. Use when updateType = Manifest versions. Version Behavior. Default: Append.
    #updateOnlyChanged: false # boolean. Optional. Use when updateType = Manifest versions. Update only if changed. Default: false.
    #pkgArtifactName: # string. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Package Artifact Name. 
    #logAllChanges: true # boolean. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Log all changes. Default: true.
    #compareType: 'LastSuccessful' # 'LastSuccessful' | 'Specific'. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Compare against. Default: LastSuccessful.
    #buildNumber: # string. Optional. Use when updateType = Manifest versions && compareType = Specific. Build Number. 
    #overwriteExistingPkgArtifact: true # boolean. Optional. Use when updateType = Manifest versions && updateOnlyChanged = true. Overwrite Existing Package Artifact. Default: true.
    #imageNamesPath: # string. Optional. Use when updateType = Docker image settings. Image Names Path. 
    #imageDigestsPath: # string. Required when updateType = Docker image settings. Image Digests Path.

Eingaben

updateType - Updatetyp
string. Erforderlich. Zulässige Werte: Manifest versions, Docker image settings. Standardwert. Manifest versions.

Gibt den Updatetyp an, der für die Manifestdateien vorgenommen werden soll. Um beide Updatetypen zu verwenden, fügen Sie der Buildpipeline eine Instanz dieser Aufgabe für jeden auszuführenden Updatetyp hinzu.


applicationPackagePath - Anwendungspaket
string. Erforderlich.

Gibt den Pfad zum Anwendungspaket an. Variablen und Feldhalter können im Pfad verwendet werden. applicationPackagePath darf keinen nachgestellten Schrägstrich haben, weder noch \/.


versionSuffix - Versionswert
string. Erforderlich, wenn updateType = Manifest versions. Standardwert. .$(Build.BuildNumber).

Gibt die Version in den Manifestdateien an.

Tipp

Sie können das Format der Buildnummer direkt ändern oder einen Protokollierungsbefehl verwenden, um eine Variable dynamisch in einem Format festzulegen. Sie können beispielsweise in einer PowerShell-Aufgabe definiert verwenden $(VersionSuffix) :

$versionSuffix = ".$([DateTimeOffset]::UtcNow.ToString('yyyyMMdd.HHmmss'))"
Write-Host "##vso[task.setvariable variable=VersionSuffix;]$versionSuffix"

versionBehavior - Versionsverhalten
string. Optional. Verwenden Sie , wenn updateType = Manifest versions. Zulässige Werte: Append, Replace. Standardwert. Append.

Gibt an, ob der Versionswert an vorhandene Werte in den Manifestdateien angefügt oder ersetzt werden soll.


updateOnlyChanged - Nur aktualisieren, wenn geändert
boolean. Optional. Verwenden Sie , wenn updateType = Manifest versions. Standardwert. false.

Fügt das Suffix der neuen Version nur an die Pakete an, die sich gegenüber einem vorherigen Build geändert haben. Wenn keine Änderungen gefunden werden, wird das Versionssuffix aus dem vorherigen Build angefügt.

Hinweis

Standardmäßig erstellt der Compiler verschiedene Ausgaben, auch wenn keine Änderungen vorgenommen wurden. Verwenden Sie das deterministische Compilerflag, um sicherzustellen, dass Builds mit den gleichen Eingaben dieselben Ausgaben erzeugen.


pkgArtifactName - Name des Paketartefakts
string. Optional. Verwenden Sie , wenn updateType = Manifest versions && updateOnlyChanged = true.

Gibt den Namen des Artefakts an, das das Anwendungspaket zum Vergleich enthält.


logAllChanges - Protokollieren aller Änderungen
boolean. Optional. Verwenden Sie , wenn updateType = Manifest versions && updateOnlyChanged = true. Standardwert. true.

Vergleicht alle Dateien in jedem Paket und Protokoll, wenn die Datei hinzugefügt, entfernt wurde oder ob sich ihr Inhalt geändert hat. Andernfalls vergleicht dieser boolesche Wert Dateien in einem Paket nur so lange, bis die erste Änderung gefunden wird, um die Leistung zu beschleunigen.


compareType - Vergleich mit
string. Optional. Verwenden Sie , wenn updateType = Manifest versions && updateOnlyChanged = true. Zulässige Werte: LastSuccessful (Letzter erfolgreicher Build), Specific (Spezifischer Build). Standardwert. LastSuccessful.

Gibt an, ob mit dem letzten abgeschlossenen und erfolgreichen Build oder mit einem bestimmten Build verglichen werden soll.


buildNumber - Buildnummer
string. Optional. Verwenden Sie , wenn updateType = Manifest versions && compareType = Specific.

Gibt die Buildnummer für den Vergleich an.


overwriteExistingPkgArtifact - Überschreiben eines vorhandenen Paketartefakts
boolean. Optional. Verwenden Sie , wenn updateType = Manifest versions && updateOnlyChanged = true. Standardwert. true.

Lädt eine neue Kopie des Artefakts herunter. Andernfalls verwendet dieser boolesche Wert eine vorhandene Kopie, falls vorhanden.


imageNamesPath - Pfad für Bildnamen
string. Optional. Verwenden Sie , wenn updateType = Docker image settings.

Gibt den Pfad zu einer Textdatei an, die die Namen der Docker-Images enthält, die der Service Fabric-Anwendung zugeordnet sind und mit Digests aktualisiert werden sollen. Jeder Imagename muss sich in einer eigenen Zeile befinden und muss in der gleichen Reihenfolge wie die Digests in der Image Digests-Datei sein. Wenn die Images vom Service Fabric-Projekt erstellt werden, wird diese Datei als Teil des Paketziels generiert, und ihr Ausgabespeicherort wird von der -Eigenschaft BuiltDockerImagesFilePathgesteuert.


imageDigestsPath - Image Digests-Pfad
string. Erforderlich, wenn updateType = Docker image settings.

Gibt den Pfad zu einer Textdatei an, die die Digestwerte der Docker-Images enthält, die der Service Fabric-Anwendung zugeordnet sind. Diese Datei kann vom Docker-Task ausgegeben werden, wenn die Pushaktion verwendet wird. Die Datei sollte Textzeilen im Format enthalten registry/image_name@digest_value.


Aufgabensteuerungsoptionen

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

Ausgabevariablen

Keine.

Hinweise

Verwenden Sie diesen Task in einer Buildpipeline, um die Versionen einer gepackten Service Fabric-App automatisch zu aktualisieren. Dieser Task fügt ein Versionssuffix an alle Dienst- und App-Versionen an, die in den Manifestdateien in einem Azure Service Fabric-App-Paket angegeben sind.

Hinweis

Für diese Aufgabe ist Windows PowerShell erforderlich.

Diese Aufgabe ist in Releasepipelines nicht verfügbar.

Diese Aufgabe kann nur in einer Buildpipeline verwendet werden, um die Versionen einer gepackten Service Fabric-App automatisch zu aktualisieren.

Diese Aufgabe unterstützt zwei Arten von Updates:

  1. Manifestversion: Aktualisierungen Dienst- und Anwendungsversionen, die in Manifestdateien in einem Service Fabric-Anwendungspaket angegeben sind. Wenn angegeben, manifest version vergleicht die aktuellen Dateien mit einem vorherigen Build und aktualisiert die Version nur für diese geänderten Dienste.

  2. Docker-Imageeinstellungen: Aktualisierungen Docker-Containerimageeinstellungen, die in Manifestdateien in einem Service Fabric-Anwendungspaket angegeben sind. Die zu platzierenden Bildeinstellungen werden aus zwei Dateien ausgewählt:

    a. Bildnamendatei: Diese Datei wird vom Buildtask generiert.

    b. Image Digests-Datei: Diese Datei wird vom Docker-Task generiert, wenn Images per Push an die Registrierung übertragen werden.

Beispiele

Anforderungen

Anforderung BESCHREIBUNG
Pipelinetypen YAML, klassischer Build
Wird ausgeführt auf Agent, DeploymentGroup
Forderungen Selbstgehostete Agents müssen über Funktionen verfügen, die den folgenden Anforderungen entsprechen, um Aufträge auszuführen, die diese Aufgabe verwenden: Cmd
Capabilities Diese Aufgabe erfüllt keine Anforderungen an nachfolgende Aufgaben im Auftrag.
Befehlseinschränkungen Any
Setzbare Variablen Any
Agent-Version 1.95.0 oder höher
Aufgabenkategorie Hilfsprogramm