Quantumleap
581 words
3 minutes
GitHub ActionsをSelf-hostedで動かす

概要#

GitHub ActionsはGitHubが用意してくれたサーバー(通称Runnerという)でソースコードのビルドやテストを実行してくれる仕組みである。

で、このサーバーはパブリックレポジトリでGitHubが用意したサーバーでは無料で使うことができます。

無料でいいのですかという気がするのですが、マシンのスペックはそれほど高いわけではなくまたプライベートなレポジトリに対してはアカウントごとにクレジットが用意されておりその範囲内で一ヶ月利用できるようになっています。

プランの内容#

プランストレージクレジット
Free500MB2000
Pro1GB3000
Team500MB2000

大雑把にこんな感じで、容量は500MBしかありません。よってそれ以上の大規模プロジェクトは無料アカウントでは実行することができません。

OSクレジット消費
Linux1
Windows2
macOS10

またOSごとのクレジット消費の割合も違います。Linuxでは1分1クレジット消費なので2000クレジットあれば一ヶ月に2000分利用できますが、macOSだと10倍消費するので200分しか利用することができません。

更にmacOSは無料プランでは(多分)Intel CPUしか利用することができないため(macos-latest-xlargemacos-13-xlargeを指定すればApple Siliconで動作するらしいのですが普通にコケます)、macOSのプランはあってないようなものです。

で、ないのであればつくればいいわけです。

GitHub Actions#

このブログのレポジトリはここなのですが、設定からActions -> Runnersを開いて表示されるコマンドを順番に実行します。

Current runner version: '2.311.0'
2024-01-19 19:08:52Z Listening for Jobs

みたいなのが表示されたら成功です。

最後に.github/workfrlowからruns-on: self-hostedと変えれば準備完了です。

実行してみた結果、これまで100秒位かかっていたデプロイが80秒ほどになりました。

とはいえ、これ自体は全く重いプロジェクトではないので高速化できないことは重々承知しています。

とりあえず簡単に動かすことができたので余っているApple SiliconのMacを使ってデプロイ用のサーバーを立てようと思います。

記事は以上。

GitHub ActionsをSelf-hostedで動かす
https://fuwari.vercel.app/posts/2024/01/github_actions/
Author
tkgling
Published at
2024-01-20