GitHub Actions
Job 間でデータを共有できる
run: echo "key_name=world" >> "$GITHUB_OUTPUT" のように stdout に吐き出すと steps.stepname.outputs.key_name とアクセスできるらしい
複数環境にデプロイ
job ごとにどの environment を使うかを指定できる
これはできないみたい。どこにも書いてない気がするけど
code:shell
jobs:
call-resuable-workflow:
uses: workflow
environment: production
これが参考になった
reusable workflow が environment 文字列を受け取る
変数
$GITHUB_ENV に設定する
env.NAME でアクセス
同一 job のそれ以降の step で参照可能
env に設定する
$NAME でアクセス
式
Secrets
workflow に environment を指定した状態だと、repository secrets が読めないとかある?
動作的にはそんな感じがするが、直感に反するし、ドキュメントにも記載はない
違った。reusable workflow には明示的に secrets を渡す必要があるみたい。あるいは secrets: inherit を指定する
差分があったファイルに応じた処理をする
on で path filtering
ファイルが増える可能性あり
専用の actions あり
Reusable workflow
Timeouts
設定もできる