ドキュメントレビューアプリ

GitLab チームのメンバーで、マージリクエストにドキュメントの変更が含まれている場合は、レビューアプリを使ってGitLab Docs サイトにデプロイした場合の見え方をプレビューすることができます。

レビューアプリは以下のプロジェクトで有効です:

あるいは、gitlab-docs 開発ガイド またはGDK ドキュメントをチェックして、ドキュメントをレンダリングし、内部でプレビューしてください。

レビューアプリを起動する方法

マージリクエストにドキュメントの変更がある場合、review-docs-deploy 手動ジョブを使用して、マージリクエストのドキュメントレビューアプリをデプロイしてください。

Manual trigger a documentation review app

review-docs-deploy* ジョブはクロスプロジェクトパイプラインをトリガーし、あなたの変更をdocsサイトにビルドします。パイプラインが終了すると、レビューアプリの URL がマージリクエストウィジェットに表示されます。この URL を使ってあなたの変更に移動してください。

review-docs-cleanup ジョブはマージ時に自動的に起動します。このジョブはレビューアプリを削除します。

プロジェクトの開発者ロールを持っている必要があります。外部コントリビューターのような開発者ロールを持たないユーザーは手動ジョブを実行できません。その場合は、GitLabチームの誰かにジョブの実行を依頼してください。

技術的な側面

より詳細な情報をお知りになりたい方は、こちらをご覧ください:

  1. マージリクエストのreview-docs-deploy ジョブを手動で実行します。
  2. このジョブはdocs deploy フラグでscripts/trigger-build.rb スクリプトを実行し、gitlab-org/gitlab-docs プロジェクトの$DOCS_BRANCH (デフォルトはmain) の “Triggered fromgitlab-org/gitlab ‘review-docs-deploy’ job” パイプライントリガーをトリガーします。
  3. プレビューの URL はジョブの出力とマージリクエストウィジェットの両方に表示されます。リモートパイプラインへのリンクも表示されます。
  4. gitlab-org/gitlab-docs プロジェクトでは、パイプラインが作成され、ビルド時間を短縮するためにほとんどのテストジョブをスキップします。
  5. docsサイトがビルドされた後、HTMLファイルはアーティファクトとしてGCPバケットにアップロードされます(実装の詳細についてはイシューgitlab-com/gl-infra/reliability#11021 を参照してください)。

特に以下のGitLabの機能が使われています:

レビューアプリのトラブルシューティング

NoSuchKey The specified key does not exist

レビューアプリで次のメッセージが表示された場合、サイトがまだデプロイされていないか、gitlab-docs のダウンストリームパイプラインで何か問題が発生した可能性があります。

NoSuchKeyThe specified key does not exist.No such object: <URL>

その場合は

  • 数分待つと、レビューアプリがオンラインに表示されます。
  • review-docs-deploy ジョブのログを確認し、URLを確認してください。マージリクエストUIに表示されたURLがジョブログと異なる場合、ジョブログのものを試してください。
  • マージリクエストのジョブ出力のリンクからリモートパイプラインのステータスを確認します。パイプラインが失敗したりスタックした場合、GitLab チームメンバーは#docs 内部 Slack チャンネルで助けを求めることができます。投稿者はマージリクエストのテクニカルライターにping を送ることができます。