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)
構成のイメージは下図で考えました。
流れとしては、
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)