wgetでintra-martのテナントの初期設定を実施する

# 概要

intra-martの初回起動時に表示される以下の画面の設定をwgetでやる方法を記載します。
http://www.intra-mart.jp/download/product/iap/setup/iap_setup_guide/texts/tenant/index.html

CentOS7上で動作確認しております。
各アプリケーションのバージョンは以下の通りです。


| application | version       | 説明                                     |
|-------------|---------------|------------------------------------------|
|Resin Pro    | 4.0.48        | intra-martが配布しているものを利用しています|
|Oracle JDK   | 1.8.0 u91     |                                          |
|intra-mart   | 8.0.11(Karen) |                                          |

## POSTデータ

`http://<HOST>:<PORT>/<CONTEXT_PATH>/system/setttings/tenant/register`が登録用のアドレスで、
そのURLに対して以下のデータをPOSTで送信すれば情報の登録ができました。
送信するデータに関しては、WARファイル作成時に選択したモジュールによって変わるのであくまで一例です。

パラメータの詳細に関しては以下を参照ください。
http://www.intra-mart.jp/download/product/iap/setup/iap_setup_guide/texts/tenant/index.html

|parameter                    |description                       |今回の設定値                      |
|-----------------------------|----------------------------------|----------------------------------|
|systemManagerCd              |システム管理者のユーザコード      |system                            |
|systemManagerPassword        |システム管理者のパスワード        |manager                           |
|systemManagerPasswordConfirm |システム管理者のパスワード（確認）|manager                           |
|systemManagerLocale          |システム管理者のロケール          |ja                                |
|tenantId                     |テナントID                        |default                           |
|tenantLocale                 |デフォルトロケール                |ja                                |
|tenantTimeZone               |タイムゾーン                      |Asia%2FTokyo                      |
|accountLicenseInfinity       |アカウントライセンス数            |infinity                          |
|tenantResourceRefName        |リソース参照名                    |java%3Acomp%2Fenv%2Fjdbc%2Fdefault|
|im_storage_path              |ストレージパス                    |                                  |
|im_base_url                  |ベースURL                         |                                  |
|globalnavLimitation          |グローバルナビ最大表示数          |                                  |
|tenantManagerCd              |テナント管理者のユーザコード      |default                           |
|tenantManagerPassword        |テナント管理者のパスワード        |password                          |
|tenantManagerPasswordConfirm |テナント管理者のパスワード（確認）|password                          |
|im_login_session_behavior    |ログインセッション管理            |ERROR                             |

## 登録用のwgetコマンド

以下、コマンドです。
一回目のwget時にcookieを取得しておき、
二回目のwgetで同じcookieの情報を利用しPOSTしているという流れです。

```bash
wget \
     --keep-session-cookies \
     --save-cookies cookies.txt \
     http://<HOST>:<PORT>/<CONTEXT_PATH>/system/login

wget \
     --load-cookies cookies.txt \
     --post-data 'systemManagerCd=system&systemManagerPassword=manager&systemManagerPasswordConfirm=manager&systemManagerLocale=ja&tenantId=default&tenantLocale=ja&tenantTimeZone=Asia%2FTokyo&accountLicenseInfinity=infinity&tenantResourceRefName=java%3Acomp%2Fenv%2Fjdbc%2Fdefault&im_storage_path=&im_base_url=&globalnavLimitation=&tenantManagerCd=default&tenantManagerPassword=password&tenantManagerPasswordConfirm=password&im_login_session_behavior=ERROR' \
     http://<HOST>:<PORT>/<CONTEXT_PATH>/system/settings/tenant/register
```

# 最後に

registerのレスポンスとして、JSON形式でセットアップの結果が返ってくるようです。
エラーが発生した場合はこのJSONの中にエラーメッセージも含まれているので、
環境構築を自動化したいときなど便利かもしれません。