2012-01-25 8 views
1

アプリケーションが構築されているリビジョン番号を知るために、私たちがmyapp_2012-01-20_rev22123.earのようなGlassfishの名前に展開する耳を与えるために使用します。次に、Glassfishにログインして、Webインターフェイスにどのバージョンが配備されているかを確認するだけです(appnameはearファイルの名前なので)。このアプローチの欠点は、名前を更新するために手動で展開/再展開する必要があることです。デプロイされたアプリケーションのバージョンを知るための良い戦略はありますか?

私はアンデプロイ/展開プロセスをスクリプト化し、耳の各バージョンに異なる名前この再デプロイメントプロセスのスクリプティングにはあまり適していません。 Glassfish 2は、Glassfish 3が持つ「アプリケーションのリスト」の目標をサポートしていません.Application名を取得してそれをアンデプロイすることができました。

アプリケーションのどのバージョンが配備されているかを簡単に確認でき、上記の障害に悩まされない優れた戦略はありますか?

これは、既存のアプリケーション(現在のscmリビジョンを表示するためにjspページなどを追加するなど)を変更する必要がないことを意味していればよいはずですが、Mavenビルドスクリプトを変更しても問題ありません。

答えて

2

私は同様の問題に遭遇しましたが、最後にmaven-buildnumber-pluginを使用して簡単なサーブレットを作成してビルド情報を取得しました。詳細はthe blog post I madeにあります。

+0

私は実際に(1つのアプリのために)これを行いました。そのため、上記のjspのコメントがありました。これは、このソリューションが必要な各アプリケーションにサーブレットを追加することを意味します。これはちょっと面倒です。愚かなアイデアではなく、ただ私が好きなものではありません:) – oligofren

1

組み込みのGlassFish Serverのバージョニングを使用して、デプロイ時にバージョン番号を割り当てるのはなぜですか?これにより、以前のバージョンにロールバックすることもできます。たとえば:2012-01-20_rev22123 myApplication.earと

ここではアプリケーションのバージョンに関する詳細情報はあり::このことができます
http://docs.oracle.com/cd/E18930_01/html/821-2417/gihzx.html#gkhhv

ホープ

のasadminは--name MyApplicationを展開します。

+0

hmm ... glassfishで動作しないようです。2.アプリケーションがすでにコンテキストパスを使用しているというエラーメッセージが表示されます。私は以前のバージョンを無効にしていました。 3を試してみます。 – oligofren

+0

申し訳ありませんが、これはGlassFish 3の機能です。申し訳ありませんが、私はバージョンとしてGlassFish 2に気づきませんでした。 –

+0

心配はいりません - 私はこのソリューションが気に入っています.GF3でテストした後、アップグレードのパスが明確かどうかを確認した後に、このソリューションを利用する可能性があります。 – oligofren

関連する問題