1. ホーム
  2. gitlab

[解決済み] CIビルドで複数のリポジトリにアクセスするには?

2022-02-11 01:07:11

質問内容

複数の(非公開)リポジトリで構成されているプロジェクトがあります。

プロジェクト全体をビルドするために、ビルドシステムはすべてのリポジトリのファイル( master のブランチ)。

必要なリポジトリを提供するためにGitLab CIを設定する方法はありますか?

をすればいいんだろうけど git fetch CIビルド時の認証はどうするのでしょうか?

どのように解決するのですか?

すべてのプロジェクトにデプロイキーを追加することができます。そして、デプロイキーの秘密鍵をランナー(複数可)に設定します。ビルドプロセスで通常の git コマンドを使用して、ランナー上のリポジトリをクローンします。これは、ランナー上で少し設定が必要かもしれませんが、うまくいくはずです。

1つのSSHキーペアを生成してすべてのランナーで使用するか、ランナーごとに1つのキーペアを生成することができます。SSH の鍵ペアを生成するには、次のようにします。 SSHキー のドキュメントを参照してください。秘密鍵は、'gitlab-runner' ユーザーの .ssh ディレクトリを作成し git コマンドはクローン時に提示することができます。公開鍵は、GitLabプロジェクトにdeployキーとして追加する必要があります。プロジェクトの設定 -> 'Deploy Keys'でデプロイキーを追加します。