概要
例えば omnibus-gitlab に含まれるドキュメントを修正したい場合には Markdown を修正してローカルで動作確認してから pull-request を送りたくなります
今回はローカルでドキュメントをビルドする方法を紹介します
環境
- macOS 10.15.6
- Ruby 2.7.1p83
- bundler 2.1.4
- Nodejs 14.5.0
- yarn 1.22.4
ビルドまでの流れ
Gitlab のドキュメントは複数のリポジトリに別れているためそれぞれ clone する必要があります
ドキュメント自体はそれぞれのプロダクトのリポジトリで Markdown で管理されておりスタイルは gitlab-docs というリポジトリで管理されています
つまり各プロダクトのドキュメントを clone してスタイルを管理しているリポジトリ上に紐付けてビルドすればローカルで確認できます
各種リポジトリの clone
作業用のディレクトリを作成して必要なリポジトリを clone します
mkdir build-gitlab-docscd build-gitlab-docsgit clone --depth 1 https://gitlab.com/gitlab-org/omnibus-gitlab.gitgit clone --depth 1 https://gitlab.com/gitlab-org/gitlab-runner.gitgit clone --depth 1 https://gitlab.com/gitlab-org/gitlab.gitgit clone --depth 1 https://gitlab.com/gitlab-org/charts/gitlab.git chartsgit clone --depth 1 https://gitlab.com/gitlab-org/gitlab-docs.git
スタイルのリポジトリに各リポジトリを紐付ける
次に gitlab-docs リポジトリに各リポジトリを紐付けます
紐付けると言ったもシンボリックリンクを作成するだけです
cd ..ln -s $(pwd)/build-gitlab-docs/omnibus-gitlab/doc build-gitlab-docs/gitlab-docs/content/omnibusln -s $(pwd)/build-gitlab-docs/gitlab/doc build-gitlab-docs/gitlab-docs/content/eeln -s $(pwd)/build-gitlab-docs/gitlab-runner/docs build-gitlab-docs/gitlab-docs/content/runnerln -s $(pwd)/build-gitlab-docs/charts/doc build-gitlab-docs/gitlab-docs/content/chartscd build-gitlab-docs/gitlab-docsls -ltr content
ちゃんとフルパスでリンクされていれば OK です
yarn ビルド
まずは各種 static ファイルを生成します
yarn install --frozen-lockfile
bundle ビルド
次に生成した静的ファイルと Markdown を描画するための nanoc のインストールとビルドを行います
bundle update --bundlerbundle config path vendorbundle installbundle exec nanoc && bundle exec nanoc live
ローカルの bundler が 2.x 系になっていたので bundle update してバージョンを合わせています
bundler が 1.17.3 であれば不要です
ビルドが成功すれば localhost:3000 で確認できます
動作確認
localhost:3000 にアクセスして以下のようなドキュメントが確認できれば OK です
最後に
コントリビュータ向けの記事ですが gitlab のドキュメントをビルドする方法を紹介しました
ドキュメントを修正したい場合にはご活用ください

0 件のコメント:
コメントを投稿