🍣
GitHub Actionsの実行ブランチをENVに設定する方法
どうやら最近新しく GITHUB_REF_NAME
という環境変数が別途用意されこちらで参照できるようになったようです!
以下のようなことはやらなくても取れるようになったみたいです〜〜
以前の
前の例ではfeature/hoge
みたいなケースに対応できないので、以下のほうが良いかも。
- name: set branch_name env
run: echo "BRANCH_NAME=$(echo ${GITHUB_REF#refs/heads/})" >> $GITHUB_ENV
もっと前
- name: set branch_name env
run: echo "BRANCH_NAME=$(echo ${GITHUB_REF##*/})" >> $GITHUB_ENV
使うときは、${{ env.BRANCH_NAME }}
で利用する
refs/heads
がついてても大丈夫であれば、${{ github.ref }}
で取得できる。run内で使うときは$GITHUB_REF
。
何をやっているかといえば、シェルスクリプトの文字列操作を利用している
GITHUB_REFにはrefs/heads/master
といった文字列が入っているため、
##*/
は最後に/
が入っているパターンを持ってくるためmasterという文字列を返してくれる。
Discussion