Freigeben über


GitHubRelease@0: GitHub Release v0-Aufgabe

Verwenden Sie diese Aufgabe, um ein GitHub-Release zu erstellen, zu bearbeiten oder zu löschen.

Syntax

# GitHub Release v0
# Create, edit, or delete a GitHub release.
- task: GitHubRelease@0
  inputs:
    gitHubConnection: # string. Required. GitHub connection (OAuth or PAT). 
    repositoryName: '$(Build.Repository.Name)' # string. Required. Repository. Default: $(Build.Repository.Name).
    action: 'create' # 'create' | 'edit' | 'delete'. Required. Action. Default: create.
    #target: '$(Build.SourceVersion)' # string. Required when action = create || action = edit. Target. Default: $(Build.SourceVersion).
    tagSource: 'auto' # 'auto' | 'manual'. Required when action = create. Tag source. Default: auto.
    #tagPattern: # string. Optional. Use when tagSource = auto. Tag Pattern. 
    #tag: # string. Required when action = edit || action = delete || tagSource = manual. Tag. 
    #title: # string. Optional. Use when action = create || action = edit. Release title. 
    #releaseNotesSource: 'file' # 'file' | 'input'. Optional. Use when action = create || action = edit. Release notes source. Default: file.
    #releaseNotesFile: # string. Optional. Use when releaseNotesSource = file. Release notes file path. 
    #releaseNotes: # string. Optional. Use when releaseNotesSource = input. Release notes. 
    #assets: '$(Build.ArtifactStagingDirectory)/*' # string. Optional. Use when action = create || action = edit. Assets. Default: $(Build.ArtifactStagingDirectory)/*.
    #assetUploadMode: 'delete' # 'delete' | 'replace'. Optional. Use when action = edit. Asset upload mode. Default: delete.
    #isDraft: false # boolean. Optional. Use when action = create || action = edit. Draft release. Default: false.
    #isPreRelease: false # boolean. Optional. Use when action = create || action = edit. Pre-release. Default: false.
    #addChangeLog: true # boolean. Optional. Use when action = create || action = edit. Add changelog. Default: true.
  # Changelog configuration
    changeLogCompareToRelease: 'lastFullRelease' # 'lastFullRelease' | 'lastNonDraftRelease' | 'lastNonDraftReleaseByTag'. Required when addChangeLog = true. Compare to. Default: lastFullRelease.
    #changeLogCompareToReleaseTag: # string. Required when changeLogCompareToRelease = lastNonDraftReleaseByTag && addChangeLog = true. Release Tag. 
    changeLogType: 'commitBased' # 'commitBased' | 'issueBased'. Required when addChangeLog = true. Changelog type. Default: commitBased.
    #changeLogLabels: '[{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }]' # string. Optional. Use when changeLogType = issueBased && addChangeLog = true. Categories. Default: [{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }].
# GitHub Release v0
# Create, edit, or delete a GitHub release.
- task: GitHubRelease@0
  inputs:
    gitHubConnection: # string. Required. GitHub connection (OAuth or PAT). 
    repositoryName: '$(Build.Repository.Name)' # string. Required. Repository. Default: $(Build.Repository.Name).
    action: 'create' # 'create' | 'edit' | 'delete'. Required. Action. Default: create.
    #target: '$(Build.SourceVersion)' # string. Required when action = create || action = edit. Target. Default: $(Build.SourceVersion).
    tagSource: 'auto' # 'auto' | 'manual'. Required when action = create. Tag source. Default: auto.
    #tag: # string. Required when action = edit || action = delete || tagSource = manual. Tag. 
    #title: # string. Optional. Use when action = create || action = edit. Release title. 
    #releaseNotesSource: 'file' # 'file' | 'input'. Optional. Use when action = create || action = edit. Release notes source. Default: file.
    #releaseNotesFile: # string. Optional. Use when releaseNotesSource = file. Release notes file path. 
    #releaseNotes: # string. Optional. Use when releaseNotesSource = input. Release notes. 
    #assets: '$(Build.ArtifactStagingDirectory)/*' # string. Optional. Use when action = create || action = edit. Assets. Default: $(Build.ArtifactStagingDirectory)/*.
    #assetUploadMode: 'delete' # 'delete' | 'replace'. Optional. Use when action = edit. Asset upload mode. Default: delete.
    #isDraft: false # boolean. Optional. Use when action = create || action = edit. Draft release. Default: false.
    #isPreRelease: false # boolean. Optional. Use when action = create || action = edit. Pre-release. Default: false.
    #addChangeLog: true # boolean. Optional. Use when action = create || action = edit. Add changelog. Default: true.

Eingaben

gitHubConnection - GitHub-Verbindung (OAuth oder PAT)
string. Erforderlich.

