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
, , delete
edit
. 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 false
zostanie 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 true
wartość , 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 |