gitに含まれるリージョンに関連するjenkins 2.0パイプラインスクリプトにバグがありますので、私の場合のように大規模なモノレポの場合、マスターへの各チェックインは複数のパイプラインキックオフされることは望ましい行動ではない。 だから視覚化する:パイプライン2.0でグルービットフェッチを実行するgroovyスクリプト
トップレベル:
- >アプリケーションフォルダ1
- >アプリケーションフォルダ2
を私がやりたいことはgitのは、そう、私はgitのを行うことができます最初のフェッチを行うことです特定のフォルダに何かが変更されているかどうかを確認するためにdiffをし、それは、その特定のフォルダのためのパイプラインを実行している場合は何も私が持っている
コードを変更しない場合は何もしないことは以下の通りです:
node{
git credentialsId: 'cred id', url: 'ssh://[email protected]:1234/app/mono-repo.git'
ret = sh(script: 'git fetch; git diff origin/master remotes/origin/master | grep "folder-name"', returnStatus: true)
if(ret == 0){
doSomething()
}else{
doNothing()
}
}
git fetchがパーミッションエラーのために失敗するという問題は、私はチェックアウトを使用することができますが、次にdiffを手に入れることはできません。信用度を使ってgit fetchを使ってtilingを使う方法はありますか?