Gibt den Namen der GitHub-Dienstverbindung an, die zum Herstellen einer Verbindung mit dem GitHub-Repository verwendet werden soll. Die Verbindung muss auf dem OAuth eines GitHub-Benutzers oder einem persönlichen GitHub-Zugriffstoken basieren. Weitere Informationen zu Dienstverbindungen finden Sie unter Verwalten von Dienstverbindungen.


repositoryName - Repository
string. Erforderlich. Standardwert. $(Build.Repository.Name).

Gibt den Namen des GitHub-Repositorys an, in dem Sie das GitHub-Release erstellen, bearbeiten oder löschen.


action - Aktion
string. Erforderlich. Zulässige Werte: create, edit und delete. Standardwert. create.

Gibt den Typ des auszuführenden Releasevorgangs an. Mit dieser Aufgabe kann ein GitHub-Release erstellt, bearbeitet oder gelöscht werden.


target - Ziel
string. Erforderlich, wenn action = create || action = edit. Standardwert. $(Build.SourceVersion).

Gibt die Commit-SHA an, die Sie zum Erstellen der GitHub-Version verwenden möchten, z. B 48b11d8d6e92a22e3e9563a3f643699c16fd6e27. . Sie können in diesem Feld auch eine Variable wie $(myCommitSHA)verwenden.


tagSource - Tagquelle
string. Erforderlich, wenn action = create. Zulässige Werte: auto (Git-Tag), manual (vom Benutzer angegebenes Tag). Standardwert. auto.

Gibt das Tag an, das Sie für die Releaseerstellung verwenden möchten. Die auto Option (Git-Tag) verwendet automatisch das Tag, das dem Git-Commit zugeordnet ist. Verwenden Sie die manual Option (Vom Benutzer angegebenes Tag), um ein Tag manuell bereitzustellen.


tagPattern - Tagmuster
string. Optional. Verwenden Sie , wenn tagSource = auto.

Gibt das Git-Tagmuster mithilfe von regex an, z. B release-v1.*. . Das GitHub-Release wird nur für Commits erstellt, die über ein entsprechendes Git-Tag verfügen.


tag - Etikett
string. Erforderlich, wenn action = edit || action = delete || tagSource = manual.

Gibt das Tag an, das Sie beim Erstellen, Bearbeiten oder Löschen eines Release verwenden möchten. Sie können in diesem Feld auch eine Variable wie $(myTagName)verwenden.


title - Releasetitel
string. Optional. Verwenden Sie , wenn action = create || action = edit.

Gibt den Titel des GitHub-Release an. Ohne Angabe wird das Tag als Releasetitel verwendet.


releaseNotesSource - Quelle der Versionshinweise
string. Optional. Verwenden Sie , wenn action = create || action = edit. Zulässige Werte: file (Datei mit Versionshinweisen), input (Inlineversionshinweise). Standardwert. file.

Gibt die Beschreibung des GitHub-Release an. Verwenden Sie die file Option (Versionshinweisedatei), um Dateiinhalte als Versionshinweise zu verwenden. Verwenden Sie die input Option (Inlineversionshinweise), um Versionshinweise manuell einzugeben.


releaseNotesFile - Dateipfad mit Versionshinweisen
string. Optional. Verwenden Sie , wenn releaseNotesSource = file.

Gibt die Datei an, die die Versionshinweise enthält.


releaseNotes - Versionshinweise
string. Optional. Verwenden Sie , wenn releaseNotesSource = input.

Gibt die Versionshinweise an. Markdown wird unterstützt.


