2016-06-16 5 views
1

Jenkinsでjenkinsfileのリポジトリをスキャンする組織プロジェクトが構成されています。Jenkinsで分岐索引作成中に特定のパスを無視する方法

node 
{ 
    stage 'Checkout' 
     checkout([ 
      $class: 'GitSCM', 
      branches: [[name: '*/master']], 
      extensions: [[ 
       $class: 'PathRestriction', 
       excludedRegions: 'CommonAssemblyInfo\\.cs', 
       includedRegions: '' 
      ]], 
      userRemoteConfigs: [[ 
       url: '[email protected]:VirtoCommerce/vc-module-jenkinssample.git']]]) 
} 

をCommonAssemblyInfo.csに加えられた変更はすべてのビルドをトリガしませんので、あなたは、私が定義された除外領域を持って表示される場合がありますとおり:リポジトリ(https://github.com/VirtoCommerce/vc-module-jenkinssample)の一つは、以下のJenkinsfileが定義されています。しかし、 "BranchAssembly"は、 "CommonAssemblyInfo.cs"の変更をコミットするときにジョブを強制的に作成します。どうすればこれを防ぐことができますか?

Btw、上記のスクリプトは、別のパイプラインジョブで正常に動作します。

答えて

1

現在、組織パッケージを使用しているときにビルドを無視する方法はありません。しかし、私は2番目のビルド(1番目のビルドからコミットした後)でコメントを取り込み、再びコミットしないので、無限ループが防止されました。

bat "\"${tool 'Git'}\" log -1 --pretty=%%B > LAST_COMMIT_MESSAGE" 
git_last_commit=readFile('LAST_COMMIT_MESSAGE') 

if (env.BRANCH_NAME == 'master' && git_last_commit.contains('[publish]')) 
{ 
    stage 'Publishing' 
     processManifests() 
} 
} 

ホープこれは誰かに役立ちます:私は最後のコメントを読んで、それは私が何を期待するものではないことを確認したことをすることができません。

関連する問題