2016-06-20 10 views
0

gerritサブミットが発生した後、私はジョブをトリガーしています。この仕事は新しいバージョンをリリースします。つまり、Mavenターゲットを実行してバージョンを増やし、次に新しいwarアーティファクトを作成します。私が直面している問題は、3つの変更を連続して送信すると、3つすべてがジェンキンスの仕事を引き起こすということです。最初のコミットが提出されたとき、プロジェクトのバージョンはv1.2.3であるとしましょう。新しいgerritイベントに基づいてJenkinsジョブを中止する方法はありますか?

o---------x----o----o 
1:v1.2.3 J 2 3 

最初のコミットがマージされると、Jenkinsはそのブランチでそのコミットから新しいバージョンをリリースし始めます。その後、さらに2つのコミットが入ります.Jenkinsはバージョンをリリースしてリリースをタグ付けしますが、コミットは1から分岐するので失われます。

o----------o----------o 
1:v1.2.3 2:v1.2.4 3 
\ 
    \___ v1.2.4 + tag:v1.2.4 

タグはシステムに存在しますが、他の2つのコミットの場合、新しいバージョンは事実上存在しません。次に、v.1.2.3に基づいてタグを更新してタグ付けしようとすると、タグ1.2.4が存在し、プロセスは失敗します。

上記のプロセスを変更して、同じブランチで新しいコミットがサブミットされた後で最初のビルドを中止または中止する方法はありますか?

答えて

0

"git tag --force"を使用してタグを作成する必要があります。

-f, --force 
      Replace an existing tag with the given name (instead of failing) 

またはジェンキンス上Git PluginのGitPublisher機能を使用します。

関連する問題