assets - Vermögenswerte
string. Optional. Verwenden Sie , wenn action = create || action = edit. Standardwert. $(Build.ArtifactStagingDirectory)/*.

Gibt die Dateien an, die Sie als Ressourcen der Version hochladen möchten. Sie können Mithilfe von Wildcardzeichen mehrere Dateien angeben. Verwenden Sie $(Build.ArtifactStagingDirectory)/*.zip beispielsweise für Buildpipelines oder für $(System.DefaultWorkingDirectory)/*.zip Releasepipelines.

Sie können auch mehrere Muster angeben, eines pro Zeile. Standardmäßig werden alle Dateien im $(Build.ArtifactStagingDirectory)-Verzeichnis hochgeladen. Weitere Informationen zur Liste der verfügbaren vordefinierten Variablen finden Sie unter Buildvariablen und Releasevariablen.


assetUploadMode - Medienobjektuploadmodus
string. Optional. Verwenden Sie , wenn action = edit. Zulässige Werte: delete (Vorhandene Objekte löschen), replace (Vorhandene Ressourcen ersetzen). Standardwert. delete.

Gibt den Modus zum Hochladen von Medienobjekten an, den Sie verwenden möchten. Verwenden Sie die delete Option (Vorhandene Ressourcen löschen), um zunächst alle vorhandenen Ressourcen in der Version zu löschen und dann alle Ressourcen hochzuladen. Verwenden Sie die replace Option (Vorhandene Ressourcen ersetzen), um alle Ressourcen mit demselben Namen zu ersetzen.


isDraft - Releaseentwurf
boolean. Optional. Verwenden Sie , wenn action = create || action = edit. Standardwert. false.

Gibt an, ob Sie das Release als Entwurf (nicht veröffentlicht) speichern möchten. Wenn false, wird das Release veröffentlicht.


isPreRelease - Vorabversion
boolean. Optional. Verwenden Sie , wenn action = create || action = edit. Standardwert. false.

Gibt an, ob Sie das Release als Vorabversion markieren möchten.


addChangeLog - Hinzufügen eines Änderungsprotokolls
boolean. Optional. Verwenden Sie , wenn action = create || action = edit. Standardwert. true.

Gibt an, ob Sie ein Änderungsprotokoll einschließen möchten. Bei Festlegung auf truewird eine Liste der Änderungen (Commits und Probleme) zwischen dem aktuellen Release und dem letzten veröffentlichten Release generiert und an die Versionshinweise angefügt.


changeLogCompareToRelease - Vergleich mit
string. Erforderlich, wenn addChangeLog = true. Zulässige Werte: lastFullRelease (Letzte vollständige Version), lastNonDraftRelease (Letzte Nichtentwurfsversion), lastNonDraftReleaseByTag (Letzte Nichtentwurfsversion nach Tag). Standardwert. lastFullRelease.

Gibt an, mit welchem Release verglichen werden soll, um das Änderungsprotokoll zu generieren:

  • lastFullRelease (Letzte vollständige Version): Vergleicht das aktuelle Release mit dem neuesten Nichtentwurfsrelease, das nicht als Vorabversion gekennzeichnet ist.
  • lastNonDraftRelease (Letztes Nichtentwurfsrelease): Vergleicht das aktuelle Release mit dem neuesten Release ohne Entwurf.
  • lastNonDraftReleaseByTag (Letzte Nichtentwurfsversion nach Tag): Vergleicht das aktuelle Release mit dem letzten Nichtentwurfsrelease, das dem angegebenen Tag entspricht. Sie können auch einen Regex anstelle eines genauen Tags angeben.

changeLogCompareToReleaseTag - Releasetag
string. Erforderlich, wenn changeLogCompareToRelease = lastNonDraftReleaseByTag && addChangeLog = true.

Gibt den RegEx für das Releasetag an. Ein Release, das diesem Tag entspricht, wird als Basis für changelog-Berechnungen verwendet.


changeLogType - Changelog-Typ
string. Erforderlich, wenn addChangeLog = true. Zulässige Werte: commitBased (Commitbasiert), issueBased (Problembasiert). Standardwert. commitBased.

Gibt den Änderungsprotokolltyp an. Ein Änderungsprotokoll kann commitbasiert oder problembasiert sein. Ein Commit-basiertes Änderungsprotokoll listet alle Commits auf, die in einem Release enthalten sind. Ein problembasiertes Änderungsprotokoll listet alle Probleme oder Pull Requests (PRs) auf, die in der Version enthalten sind.


changeLogLabels - Kategorien
string. Optional. Verwenden Sie , wenn changeLogType = issueBased && addChangeLog = true. Standardwert. [{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }].

Kategorisiert Änderungen basierend auf der Bezeichnung, die dem Problem oder PR zugeordnet ist. Für eine Bezeichnung können Sie den Anzeigenamen für die Kategorie und den Status der Ausgabe Erwähnung. Beispiele für Bezeichnungen sind: "[{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }]". In Fällen, in denen eine Änderung mehrere Bezeichnungen aufweist, hat die erste angegebene Bezeichnung Priorität. Lassen Sie dieses Feld leer, um eine flache Liste von Problemen oder PRs anzuzeigen.


Optionen für die Vorgangskontrolle

Alle Vorgänge verfügen zusätzlich zu ihren Eingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerungsoptionen und allgemeine Aufgabeneigenschaften.

Ausgabevariablen

Keine.

Hinweise

Eine neuere Version dieser Aufgabe ist unter GitHubRelease@1 verfügbar.

Anforderungen

Anforderung BESCHREIBUNG
Pipelinetypen YAML, Klassischer Build, klassisches Release
Wird ausgeführt auf Agent, DeploymentGroup
Forderungen Keine
Capabilities Diese Aufgabe erfüllt keine Anforderungen an nachfolgende Aufgaben im Auftrag.
Befehlseinschränkungen Any
Setzbare Variablen Any
Agent-Version 2.0.0 oder höher
Aufgabenkategorie Hilfsprogramm