もがき系プログラマの日常

もがき系エンジニアの勉強したこと、日常のこと、気になっている技術、備忘録などを紹介するブログです。

workflow_callを使ってgithub actionのymlを分割する

はじめに

こんばんは。

最近github actionの知見が少しだけ溜まった僕です。

github actionやってるとymlがすごい量になって、めちゃんこみにくくなりますよね。

うまいこと分割できないかなと調べたら、いいやりかたあったので、備忘録で残しておきます。

本題

公式のドキュメントはこちら

docs.github.com

workflow_call を使う感じです。

もととなる ymlはこちら

main.yml

    uses: ./.github/workflows/deploy.yml

deploy.yml

name: deploy

on:
  workflow_call:

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      ...

たとえば 呼ばれる側の deploy.ymlに引数を渡したい場合は、以下みたいなかんじで渡せます。

main.yml

    uses: ./.github/workflows/deploy.yml
    with:
      arg_1: 100

deploy.yml

on:
  workflow_call:
    inputs:
      arg_1:
        required: false
        type: number
        default: 0

終わりに

そういえば39歳になりました。

ラスト30代がんばります!