[Seasar-user:20785] Re: 【ご相談】S2Containerを利用した開発中の運用について

Go Tanaka [E-MAIL ADDRESS DELETED]
2011年 6月 3日 (金) 09:13:30 JST


高木さん

tan_go238です。

ビルド時にテストが走るのであればS2Containerを初期化できるかみたいなテストケースを書くとかはどうでしょうか。

無理矢理に起動したいのであれば、includeタグの中にconditionが書けて、そこからJavaのメソッドも呼べるので色々やり方はありそうです。(std-custumizer.diconあたりでそんな事をやっていた記憶があります)

あとSmartDeployにしておくと各開発者はそんなにdiconファイルを書くという作業はないと思うのですがそのへんも見直してみたほうが良いかもしれませんね。

Sent from my iPhone

On 2011/06/03, at 4:06, "[E-MAIL ADDRESS DELETED]"
<[E-MAIL ADDRESS DELETED]> wrote:

> 石川様
>
> お世話になっております。高木です。
>
> ご回答ありがとうございます。
>
>> 問題1,2いずれもサーバへのデプロイをすべて人の手で行っていることがそもそもの原因と考えます。
>> (ビルドも各自が行っているように読み取れました)
>> ビルドはantやmaven、サーバへのデプロイはシェルスクリプトなりで自動化すると、
>> こういった凡ミスを減らすことができます。
>>
>> というか、開発時も共用のサーバを使っているように読み取れましたが、
>> 開発時は通常各自ローカルにTomcatとかを立ち上げて開発するものなので、
>> Aさんがサーバに置き忘れたとしても、Bさんの手が止まることはないです。
>> (ただしsvnに動かなくなるソースをコミットしたら死刑です(うちの会社ではw))
>
> javaのビルドは変更管理サーバを構えており、そこで一括ビルドをしています。
> サーバーへ配信するのは、自動なのですが、ツールを通して指示をしないといけません。(指示はcvsのプラグインを使っています。)
>
> ビルドが通っている、且つ、移行指示をしたソースのみがサーバーへ配信されます。
>
>
>> ・ローカルでの開発
> →実施しています。tomcatではなく、was-ce使ってます。
>
>> ・svnやgitでのソース管理
> →cvsでソース管理を実施。
>
>> ・antやmavenでのビルド自動化
> →変更管理サーバで、antで一括ビルド
>
>> ・シェルスクリプトでのデプロイ自動化
> →サーバへのデプロイも自動化済み
>
> 開発の周辺の情報を説明できておらず申し訳ありません。
>
> ご指摘ふまえますと、ローカル開発での仕方に問題がありそうな気がします。。。
>
>
>
>
>
>> -----Original Message-----
>> From: Yu Ishikawa
>> Sent: Fri, Jun 3 2011 03:29:44 JST
>> To: [E-MAIL ADDRESS DELETED]
>> Subject: [Seasar-user:20783] Re: 【ご相談】S2Containerを利用した開発中の運用について
>>
>> 高木さん
>>
>> こんばんは、石川と申します。
>>
>> 問題1,2いずれもサーバへのデプロイをすべて人の手で行っていることがそもそもの原因と考えます。
>> (ビルドも各自が行っているように読み取れました)
>> ビルドはantやmaven、サーバへのデプロイはシェルスクリプトなりで自動化すると、
>> こういった凡ミスを減らすことができます。
>>
>> というか、開発時も共用のサーバを使っているように読み取れましたが、
>> 開発時は通常各自ローカルにTomcatとかを立ち上げて開発するものなので、
>> Aさんがサーバに置き忘れたとしても、Bさんの手が止まることはないです。
>> (ただしsvnに動かなくなるソースをコミットしたら死刑です(うちの会社ではw))
>>
>>
>> まとまりがありませんが、是非やってみていただきたいことは
>> ・ローカルでの開発
>> ・svnやgitでのソース管理
>> ・antやmavenでのビルド自動化
>> ・シェルスクリプトでのデプロイ自動化
>>
>> これがすべてできれば、Seasar2の開発効率の良さを実感できると思います。
>>
>>
>>
>> 2011年6月3日1:25  <[E-MAIL ADDRESS DELETED]>:
>>> お世話になっております。高木と申します。
>>>
>>> ・ご相談
>>> 現在、S2Containerを利用して、開発を進めています。
>>> そこで、開発中の運用で困っており相談させていただきたいです。
>>> 初歩的なご相談かもしれませんが、いろいろ考え、調べまわっても回避できそうな手段が見当たらずMLを投げさせていただきました。
>>>
>>> DI対象クラスを定義しているdiconファイルがありますが、複数人による開発で問題があります。
>>>
>>> 前提
>>> サーバ環境でアプリケーションサーバが起動する際にS2Containerを初回起動させています。
>>> 複数人がそれぞれのdiconファイルを作成し、そのdiconファイルにDI対象のクラスを定義しています。
>>>
>>>
>>> そこで、2点、問題があります。
>>>
>>> 例えば、AさんがA.diconファイルを担当し、そのdiconファイルにa.classを定義しています。
>>>
>>> diconファイルの構成として
>>> 親.diconファイルにA.dicon、B.dicon・・・etcをインクルードしています。
>>>
>>> 問題1
>>> 開発ではサーバ再起動(アプリケーションサーバも同時)を一定の間隔でいれています。
>>>
>>> そこで、AさんがそもそもA.diconファイルをサーバに置き忘れ、S2Container自体が立ち上がらない。
>>> そのため、Bさんや他のメンバーの開発が一旦STOPする。
>>>
>>> →現時点では、もし対象diconファイルがない場合、空のdiconファイルを挿し込むとった方法は取れないか?と考えています。もしくは運用回避しかないのか?とも思っています。
>>>
>>>
>>> 問題2
>>> A.diconファイルはあるものの、その中のclassファイルをサーバへ配置していなかった。
>>> そのため、問題1と同様にS2Container自体が立ち上がらない。
>>> (HOT deploy以前の問題です。)
>>>
>>> →この点はルールなどの回避策しかないのか?といった状態です。
>>>
>>> もし、回避策等アイディアをお持ちの方はいましたらご教示いただけないでしょうか?
>>> お手数おかけしますが、よろしくお願い致します。
>>>
>>> 以上です。
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Seasar-user mailing list
>>> [E-MAIL ADDRESS DELETED]
>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>>
>> _______________________________________________
>> Seasar-user mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/seasar-user
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user


Seasar-user メーリングリストの案内