GitHubRelease@1 – GitHub Release v1 feladat
Ezzel a feladatsal létrehozhat, szerkeszthet vagy törölhet egy GitHub-kiadást.
Szintaxis
# GitHub Release v1
# Create, edit, or delete a GitHub release.
- task: GitHubRelease@1
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: 'gitTag' # 'gitTag' | 'userSpecifiedTag'. Required when action = create. Tag source. Default: gitTag.
#tagPattern: # string. Optional. Use when tagSource = gitTag. Tag Pattern.
#tag: # string. Required when action = edit || action = delete || tagSource = userSpecifiedTag. Tag.
#title: # string. Optional. Use when action = create || action = edit. Release title.
#releaseNotesSource: 'filePath' # 'filePath' | 'inline'. Optional. Use when action = create || action = edit. Release notes source. Default: filePath.
#releaseNotesFilePath: # string. Optional. Use when releaseNotesSource = filePath. Release notes file path.
#releaseNotesInline: # string. Optional. Use when releaseNotesSource = inline. 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" }].
Bevitelek
gitHubConnection
- GitHub-kapcsolat (OAuth vagy PAT)
string
. Kötelező.
Megadja annak a GitHub-szolgáltatáskapcsolatnak a nevét, amely a GitHub-adattárhoz való csatlakozáshoz használható. A kapcsolatnak egy GitHub-felhasználó OAuth-ján vagy egy Személyes GitHub-hozzáférési jogkivonaton kell alapulnia. További információ a szolgáltatáskapcsolatokról: Szolgáltatáskapcsolatok kezelése.
repositoryName
- Tárház
string
. Kötelező. Alapértelmezett érték: $(Build.Repository.Name)
.
Megadja annak a GitHub-adattárnak a nevét, ahol létrehozza, szerkessze vagy törli a GitHub-kiadást.
action
- Akció
string
. Kötelező. Engedélyezett értékek: create
, edit
, delete
. Alapértelmezett érték: create
.
Meghatározza a végrehajtandó kiadási művelet típusát. Ez a feladat létrehozhat, szerkeszthet vagy törölhet Egy GitHub-kiadást.
target
- Cél
string
. Akkor szükséges, ha action = create || action = edit
. Alapértelmezett érték: $(Build.SourceVersion)
.
Megadja a GitHub-kiadás létrehozásához használni kívánt véglegesítési SHA-t, például 48b11d8d6e92a22e3e9563a3f643699c16fd6e27
: . Ebben a mezőben egy változót is használhat, például $(myCommitSHA)
: .
tagSource
- Címke forrása
string
. Akkor szükséges, ha action = create
. Engedélyezett értékek: gitTag
(Git-címke), userSpecifiedTag
(Felhasználó által megadott címke). Alapértelmezett érték: gitTag
.
Megadja a kiadás létrehozásához használni kívánt címkét. A gitTag
beállítás automatikusan a Git-véglegesítéshez társított címkét használja. userSpecifiedTag
A beállítással manuálisan adhat meg egy címkét.
tagPattern
- Címkeminta
string
. Választható. Használja a következőt: tagSource = gitTag
.
A Git-címke mintáját adja meg regex használatával, például release-v1.*
: . A GitHub-kiadás csak olyan véglegesítésekhez lesz létrehozva, amelyek egyező Git-címkével rendelkeznek.
tag
- Tag
string
. Akkor szükséges, ha action = edit || action = delete || tagSource = userSpecifiedTag
.
Megadja a kiadás létrehozásakor, szerkesztésekor vagy törlésekor használni kívánt címkét. Ebben a mezőben egy változót is használhat, például $(myTagName)
: .
title
- Kiadás címe
string
. Választható. Használja a következőt: action = create || action = edit
.
Megadja a GitHub-kiadás címét. Ha üresen marad, a címke lesz a kiadás címe.
releaseNotesSource
- Kibocsátási megjegyzések forrása
string
. Választható. Használja a következőt: action = create || action = edit
. Engedélyezett értékek: filePath
(Kibocsátási megjegyzések fájlja) inline
(beágyazott kibocsátási megjegyzések). Alapértelmezett érték: filePath
.
Megadja a GitHub-kiadás leírását. filePath
A (Kibocsátási megjegyzések fájlja) beállítással a fájltartalmakat kibocsátási megjegyzésekként használhatja. inline
A (Beágyazott kibocsátási megjegyzések) beállítással manuálisan írja be a kibocsátási megjegyzéseket
releaseNotesFilePath
- Kibocsátási megjegyzések fájlelérési útja
string
. Választható. Használja a következőt: releaseNotesSource = filePath
.
Meghatározza a kibocsátási megjegyzéseket tartalmazó fájlt.
releaseNotesInline
- Kibocsátási megjegyzések
string
. Választható. Használja a következőt: releaseNotesSource = inline
.
Meghatározza a kibocsátási megjegyzéseket. A Markdown támogatott.
assets
- Eszközök
string
. Választható. Használja a következőt: action = create || action = edit
. Alapértelmezett érték: $(Build.ArtifactStagingDirectory)/*
.
Meghatározza a kiadás eszközeiként feltölteni kívánt fájlokat. Helyettesítő karakterekkel több fájlt is megadhat. Használhatja vagy használhatja $(System.DefaultWorkingDirectory)/*.zip
például $(Build.ArtifactStagingDirectory)/*.zip
a kiadási folyamatokat.
Több mintát is megadhat, soronként egyet. Alapértelmezés szerint a $(Build.ArtifactStagingDirectory)
könyvtár összes fájlja fel lesz töltve. Az elérhető előre definiált változók listájáról további információt a változók összeállítása és a kiadási változók című témakörben talál.
assetUploadMode
- Eszközfeltöltési mód
string
. Választható. Használja a következőt: action = edit
. Engedélyezett értékek: delete
(Exisiting assets törlése) replace
(Meglévő eszközök cseréje). Alapértelmezett érték: delete
.
Megadja a használni kívánt eszközfeltöltési módot. delete
A (Meglévő objektumok törlése) lehetőséggel először törölje a kiadásban lévő meglévő eszközöket, majd töltse fel az összes eszközt. replace
A (Meglévő eszközök cseréje) lehetőséggel lecserélheti az azonos nevű eszközöket.
isDraft
- Piszkozat kiadás
boolean
. Választható. Használja a következőt: action = create || action = edit
. Alapértelmezett érték: false
.
Azt jelzi, hogy a kiadást piszkozatként kell-e menteni (közzé nem tették). Ha false
, a kiadás közzé lesz téve.
isPreRelease
- Előzetes kiadás
boolean
. Választható. Használja a következőt: action = create || action = edit
. Alapértelmezett érték: false
.
Azt jelzi, hogy a kiadást kiadás előttiként kell-e megjelölni.
addChangeLog
- Változásnapló hozzáadása
boolean
. Választható. Használja a következőt: action = create || action = edit
. Alapértelmezett érték: true
.
Megadja, hogy szeretne-e változásnaplót felvenni. Ha a értékre true
van állítva, a rendszer létrehozza és hozzáfűzi a kibocsátási megjegyzésekhez az aktuális kiadás és az utolsó közzétett kiadás közötti módosításokat (véglegesítéseket és problémákat).
changeLogCompareToRelease
- Összehasonlítás
string
. Akkor szükséges, ha addChangeLog = true
. Engedélyezett értékek: lastFullRelease
(Utolsó teljes kiadás), lastNonDraftRelease
(Legutóbbi, nem piszkozatos kiadás), lastNonDraftReleaseByTag
(Utolsó nem piszkozatos kiadás címke szerint). Alapértelmezett érték: lastFullRelease
.
Azt jelzi, hogy melyik kiadással kell összehasonlítani a changelog létrehozásához:
lastFullRelease
(Utolsó teljes kiadás): Összehasonlítja az aktuális kiadást a legújabb, nem piszkozatos kiadással, amely nincs előzetes kiadásként megjelölve.lastNonDraftRelease
(Utolsó, nem piszkozatos kiadás): Összehasonlítja az aktuális kiadást a legújabb, nem piszkozatos kiadással.lastNonDraftReleaseByTag
(Utolsó nem piszkozatos kiadás címke szerint): Összehasonlítja az aktuális kiadást a megadott címkével egyező utolsó, nem piszkozatos kiadással. Regexet is megadhat pontos címke helyett.
changeLogCompareToReleaseTag
- Kiadási címke
string
. Akkor szükséges, ha changeLogCompareToRelease = lastNonDraftReleaseByTag && addChangeLog = true
.
A kiadási címke reginálását adja meg. A rendszer a címkének megfelelő kiadást fogja használni a változásnapló-számítások alapjaként.
changeLogType
- Változásnapló típusa
string
. Akkor szükséges, ha addChangeLog = true
. Engedélyezett értékek: commitBased
(Véglegesítésalapú), issueBased
(Problémaalapú). Alapértelmezett érték: commitBased
.
A változásnapló típusát adja meg. A változásnaplók lehetnek véglegesítésen vagy problémaalapúak. A véglegesítés-alapú változásnapló felsorolja a kiadásban szereplő összes véglegesítést. A problémaalapú változásnapló felsorolja a kiadásban szereplő összes problémát vagy lekéréses kérelmet ..
changeLogLabels
- Kategóriák
string
. Választható. Használja a következőt: changeLogType = issueBased && addChangeLog = true
. Alapértelmezett érték: [{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }]
.
Kategorizálja a módosításokat a problémához vagy a lekéréses kérelemhez társított címke alapján. Címke esetén megemlítheti a kategória megjelenítendő nevét és a probléma állapotát. A címkék például a következők: "[{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }]"
. Azokban az esetekben, amikor egy módosítás több címkével rendelkezik, az első megadott címke élvez elsőbbséget. Hagyja üresen ezt a mezőt a problémák vagy a lekéréses kérelmek egybesimított listájának megtekintéséhez.
Feladatvezérlési lehetőségek
Minden feladathoz tartoznak vezérlési lehetőségek is a feladat bemenetei mellett. További információ: Vezérlési beállítások és gyakori feladattulajdonságok.
Kimeneti változók
Nincsenek.
Megjegyzések
Ezzel a feladatsal létrehozhat, szerkeszthet vagy elvethet egy GitHub-kiadást a folyamatban.
GitHub-szolgáltatáskapcsolat
Ehhez a feladathoz írási engedéllyel rendelkező GitHub-szolgáltatáskapcsolatra van szükség a GitHub-adattárhoz. GitHub-szolgáltatáskapcsolatot az Azure Pipelines-projektben hozhat létre. A létrehozás után használja a szolgáltatáskapcsolat nevét a feladat beállításaiban.
Példák
GitHub-kiadás létrehozása
Az alábbi YAML a feladat minden futtatásakor létrehoz egy GitHub-kiadást. A buildszám a kiadás címkeverziójaként használatos. A $(Build.ArtifactStagingDirectory) mappában lévő összes .exe fájl és README.txt fájl feltöltve lesz adategységként. Alapértelmezés szerint a feladat létrehoz egy változásnaplót (a véglegesítések és a kiadás részét képező problémák listáját), és közzéteszi azt kibocsátási megjegyzésekként.
- task: GithubRelease@1
displayName: 'Create GitHub Release'
inputs:
gitHubConnection: zenithworks
repositoryName: zenithworks/javaAppWithMaven
tagSource: manual
tag: $(Build.BuildNumber)
assets: |
$(Build.ArtifactStagingDirectory)/*.exe
$(Build.ArtifactStagingDirectory)/README.txt
A kiadás létrehozását az adattárcímkék alapján is szabályozhatja. A következő YAML csak akkor hoz létre GitHub-kiadást, ha a folyamatot aktiváló véglegesítéshez hozzá van rendelve egy Git-címke. A GitHub-kiadás ugyanazzal a címkeverzióval jön létre, mint a társított Git-címke.
- task: GithubRelease@1
displayName: 'Create GitHub Release'
inputs:
gitHubConnection: zenithworks
repositoryName: zenithworks/javaAppWithMaven
assets: $(Build.ArtifactStagingDirectory)/*.exe
Azt is érdemes lehet használni a feladat feltételeivel együtt, hogy még finomabb szabályozást kapjon a feladat futtatásakor, ezáltal korlátozva a kiadások létrehozását. A következő YAML-ben például a feladat csak akkor fut, ha a folyamatot a "refs/tags/release-v*" mintának megfelelő Git-címke aktiválja.
- task: GithubRelease@1
displayName: 'Create GitHub Release'
condition: startsWith(variables['Build.SourceBranch'], 'refs/tags/release-v')
inputs:
gitHubConnection: zenithworks
repositoryName: zenithworks/javaAppWithMaven
assets: $(Build.ArtifactStagingDirectory)/*.exe
GitHub-kiadás szerkesztése
Az alábbi YAML frissíti egy GitHub-kiadás állapotát a "piszkozat" állapotról a "közzétett" állapotra. A szerkeszteni kívánt kiadást a megadott címke határozza meg.
- task: GithubRelease@1
displayName: 'Edit GitHub Release'
inputs:
gitHubConnection: zenithworks
repositoryName: zenithworks/javaAppWithMaven
action: edit
tag: $(myDraftReleaseVersion)
isDraft: false
GitHub-kiadás törlése
Az alábbi YAML töröl egy GitHub-kiadást. A törölni kívánt kiadást a megadott címke határozza meg.
- task: GithubRelease@1
displayName: 'Delete GitHub Release'
inputs:
gitHubConnection: zenithworks
repositoryName: zenithworks/javaAppWithMaven
action: delete
tag: $(myDraftReleaseVersion)
Beágyazott kibocsátási megjegyzések
Az alábbi YAML létrehoz egy GitHub-kiadást, és beágyazott kibocsátási megjegyzéseket ad hozzá.
- task: GitHubRelease@1
inputs:
gitHubConnection: <GITHUB_SERVICE_CONNECTION>
repositoryName: '$(Build.Repository.Name)'
action: 'create'
target: '$(Build.SourceVersion)'
tagSource: 'userSpecifiedTag'
tag: <YOUR_TAG>
title: <YOUR_TITLE>
releaseNotesSource: 'inline'
releaseNotesInline: <YOUR_RELEASE_NOTES>
Követelmények
Követelmény | Leírás |
---|---|
Folyamattípusok | YAML, klasszikus build, klasszikus kiadás |
Futtatás: | Ügynök, DeploymentGroup |
Igények | None |
Képességek | Ez a tevékenység nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek. |
Parancskorlátozások | Bármelyik |
Változók beállítása | Bármelyik |
Ügynök verziója | 2.0.0 vagy újabb |
Feladatkategória | Segédprogram |
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: