GitHubRelease@0 - GitHub Release v0 工作
使用此工作來建立、編輯或刪除 GitHub 版本。
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.
輸入
gitHubConnection
- GitHub 連線 (OAuth 或 PAT)
string
. 必要。
指定要用來連線至 GitHub 存放庫的 GitHub 服務連線名稱。 連線必須以 GitHub 使用者的 OAuth 或 GitHub 個人存取權杖為基礎。 如需服務連線的詳細資訊,請參閱 管理服務連線。
repositoryName
- 存儲 庫
string
. 必要。 預設值:$(Build.Repository.Name)
。
指定要在其中建立、編輯或刪除 GitHub 版本的 GitHub 存放庫名稱。
action
- 行動
string
. 必要。 允許值:create
、edit
、delete
。 預設值:create
。
指定要執行的發行作業類型。 這項工作可以建立、編輯或刪除 GitHub 版本。
target
- 目標
string
. 當 action = create || action = edit
時為必要。 預設值:$(Build.SourceVersion)
。
指定您想要用來建立 GitHub 版本的認可 SHA,例如 48b11d8d6e92a22e3e9563a3f643699c16fd6e27
。 您也可以在此欄位中使用變數,例如 $(myCommitSHA)
。
tagSource
- 標記來源
string
. 當 action = create
時為必要。 允許的值: auto
(Git 標籤) , manual
(使用者指定的標籤) 。 預設值:auto
。
指定您要用於發行建立的標籤。 (auto
Git 標籤) 選項會自動使用與 Git 認可相關聯的標記。 manual
使用 (使用者指定的標籤) 選項手動提供標籤。
tagPattern
- 標籤模式
string
. 選擇性。 使用 時 tagSource = auto
。
使用 RegEx 指定 Git 標籤模式,例如 release-v1.*
。 GitHub 版本只會針對具有相符 Git 標籤的認可建立。
tag
- 標記
string
. 當 action = edit || action = delete || tagSource = manual
時為必要。
指定建立、編輯或刪除發行時要使用的標記。 您也可以在此欄位中使用變數,例如 $(myTagName)
。
title
- 版本標題
string
. 選擇性。 使用 時 action = create || action = edit
。
指定 GitHub 版本的標題。 如果保留空白,標籤將會當做發行標題使用。
releaseNotesSource
- 版本資訊來源
string
. 選擇性。 使用 時 action = create || action = edit
。 允許的值: file
(版本資訊檔案) , input
(內嵌版本資訊) 。 預設值:file
。
指定 GitHub 版本的描述。 file
使用 [ (版本資訊] 檔案) 選項,將檔案內容當做版本資訊使用。 input
使用 (內嵌版本資訊) 選項手動輸入版本資訊。
releaseNotesFile
- 版本資訊檔案路徑
string
. 選擇性。 使用 時 releaseNotesSource = file
。
指定包含版本資訊的檔案。
releaseNotes
- 版本資訊
string
. 選擇性。 使用 時 releaseNotesSource = input
。
指定版本資訊。 支援 Markdown。
assets
- 資產
string
. 選擇性。 使用 時 action = create || action = edit
。 預設值:$(Build.ArtifactStagingDirectory)/*
。
指定要上傳為發行資產的檔案。 您可以使用萬用字元來指定多個檔案。 例如,用於 $(Build.ArtifactStagingDirectory)/*.zip
建置管線,或用於 $(System.DefaultWorkingDirectory)/*.zip
發行管線。
您也可以指定多個模式,每行一個模式一個。 根據預設,目錄中的所有檔案 $(Build.ArtifactStagingDirectory)
都會上傳。 如需可用預先定義變數清單的詳細資訊,請參閱 建置變數 和 發行變數。
assetUploadMode
- 資產上傳模式
string
. 選擇性。 使用 時 action = edit
。 允許的值: delete
(刪除現有資產) , replace
(取代現有的資產) 。 預設值:delete
。
指定您想要使用的資產上傳模式。 delete
使用 [ (刪除現有的資產) 選項,先刪除版本中的任何現有資產,然後上傳所有資產。 replace
使用 [ (取代現有資產) 選項來取代任何具有相同名稱的資產。
isDraft
- 草稿版本
boolean
. 選擇性。 使用 時 action = create || action = edit
。 預設值:false
。
指出您是否要將版本儲存為草稿, (未發佈) 。 如果 false
為 ,則會發佈發行。
isPreRelease
- 發行前版本
boolean
. 選擇性。 使用 時 action = create || action = edit
。 預設值:false
。
指出您是否要將發行標示為發行前版本。
addChangeLog
- 新增變更記錄
boolean
. 選擇性。 使用 時 action = create || action = edit
。 預設值:true
。
指定是否要包含變更記錄。 如果設定為 true
,則會產生目前版本與最後一個發行版本本之間) (認可和問題的變更清單,並附加至版本資訊。
changeLogCompareToRelease
- 與 比較
string
. 當 addChangeLog = true
時為必要。 允許的值: lastFullRelease
(上次完整發行) 、 lastNonDraftRelease
(上次非草稿版本) , lastNonDraftReleaseByTag
(依標籤) 的最後一個非草稿發行。 預設值:lastFullRelease
。
指出要與 哪一個版本進行比較以產生變更記錄:
lastFullRelease
(上次完整版本) :比較目前版本與未標示為發行前版本的最新非草稿版本。lastNonDraftRelease
(上次非草稿版本) :比較目前版本與最新的非草稿版本。lastNonDraftReleaseByTag
(依標籤) 的最後一個非草稿發行:比較目前的版本與符合指定標籤的最後一個非草稿版本。 您也可以指定 RegEx,而不是確切的標籤。
changeLogCompareToReleaseTag
- 發行標籤
string
. 當 changeLogCompareToRelease = lastNonDraftReleaseByTag && addChangeLog = true
時為必要。
指定發行標籤的 RegEx。 符合此標籤的發行將作為變更記錄計算的基底。
changeLogType
- Changelog 類型
string
. 當 addChangeLog = true
時為必要。 允許的值: commitBased
(以認可為基礎的) , issueBased
(以問題為基礎的) 。 預設值:commitBased
。
指定變更記錄類型。 變更記錄可以是認可型或問題型。 認可型變更記錄會列出版本中包含的所有認可。 以問題為基礎的變更記錄會列出發行中包含的所有問題或提取要求) (PR。
changeLogLabels
- 類別
string
. 選擇性。 使用 時 changeLogType = issueBased && addChangeLog = true
。 預設值:[{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }]
。
根據與問題或 PR 相關聯的標籤來分類變更。 針對標籤,您可以提及類別和問題狀態的顯示名稱。 標籤的範例包括: "[{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }]"
。 如果變更具有多個標籤,則第一個指定的標籤會優先使用。 將此欄位保留空白,以查看問題或 PR 的一般清單。
工作控制選項
除了工作輸入之外,所有工作都有控制選項。 如需詳細資訊,請參閱 控制選項和一般工作屬性。
輸出變數
無。
備註
此工作有較新的版本可在 GitHubRelease@1取得。
規格需求
需求 | 描述 |
---|---|
管線類型 | YAML、傳統組建、傳統版本 |
在 上執行 | Agent、DeploymentGroup |
要求 | 無 |
Capabilities | 此工作不符合作業中後續工作的任何需求。 |
命令限制 | 任何 |
可設定變數 | 任何 |
代理程式版本 | 2.0.0 或更新版本 |
工作類別 | 公用程式 |