Udostępnij za pośrednictwem


GitHubRelease@0 — zadanie wydania usługi GitHub w wersji 0

To zadanie służy do tworzenia, edytowania lub usuwania wydania usługi GitHub.

Składnia

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

Dane wejściowe

gitHubConnection - Połączenie z usługą GitHub (OAuth lub PAT)
string. Wymagane.

Określa nazwę połączenia usługi GitHub, które ma być używane do nawiązywania połączenia z repozytorium GitHub. Połączenie musi być oparte na protokole OAuth użytkownika usługi GitHub lub osobistym tokenie dostępu usługi GitHub. Aby uzyskać więcej informacji na temat połączeń usług, zobacz Zarządzanie połączeniami usług.


repositoryName - Repozytorium
string. Wymagane. Wartość domyślna: $(Build.Repository.Name).

Określa nazwę repozytorium GitHub, w którym utworzysz, edytujesz lub usuniesz wersję usługi GitHub.


action - Działania
string. Wymagane. Dozwolone wartości: create, , deleteedit. Wartość domyślna: create.

Określa typ operacji wydania do wykonania. To zadanie może tworzyć, edytować lub usuwać wydanie usługi GitHub.


target - Docelowego
string. Wymagane, gdy action = create || action = edit. Wartość domyślna: $(Build.SourceVersion).

Określa zatwierdzenie sha, którego chcesz użyć do utworzenia wydania usługi GitHub, na przykład 48b11d8d6e92a22e3e9563a3f643699c16fd6e27. Możesz również użyć zmiennej, takiej jak $(myCommitSHA), w tym polu.


tagSource - Źródło tagu
string. Wymagane, gdy action = create. Dozwolone wartości: auto (tag Git), manual (Tag określony przez użytkownika). Wartość domyślna: auto.

Określa tag, którego chcesz użyć do tworzenia wydania. Opcja auto (tag Git) automatycznie używa tagu skojarzonego z zatwierdzeniem usługi Git. manual Użyj opcji (Tag określony przez użytkownika), aby ręcznie podać tag.


tagPattern - Wzorzec tagu
string. Opcjonalny. Użyj polecenia , gdy tagSource = auto.

Określa wzorzec tagu Git przy użyciu wyrażenia regularnego, na przykład release-v1.*. Wersja usługi GitHub zostanie utworzona tylko dla zatwierdzeń, które mają pasujący tag Git.


tag - Tag
string. Wymagane, gdy action = edit || action = delete || tagSource = manual.

Określa tag, który ma być używany podczas tworzenia, edytowania lub usuwania wydania. Możesz również użyć zmiennej, takiej jak $(myTagName), w tym polu.


title - Tytuł wydania
string. Opcjonalny. Użyj polecenia , gdy action = create || action = edit.

Określa tytuł wydania usługi GitHub. W przypadku pozostawienia pustego tag zostanie użyty jako tytuł wydania.


releaseNotesSource - Źródło informacji o wersji
string. Opcjonalny. Użyj polecenia , gdy action = create || action = edit. Dozwolone wartości: file (plik informacji o wersji), input (informacje o wersji wbudowanej). Wartość domyślna: file.

Określa opis wersji usługi GitHub. file Użyj opcji (plik informacji o wersji), aby użyć zawartości pliku jako informacji o wersji. input Użyj opcji (informacje o wersji wbudowanej), aby ręcznie wprowadzić informacje o wersji.


releaseNotesFile - Ścieżka pliku informacji o wersji
string. Opcjonalny. Użyj polecenia , gdy releaseNotesSource = file.

Określa plik zawierający informacje o wersji.


releaseNotes - Wersji
string. Opcjonalny. Użyj polecenia , gdy releaseNotesSource = input.

Określa informacje o wersji. Język Markdown jest obsługiwany.


