Giteaをセットアップした

techrpi


自分のためのプライベートgitリポジトリ置き場として、セルフホスト版のGiteaをセットアップした。

https://about.gitea.com/

私のプライベート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 をホストしていて、さしあたりランナーも同じマシンにホストしているが、別の強力なマシンでランナーを動かすこともできるってわけ。

Design of Gitea Actions

しばらく使ってみる。