GitHub Actionsを再利用する
GitHub Actionsには3つの実行単位があるけれど、どこを再利用したいのかによって選べる手段が変わる。
全体を再利用したい
Section titled “全体を再利用したい”Job全体を再利用する
Section titled “Job全体を再利用する”ubuntu-latest など実行環境も含めて再利用したい場合はGitHub ActionsのReusable Workflowを使う。
複数のStepをまとめて再利用する
Section titled “複数のStepをまとめて再利用する”複合アクションを使う。Reusable Workflowでも input でパラメータを渡せば実現できるが、複合アクションの方が使いやすいだろう。
ただし複合アクションの制限がある。
特定のStepを再利用する
Section titled “特定のStepを再利用する”例えば複雑な run を書いている場合など、この場合は独自のアクションをTypeScript/JavaScriptで実装できるかもしれない。
マトリクスを再利用する
Section titled “マトリクスを再利用する”少し特殊なケースだとは思うが、マトリクスも工夫すれば再利用できる。
matrix: outputs: matrix: ${{ steps.set-matrix.outputs.matrix }} steps: - uses: actions/checkout@v4 - id: set-matrix run: echo "matrix=$(jq -c . matrix.json)" >>$GITHUB_OUTPUT
tasks: needs: - matrix strategy: matrix: ${{ fromJSON(needs.matrix.outputs.matrix) }}