わずか3ヶ月前にmacOSにGitLab開発環境セットアップ (GDK) (2020年9月)という記事を書きました。が、1四半期が経過し状況も変化したので新たに書くことになりました。
tl; dr: GitLab本体やGitaly(バックエンド)をmacOSやWindows、Linuxの各種環境で開発する環境を用意する。
GitLab Development Kit
GitLab Development Kitと呼ばれるGitLab本体を手元のコンピュータで開発できるツールがGitLab開発開始直後より存在していました。
一方、AWSが3年前の今日2017年12月1日(日本時間)に発表したAWS Cloud 9、マイクロソフト傘下GitHubのGitHub Codespaces (現在Early access program中)(旧マイクロソフトVisual Studio Codespaces)(移行ニュースリリース)、そして2020年10月、Google Cloudから発表された新Cloud Shell Editorに代表されるトレンドがありました。
この四半期の間にGDKがクラウドIDEプラットフォームに対応しました。対応しているクラウドIDEはGitpodというサービスです。
Gitpod
https://www.gitpod.io/
GitpodはGitHub(.com)、GitLab(.com)およびBitbucket(.org)に対応するクラウドIDEサービスです。Eclipse Foundation参加のオープンソースプロジェクトEclipse Theiaをベースにしています。2020年8月にはGitpodそのものもオープンソース化されました。Gitpodクラウド版のユーザとしては、無料から始めることができ、無料プランではパブリックリポジトリであれば月50時間までワークスペースを利用できます。
USおよびEUのregionにあるGCP上のKubernetes (GKEなのではないかと推測) に構築されており、ユーザーは16vCPU、59GBメモリの利用ができるようです。なお、以前にあった(そしてドキュメントに記載されている)Asiaのクラスターは既に削除されていて利用できないとのこと。
手順
ここを読むほとんどの人は以下の作業が必要になる。例外はGitLab team memberおよび過去にGitLabへコード貢献があった人(過去のGitLab Hackathon参加者も該当する可能性が高い)。
- https://gitlab.com にログインする。アカウントがない場合はSign upから作成する。
- https://gitpod.io にログインする。アカウントがない場合はGitLabアカウントでアカウント作成&ログインする。
- https://gitlab.com/gitlab-org/gitlab を開いて、Forkボタンを押したのち、自分のユーザ名の右にあるSelectボタンを押す。そして、しばらく待つ(2-10分くらい?)。
- 完了したら、表示されたページのWeb IDEの右にある▽を押し、プルダウンメニューからGitpodを選ぶ。そして、もう一度Gitpodを押す。
- 7-8分待つ。
Gitpodに関する注意
GitLabログインを通じて、Gitpod側にはクレデンシャルが設定済みなので、git fetch/push/pullの操作が可能になります。gpコマンドとして利用可能です。
GDKターミナルでは /workspace/gitlab-development-kit
がカレントディレクトリとして指定されており、gdk
コマンドが利用できます。
GitLabターミナルでは /workspace/gitlab
がカレントディレクトリとして指定されており、(通常のGDKセットアップと異なり) gdk
コマンドが利用できませんので、注意してください。
その他は https://gitlab.com/gitlab-org/gitlab-development-kit/-/blob/master/doc/howto/gitpod.md を見てください。
まとめ
すぐにGitLabの開発に参加できるGitLab Development Kit powered by Gitpodについて説明しました。一人でも多くのコードコントリビュータが増えることを願っています。
すぐに試したい?
GitLab Tokyoコミュニティは12月2〜3日Hackathonイベントを日本語・オンラインで実施します。参加するには、こちらの記事に書かれたセットアップが必要となります。開催時間中にセットアップすることも可能です。ぜひご参加ください。
- 2020-12-02 (水) https://gitlab-jp.connpass.com/event/189496/
- 2020-12-03 (木) https://gitlab-jp.connpass.com/event/189683/