GitHub Actions をローカルで実行する act が実用的になった

act とは

これです。

github.com

使い方

1. インストールする

公式ドキュメントにはいろいろなインストール方法が書いてありますが、ここでは bash 経由でインストールします。

$ curl https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bash

2. GitHub Actions の設定ファイルが存在するリポジトリへ移動する

たとえば /path/to/my_app/.github/workflows/foobar.yml というようなファイルが存在するとき、$ cd /path/to/myapp します。

3. コマンドを実行する

実行します。

$ act

感想

以前まではコマンドの実行さえままならなかったのですが、現在では実用的になったと思います*1。ローカルでぐるぐる回せるので「コマンドでちょっと typo してしまったために 30分 かかる CI がやり直しになった」というような悲劇も防げます。

実行オプションも充実しているので公式ドキュメントを一読しておくとよいと思います。Fail したときにコンテナがまだ動いているので SSHデバッグ 的なことができるのもいいですね*2

*1:まだイケてない点もあります

*2:--rm オプションを指定して act を実行すると、失敗した時にもコンテナを削除してくれます

Powered by はてなブログ