LoginSignup
11
9

More than 5 years have passed since last update.

Clone Workspace SCM Plugin

Posted at

概要

このプラグインは、あるジョブを実行したワークスペースの内容を、後続のジョブに複製して渡すというプラグイン。
例えば、ジョブの実行時間が掛かってきたときに、SCM からソースをチェックアウトして、単体テストと結合テストそれぞれのジョブに、そのチェックアウトしたソースを渡してテストするとか。
こうすることによって、単体テストと結合テストで、ジョブは違うが同じバージョンのソースでテストを出来るというメリットがある。
他にも色々使い道はありそうだけど。

では、早速使い方を。

インストール

Jenkis のプラグイン管理から、以下のプラグインをインストール。

CWSP1.png

インストールが無事に終わったら、早速ジョブを作ってみる。

親ジョブの定義

ジョブのいっちゃん下の「ビルド後の処理の追加」を選んでみると、「Archive for Clone Workspace SCM」が選択できるようになる。

CWSP2.png

これを選ぶと、以下のような画面が表示される。

CWSP3.png

内容は...多分こんな感じだと思う。

  • Files to include in cloned workspace  複製するワークスペースに含めるファイル
  • Files to exclude from cloned workspace  複製するワークスペースから除外するファイル
  • Criteria for build to be archived   複製する条件
    • Most Recent Completed Build  ビルドが完了した場合(成功・失敗を問わない)
    • Most Recent Not Failed Build  ビルドが失敗ではない場合(ビルド結果が黄)
    • Most Recent Successful Build  ビルドが成功した場合(ビルド結果が青)
  • Archive method  複製を方法
    • Gzipped tar
    • Zipped
  • Override Default Ant Excludes  ワークスペースをコピーするとき、内部的にAntのFileSetを使っていて.svnディレクトリなどがデフォルトで除外されるようになっている。svnディレクトリなどをワークスペースのアーカイブに含めたい場合

include と exclude は、共に何も指定しなければ、そのビルドで実行したワークスペースの全てのファイルが複製される。

子ジョブの定義

で、次にこの複製されたワークスペースを受け取る側のジョブを定義する。

ジョブの設定を見てみると、ソース管理システムの欄に「Clone Workspace」が追加されて、選択できるようになっている。

CWSP4.png

  • Parent Project  ワークスペースに使う親のジョブを選択(ここでは、ビルドの後処理に Archive for Clone Workspace SCM が指定されているものが自動で候補になる)
    • Criteria for parent build     親のジョブを使う条件
    • Most Recent Completed Build  ビルドが完了した場合(成功・失敗を問わない)
    • Most Recent Not Failed Build  ビルドが失敗ではない場合(ビルド結果が黄)
    • Most Recent Successful Build  ビルドが成功した場合(ビルド結果が青)
11
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
9