Developer'sWorks
Tips

GetDownを用いた、最新モジュール配信

実行イメージ

運用時の主な流れについて

  1. 「サーバ公開モジュール」と「Lantureモジュール」を作成します。
  2. 「サーバ公開モジュール」をWebサーバ上に配置します。
  3. 「Lantureモジュール」を各クライアント端末に配置します。
  4. 各クライアントは「Lantureモジュール」をキックして、RunClientを実行します。

以降は、「サーバ公開モジュール」を更新することで、最新のモジュールを各クライアント端末で常に実行させられるようになります。

事前準備

事前準備として、GetDownモジュールの取得が必要となります。
GetDown(GitHub)

サーバ公開モジュールの作成

サーバ側のWebtribe/VisualFrameに、GetDownで取得するモジュールを配置します。
ここでは、以下のモジュール構成で作成をするようにします。

GetDown
│  getdown.txt
│
├─conf
│      common.wdg
│      RunClient.wdg
│      RunClientConstants.wdg
│
└─lib
        wedge-common-1.6.0.jar
        wedge-common-client-1.6.0.jar
        wedge-optional-1.6.0.jar
        wedge-rule-client-1.6.0.jar
        wedge-rule-common-1.6.0.jar
        wedge-run-client-1.6.0.jar
        wedge-run-common-1.6.0.jar

もし、camc.jarやuser_rule.jarを含める場合は、それらも追加をしてください。

このモジュールは、HTTP/HTTPSで取得できるパスに配置する必要があります。

getdown.txtの作成

getdown.txtには、ダウンロードに関する情報を記載します。

appbase = http://localhost:8080/webtribe/GetDown

code = lib/wedge-run-client-1.6.0.jar
code = lib/wedge-run-common-1.6.0.jar
code = lib/wedge-common-1.6.0.jar
code = lib/wedge-common-client-1.6.0.jar
code = lib/wedge-optional-1.6.0.jar
code = lib/wedge-rule-client-1.6.0.jar
code = lib/wedge-rule-common-1.6.0.jar

resource = conf/common.wdg
resource = conf/RunClient.wdg
resource = conf/RunClientConstants.wdg

class = jp.ne.mki.wedge.run.client.main.WedgeMain

appbaseには、GetDownモジュールを配置したURLを記載します。

codeには、Jarファイルを記載してください。
ユーザルールを格納する場合、それらのJarファイルも追加が必要です。

resource には、稼働時に読み込まれるコンフィグファイルや外部リソースを指定して下さい。

classは、RunClient起動クラスを記述する必要があります。

digistファイルの作成

digistファイルには、getdown.txtに記述したファイルのチェックサムが記述される。
このファイルをもって、各ファイルのバージョンチェックが行われる。

以下のコマンドを用いることで、パスが生成されます。

java -classpath getdown-1.7.1.jar com.threerings.getdown.tools.Digester [getdown.txtが配置されたパス]
(※) Javaコマンドが、パスに入っている前提

digist.txtとdigist2.txtというファイルが、getdown.txtと同じディレクトリに配置されます。
このファイルも、Webサーバで公開が必要となります。

このファイルは、新しいモジュールをリリースするたびに再生成が必要となります。

Webサーバへの配置

作成したサーバ公開モジュールを、Webサーバに配置します。
当ドキュメントでは、http://localhost:8080/webtribe/GetDown を想定しております。

digist.txtとdigist2.txtが増えて、以下のような構成となっているはずです。

GetDown
│  getdown.txt
│  getdown.txt
│  getdown.txt
│
├─conf
│      common.wdg
│      RunClient.wdg
│      RunClientConstants.wdg
│
└─lib
        wedge-common-1.6.0.jar
        wedge-common-client-1.6.0.jar
        wedge-optional-1.6.0.jar
        wedge-rule-client-1.6.0.jar
        wedge-rule-common-1.6.0.jar
        wedge-run-client-1.6.0.jar
        wedge-run-common-1.6.0.jar

Lantureモジュールの準備

JWSとは異なり、ブラウザから直接モジュールをキックすることはできません。 Lantureモジュールを各端末へ配布したのち、実行する必要があります。

Lantureモジュールは以下の構成となります。

GetDownLanture
│  getdown-1.7.1.jar
│  RunClient_GetDown.bat
│
└─module
          getdown.txt

RunClient_GetDown.bat には以下を記載して下さい。
java -jar getdown-1.7.1.jar module
(※) Javaコマンドが、パスに入っている前提

実行

各端末では、RunClient_GetDown.batを実行することにより、
最新のモジュールのチェックと必要であれば更新を行ったうえで、
RunClientが実行されるようになります。

実行時、モジュールは、GetDownLanture/module 配下にダウンロードされます。