1. ホーム
  2. git

[解決済み] 複数のgitレポを同じJenkinsワークスペースにチェックアウトする

2022-05-15 09:45:51

質問

Jenkins 1.501 と Jenkins Git プラグイン 1.1.26 を使っています。

私は3つの異なるgitリポジトリを持っており、それぞれ複数のプロジェクトを持っています。

ここで、3つのgitリポジトリからすべてのプロジェクトをJenkinsのスレーブ上の同じワークスペースにチェックアウトする必要があります。それぞれのgit repoは、以下のように定義しました。 ソースコード管理。複数の SCM . しかし、レポがチェックアウトされるたびに、前のレポ(とそれに関連するプロジェクト)は削除されます。

私はこれを読みました。

http://jenkins.361315.n4.nabble.com/multiple-git-repos-in-one-job-td4633300.html

を指定しましたが、あまり効果がありません。同じフォルダを レポのローカルサブディレクトリ(オプション) の下に同じフォルダを指定しようとしましたが、同じ結果になりました。

これがJenkinsを使用して単に不可能である場合、私はいくつかの事前ビルドステップ/スクリプトが正しい場所にプロジェクトを移動するために使用される可能性があると思います。プロジェクトのビルド構成を変更するオプションはありません。

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

Jenkins + Git Pluginでは、1つのワークスペースに複数のレポを同時にチェックアウトすることはできません。

回避策として、それぞれ単一のレポをチェックアウトして最終的なプロジェクト ワークスペースにコピーする複数の上流ジョブを持つか (多くのレベルで問題があります)、ビルド時にジョブ ワークスペースに必要な各レポをチェックアウトするシェル スクリプト手順をセットアップすることが可能です。

以前は Multiple SCM プラグインがこの問題を解決してくれましたが、現在は非推奨となっています。Multiple SCM プラグイン ページより: "ユーザーは、次のように移行してください。 https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Plugin . Pipelineは複数のSCMからチェックアウトするためのより良い方法を提供し、Jenkinsのコア開発チームによってサポートされています(")。