assets - Aktywów
string. Opcjonalny. Użyj polecenia , gdy action = create || action = edit. Wartość domyślna: $(Build.ArtifactStagingDirectory)/*.

Określa pliki, które chcesz przekazać jako zasoby wydania. Możesz użyć symboli wieloznacznych, aby określić wiele plików. Można na przykład użyć $(Build.ArtifactStagingDirectory)/*.zip potoków kompilacji lub użyć $(System.DefaultWorkingDirectory)/*.zip dla potoków wydania.

Można również określić wiele wzorców, jeden na wiersz. Domyślnie wszystkie pliki w $(Build.ArtifactStagingDirectory) katalogu zostaną przekazane. Aby uzyskać więcej informacji na temat listy wstępnie zdefiniowanych zmiennych, zobacz zmienne kompilacji i zmienne wydania.


assetUploadMode - Tryb przekazywania zasobów
string. Opcjonalny. Użyj polecenia , gdy action = edit. Dozwolone wartości: delete (Usuń exisiting zasobów), replace (Zastąp istniejące zasoby). Wartość domyślna: delete.

Określa tryb przekazywania zasobów, którego chcesz użyć. delete Użyj opcji (Usuń istniejące zasoby), aby najpierw usunąć wszystkie istniejące zasoby w wersji, a następnie przekazać wszystkie zasoby. Użyj opcji (Zastąp replace istniejące zasoby), aby zastąpić wszystkie zasoby o tej samej nazwie.


isDraft - Wersja robocza
boolean. Opcjonalny. Użyj polecenia , gdy action = create || action = edit. Wartość domyślna: false.

Wskazuje, czy chcesz zapisać wydanie jako wersję roboczą (cofnięto publikowanie). Jeśli falsezostanie opublikowana wersja , zostanie opublikowana.


isPreRelease - Wersja wstępna
boolean. Opcjonalny. Użyj polecenia , gdy action = create || action = edit. Wartość domyślna: false.

Wskazuje, czy chcesz oznaczyć wydanie jako wydanie wstępne.


addChangeLog - Dodawanie dziennika zmian
boolean. Opcjonalny. Użyj polecenia , gdy action = create || action = edit. Wartość domyślna: true.

Określa, czy chcesz dołączyć dziennik zmian. Jeśli ustawiono truewartość , zostanie wygenerowana lista zmian (zatwierdzeń i problemów) między bieżącą wersją a ostatnią opublikowaną wersją zostanie wygenerowana i dołączona do informacji o wersji.


changeLogCompareToRelease - Porównanie z
string. Wymagane, gdy addChangeLog = true. Dozwolone wartości: lastFullRelease (Ostatnia pełna wersja), lastNonDraftRelease (Ostatnia wersja niezwiązana z wersją roboczą), lastNonDraftReleaseByTag (Last non-draft release by tag). Wartość domyślna: lastFullRelease.

Wskazuje, z którą wersją ma być porównywana wartość, aby wygenerować dziennik zmian:

  • lastFullRelease (Ostatnia pełna wersja): porównuje bieżącą wersję z najnowszą wersją roboczą, która nie jest oznaczona jako wersja wstępna.
  • lastNonDraftRelease (Ostatnia wersja niezwiązana z wersją roboczą): porównuje bieżącą wersję z najnowszą wersją niezwiązaną z wersją roboczą.
  • lastNonDraftReleaseByTag (Ostatnie wydanie inne niż wersja robocza według tagu): porównuje bieżącą wersję z ostatnią wersją roboczą zgodną z określonym tagiem. Można również określić wyrażenie regularne zamiast dokładnego tagu.

changeLogCompareToReleaseTag - Tag wydania
string. Wymagane, gdy changeLogCompareToRelease = lastNonDraftReleaseByTag && addChangeLog = true.

Określa wyrażenie regularne dla tagu wydania. Wersja zgodna z tym tagiem będzie używana jako podstawa do obliczeń dziennika zmian.


changeLogType - Typ dziennika zmian
string. Wymagane, gdy addChangeLog = true. Dozwolone wartości: commitBased (Oparte na zatwierdzeniach), issueBased (Oparte na problemie). Wartość domyślna: commitBased.

Określa typ dziennika zmian. Dziennik zmian może być oparty na zatwierdzeniach lub oparty na problemach. Dziennik zmian oparty na zatwierdzeniach zawiera listę wszystkich zatwierdzeń uwzględnionych w wydaniu. Dziennik zmian oparty na problemach zawiera listę wszystkich problemów lub żądań ściągnięcia uwzględnionych w wydaniu.


changeLogLabels - Kategorie
string. Opcjonalny. Użyj polecenia , gdy changeLogType = issueBased && addChangeLog = true. Wartość domyślna: [{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }].

Kategoryzuje zmiany na podstawie etykiety skojarzonej z problemem lub żądaniem ściągnięcia. W przypadku etykiety można wymienić nazwę wyświetlaną kategorii i stan problemu. Przykłady etykiet to: "[{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }]". W przypadkach, gdy zmiana zawiera wiele etykiet, pierwsza określona etykieta ma priorytet. Pozostaw to pole puste, aby wyświetlić płaską listę problemów lub żądania ściągnięcia.


Opcje sterowania zadania

Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań. Aby uzyskać więcej informacji, zobacz Opcje sterowania i typowe właściwości zadań.

Zmienne wyjściowe

Brak.

Uwagi

W GitHubRelease@1 jest dostępna nowsza wersja tego zadania.

Wymagania

Wymaganie Opis
Typy potoków YAML, kompilacja klasyczna, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Brak
Możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
Ograniczenia poleceń Dowolne
Zmienne w formie tabeli settable Dowolne
Wersja agenta 2.0.0 lub nowsze
Kategoria zadania Narzędzie