iSP:テスト機と本番器を想定したバージョン管理

SubVersionのリポジトリ1つで開発機・本番器のソースを管理する方法を紹介します。

構成のイメージは下図で考えました。

流れとしては、
1.SubVersionのソースをロック(テスト機用のiSeriesプロジェクトを最新化)
2.ソースの改修
3.テスト機にソースをPUSH
4.テスト機でコンパイル/テスト実施
5.問題が無ければSubVersionにコミット(ロック解除)
6.本番機用のiSeriesプロジェクトを最新化
7.本番機にソースをPUSH

SubVersionはtruncのみの運用を想定しています。


iSeriesプロジェクトの作成から行います。まずはテスト機用です。
リポジトリからチェックアウトします。


デフォルトのまま。


iSeriesプロジェクトを選択します。


プロジェクト名は任意ですが、ここではAS001を入力。

「接続」のAS001はテスト機に向いている必要があります。
「関連ライブラリ」はテスト機のソースライブラリを指定します。


デフォルトのままで終了ボタン。


次に本番器用のiSeriesプロジェクトを作成します。
同じようにリポジトリからチェックアウトします。


デフォルトのまま。


AS002としました。


「接続」のAS002は本番機に向いている必要があります。
「関連ライブラリ」は本番機のソースライブラリを指定します。

以上で、テスト機用・本番器用のiSeriesプロジェクトが作成されました。

1.SubVersionのソースをロック
改修対象のソースにロックをかけます。
ロックをかけるとローカルのソースが古い場合最新化されます。


2.WDSCのiSeriesプロジェクトでソースの改修
ソースを改修した、と想定します。
(5250のSEUでソースを改修した場合「リモートオブジェクトのインポート」機能で
ソースを取り込むことも可能です。)

3.テスト機にソースをPUSH
ソースをテストにPUSH(送信)します。


4.テスト機でコンパイル/テスト実施
テスト機にて単体テストを実施します。

5.問題が無ければSubVersionにコミット(ロック解除)
テストに問題が無ければ、改修済みのソースをコミットします。
コミットするとロックが解除されます。


6.本番機用のiSeriesプロジェクトを最新化
本番機へソースをPUSHするために、ソースを最新化します。


7.本番機にソースをPUSH
最後に本番機へソースをPUSHします。


開発者とソース管理者の役割分担も可能です。

その場合開発者は、
1.SubVersionのソースをロック(テスト機用のiSeriesプロジェクトを最新化)から
5.問題が無ければSubVersionにコミット(ロック解除)までを行い、

ソース管理者は、
6.本番機用のiSeriesプロジェクトを最新化から
7.本番機にソースをPUSHまでを行えば良いのです。

また、お客様への納品等に使う場合はtagsフォルダを利用しても良いかもしれません。
運用次第ですね。

以上で終了です。

(記事を書いた日:2014/06/18)