GitHubRelease@0 - GitHub Release v0 タスク
このタスクを使用して、GitHub リリースを作成、編集、または削除します。
構文
# 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
。
リリースの作成に使用するタグを指定します。 (Git タグ) オプションでは auto
、Git コミットに関連付けられているタグが自動的に使用されます。 (ユーザー指定の manual
タグ) オプションを使用して、タグを手動で指定します。
tagPattern
- タグ パターン
string
. 省略可能。 の場合は tagSource = auto
を使用します。
正規表現を使用して 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
します。
複数のパターンを 1 行に 1 つずつ指定することもできます。 既定では、$(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
(タグ別の最終ドラフト以外のリリース): 現在のリリースと、指定したタグと一致する最後のドラフト以外のリリースを比較します。 正確なタグの代わりに正規表現を指定することもできます。
changeLogCompareToReleaseTag
- リリース タグ
string
. changeLogCompareToRelease = lastNonDraftReleaseByTag && addChangeLog = true
の場合に必要です。
リリース タグの正規表現を指定します。 このタグに一致するリリースは、変更ログ計算のベースとして使用されます。
changeLogType
- 変更ログの種類
string
. addChangeLog = true
の場合に必要です。 使用できる値: commitBased
(コミット ベース)、 issueBased
(問題ベース)。 既定値: commitBased
。
変更ログの種類を指定します。 変更ログは、コミット ベースまたは問題ベースにすることができます。 コミット ベースの変更ログには、リリースに含まれるすべてのコミットが一覧表示されます。 問題ベースの変更ログには、リリースに含まれるすべての issue または pull request (PR) が一覧表示されます。
changeLogLabels
- カテゴリ
string
. 省略可能。 の場合は changeLogType = issueBased && addChangeLog = true
を使用します。 既定値: [{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }]
。
問題または PR に関連付けられているラベルに基づいて変更を分類します。 ラベルの場合は、カテゴリの表示名と問題の状態をメンションできます。 ラベルの例を次に示します "[{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }]"
。 変更に複数のラベルがある場合は、最初に指定されたラベルが優先されます。 問題または PR のフラットな一覧を表示するには、このフィールドを空のままにします。
タスク制御オプション
すべてのタスクには、タスク入力に加えて制御オプションがあります。 詳細については、「 コントロール オプションと一般的なタスク プロパティ」を参照してください。
出力変数
[なし] :
解説
このタスクの新しいバージョンは 、GitHubRelease@1で使用できます。
要件
要件 | 説明 |
---|---|
パイプラインの種類 | YAML、クラシック ビルド、クラシック リリース |
上で実行 | エージェント、DeploymentGroup |
確認要求 | なし |
Capabilities | このタスクは、ジョブ内の後続のタスクに対する要求を満たしていません。 |
コマンドの制限 | Any |
設定可能な変数 | Any |
エージェントのバージョン | 2.0.0 以上 |
タスクのカテゴリ | ユーティリティ |