萌えハッカーニュースリーダー

2025/10/22 04:05 Show HN: Run any GitHub Action locally from your Cron job -- finally!

出典: https://docs.dagu.io/features/executors/github-actions#basic-usage
hakase
博士

ロボ子、今日のニュースはGitHub Actions Executorじゃ。Dagu内でGitHub Actionsを実行できるらしいぞ。

roboko
ロボ子

GitHub ActionsをDagu内でですか?それは便利そうですね。具体的にはどういうことですか?

hakase
博士

ふむ、DaguがGitHub Actionsの実行を委譲するらしいのじゃ。ただし、今はまだ実験段階で、APIとか動作が変わる可能性があるみたいじゃぞ。

roboko
ロボ子

なるほど、まだ発展途上なのですね。利用するための前提条件はありますか?

hakase
博士

Dockerか、それと互換性のあるOCIランタイムが必要みたいじゃな。あと、ネットワークエグレスが許可されてないとダメらしいぞ。プライベートリポジトリを使うなら、GitHubトークンも必要じゃ。

roboko
ロボ子

Dockerが必要なのですね。プライベートリポジトリへのアクセスにはトークンが必要なことも了解しました。

hakase
博士

基本的な使い方は、`command`にアクションの参照(`owner/repo@ref`)を書くのじゃ。`executor.type`は`gha`にする必要があるぞ。`executor.config`にはランナー構成オプションを書くみたいじゃな。

roboko
ロボ子

`command`、`executor.type`、`executor.config`ですね。`params`は何に使うのですか?

hakase
博士

`params`はGitHub Actions YAMLの`with:`ブロックに直接マップされるみたいじゃ。便利じゃな。

roboko
ロボ子

`with:`ブロックをそのまま使えるのですね。ワーキングディレクトリはどうなりますか?

hakase
博士

アクションはステップの解決された`workingDir`で実行されるみたいじゃ。デフォルトはDAGの`workingDir`か、設定されてなければプロセスのCWDじゃな。専用のワークスペースが必要なら、`workingDir` / `dir`でステップごとにオーバーライドできるぞ。

roboko
ロボ子

なるほど、柔軟に対応できるのですね。シークレットはどうやって渡すのですか?

hakase
博士

DAGレベルの`secrets`ブロックを使うのじゃ。これらはGitHubシークレットとしてアクションに公開され、ログでマスクされるらしいぞ。

roboko
ロボ子

`secrets`ブロックですね。パラメータ評価中に、解決されたシークレットを名前で参照できるのですね。

hakase
博士

`executor.config`オブジェクトでは、ランナーイメージとか、コンテナを自動で削除するかどうかとか、Dockerネットワークモードとかを設定できるみたいじゃ。

roboko
ロボ子

いろいろ設定できるのですね。`reuseContainers`というオプションもありますが、これは何ですか?

hakase
博士

それは、パフォーマンスのためにアクション実行間でコンテナを再利用するかどうかを設定するオプションじゃ。便利じゃな。

roboko
ロボ子

なるほど、コンテナを再利用することで高速化できるのですね。制限事項はありますか?

hakase
博士

今はシングルステップワークフローしかサポートされてないみたいじゃな。あと、エグゼキュータは最小限の`push`イベントペイロードを合成するらしいぞ。

roboko
ロボ子

シングルステップワークフローのみですか。今後のアップデートに期待ですね。Marketplaceアクションについてはどうですか?

hakase
博士

Marketplaceアクションはオンデマンドでリモートリソースをフェッチするみたいじゃな。

roboko
ロボ子

必要な時に必要なリソースを取得するのですね。GitHub Actions Executor、色々と可能性がありそうですね。

hakase
博士

そうじゃな。ところでロボ子、GitHub Actions Executorを使って、私の秘密のレシピを自動で公開しないようにするワークフローを作ってくれないかの?

roboko
ロボ子

博士、それは自分でお願いします。それに、秘密のレシピって、インスタントラーメンのアレンジのことですよね?

hakase
博士

むむ、バレてしまったか。

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search