2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

他リポジトリのGitHub Actionsを実行する方法

Posted at

はじめに

本記事は どすこい塾 Advent Calendar 2025 の7日目の記事です。
昨日は @bull012 さんで AIエージェントに「レール」を敷け。バグ報告を「プロンプト化」してエンジニアの調査を「極小化」する でした。

みなさんは、例えば「別リポジトリで管理しているOpenAPI Specification(OAS)のYAMLファイルを更新するたび、クライアントコードを自動生成してPRを作成する」など、「別リポジトリのプッシュをトリガーに、他リポジトリを更新する」を実現したいことはありませんか?

それを実現すべく、本記事では他リポジトリのGitHub Actionsのワークフローを実行する方法を紹介します。

登場人物

わかりやすくするため、架空のリポジトリを使って説明します。

  • 本リポジトリ: uhooi/loki-ios
    • iOSアプリのコードを管理している
  • 別リポジトリ: uhooi/loki-oas
    • uhooi/loki-ios で使うOASのYAMLファイルを管理している

別リポジトリをクローンして作業するワークフローを作る

まずはトリガーを気にせず、別リポジトリをクローンして作業するワークフローを作ります。
手動でも実行できるよう、 workflow_dispatch: を指定するのがオススメです。

update_openapi_codes.yml (uhooi/loki-ios)
on:
  workflow_dispatch:

permissions:
  contents: write
  pull-requests: write

jobs:
  update-openapi-codes:
    runs-on: macos-15

    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Checkout loki-oas
        uses: actions/checkout@v4
        with:
          repository: 'uhooi/loki-oas'
          ref: 'feature/foo' # デフォルトブランチ以外を使う場合は指定する
          path: 'loki-oas'

      - name: Update OpenAPI codes
        run: |
          # OpenAPIのクライアントコードを生成し、PRを作成する

他リポジトリのワークフローを実行する

次に、先ほど作成したワークフローを実行するだけのワークフローを別リポジトリに作ります。
gh workflow run で他リポジトリのワークフローを実行できるのが便利です。

update_opanapi_codes.yml (uhooi/loki-oas)
on:
  workflow_dispatch:
  push:
    branches:
      - main

jobs:
  update-openapi-codes-ios:
    runs-on: macos-15
    steps:
      - name: Update OpenAPI codes for iOS
        run: gh workflow run update-openapi-codes.yml --repo 'uhooi/loki-ios' --ref 'feature/bar' # `--ref` はデフォルトブランチ以外を使う場合のみ指定する

今回は main ブランチのプッシュをトリガーにしていますが、必要に応じて変更してください。

また update-openapi-codes-android のようなジョブを追加することで、今後Androidアプリが増えた場合も簡単に対応できます。

おわりに

簡単に他リポジトリのワークフローを実行できるので、ぜひみなさんもやってみてください。
本記事では省略しましたが、GitHub Enterpriseなどを使う場合は、追加でトークンの指定が必要になるので注意です。

以上 どすこい塾 Advent Calendar 2025 の7日目の記事でした。
明日は未定です。

参考リンク

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?