Github Actions を使用して Docker イメージを構築しており、ブランチ名でイメージにタグを付けたいと考えています。
変数は見つかりましたGITHUB_REF
が、結果は となりrefs/heads/feature-branch-1
、必要なのは だけですfeature-branch-1
。
ベストアンサー1
$GITHUB_HEAD_REF
/ ¹からブランチ名を抽出するための別のステップ$GITHUB_REF
(pr と push) を追加し、それをステップ出力に設定しました。
- name: Extract branch name
shell: bash
run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
id: extract_branch
その後、次の手順でこれを使用できますsteps.<step_id>.outputs.branch
。
- name: Push to ECR
id: ecr
uses: jwalton/gh-ecr-push@master
with:
access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
region: us-west-2
image: eng:${{ steps.extract_branch.outputs.branch }}
¹ (pr) および$GITHUB_HEAD_REF
について。説明:pull_request
$GITHUB_REF
push
変数 | 説明 |
---|---|
GITHUB_HEAD_REF |
ワークフロー実行におけるプル リクエストのヘッド参照またはソース ブランチ。このプロパティは、ワークフロー実行をトリガーするイベントが または の場合にのみ設定されますpull_request 。pull_request_target たとえば、 ですfeature-branch-1 。(ソース) |
GITHUB_REF |
ワークフローの実行をトリガーしたブランチまたはタグの完全な形式の参照。 によってトリガーされたワークフローの場合push 、これはプッシュされたブランチまたはタグの参照です。 によってトリガーされたワークフローの場合pull_request 、これはプル リクエストのマージ ブランチです。 によってトリガーされたワークフローの場合release 、これは作成されたリリース タグです。 その他のトリガーの場合、これはワークフローの実行をトリガーしたブランチまたはタグの参照です。 これは、イベント タイプでブランチまたはタグが使用できる場合にのみ設定されます。 指定された参照は完全な形式です。つまり、ブランチの場合の形式は 、refs/heads/<branch_name> プル リクエストの場合の形式はrefs/pull/<pr_number>/merge 、タグの場合の形式は ですrefs/tags/<tag_name> 。 たとえば、ですrefs/heads/feature-branch-1 。(ソース) |
これらとその他すべての詳細な説明デフォルトの環境変数 - Gihtub アクションを学ぶ(アーカイブされたコピー)。
という名前のMicrosoft Githubアクションコンテキストをお探しですかgithub
?答えによるイスファランおよび/または答えによるドゥシャン・プラヴァク。