Giteaをセットアップした
自分のためのプライベートgitリポジトリ置き場として、セルフホスト版のGiteaをセットアップした。
私のプライベートgitリポジトリはコードに限らずファイルを雑多に置いてある。 遡れば学生時代からずっと保持しており、昔作ったゲームだとか絵だとかも入っている。
何年も前に Giteaを使ったことがあって、それ以前は同じくセルフホスト版のGitLabを使っていた。当時Go言語にはまっていたこともあり、気に入っていた。
今のGiteaは、以前に比べてリッチに、GitHubに近くなった印象で、単なるGitホスティングにとどまらず、本格的なワークフローを一通りこなせると思われる。
特に、 Gitea Actions が気に入っている。
Actions のメカニズムは公式ドキュメントに書いてある通りなのだが、 まず、 nektos/act という GitHub Actions 互換のローカル実行環境を作るプロジェクトが存在している。Giteaでは、この act を活用している。 CI ジョブは、ランナーのうえで実行するわけだが、ランナーは、GiteaとRPCで通信する別プロセス。だから、Giteaサーバーが見える場所なら、NATの背後でも大丈夫、任意のマシン、任意の数のランナーを稼働させることができるだけでなく、たぶんx64,arm64,さらにはGPU環境など、任意のプラットフォームのランナーを自分で用意できる。 私の場合、 Raspberry pi の Docker に Gitea をホストしていて、さしあたりランナーも同じマシンにホストしているが、別の強力なマシンでランナーを動かすこともできるってわけ。
しばらく使ってみる。