LastaFluteでビルドデプロイするやり方

LastaFluteにおけるビルドデプロイのやり方です。 Maven の profile を使って切り替えることを前提としています。

Mavenでwarファイル作成

installとpackageの順序

継承や依存などの Maven の構成を把握していることを前提として...

LastaFluteのプロジェクト構成 - Mavenの構成

baseプロジェクトが、子プロジェクトを aggregate しているので...

xxx-base にて、mvn -e clean package

LastaEnv方式であれば、できあがるwarファイルは環境依存をしていませんので、実行時に環境を指定します。

e.g. 本番環境(production)としてアプリを実行 @Command
java -Dlasta.env=production -jar maihama-dockside.war

新しいデプロイ環境をつくる

新しいデプロイ環境 (profile) をつくる場合は、いくつかの設定ファイルを修正していく必要があります。

まずは、Mavenの構成、および、環境切り替えの構成を把握していることを前提として...

Mavenの構成
環境切り替えの構成

例えば、sea という名前の環境を新たに作るとします。

1. resources に環境依存propertiesを追加

src/main/resources に xxx_env_sea.properties を追加します。別の環境の xxx_env.properties をコピーして作るとよいです。 が、修正漏れだけには厳重注意しましょう。

プロパティ値だけでなく、コメントの中も新しい環境に合わせましょう。(環境名とか書いてあるかも)

2. lastafluteMap.dfprop にて env を追加

lastafluteMap.dfprop の environmentList に、seaを追加します。(PropertiesHTMLで比較ができるようにするため)

Docタスク - PropertiesHTML
e.g. lastafluteMap の environmentList に新しい環境を追加 @Command
    ...

    # keywords for environment properties, same as directory name
    ; environmentList = list:{ integration ; production ; sea }

    ...

Docタスク (manageの22番) を叩いて、PropertiesHTML に新しい環境の情報が追加されていることを確認しましょう。

3. ReplaceSchemaの環境設定を追加

これは、もし新しい環境のDBを ReplaceSchema 管理するときだけです。

ReplaceSchemaの環境切り替えの構成について把握していることを前提として...

ReplaceSchemaの環境切り替え
  1. DBFluteクライアント/dfprop/sea フォルダを作成
  2. そこに、databaseInfoMap+.dfprop と replaceSchemaMap+.dfprop を作成
  3. databaseInfoMap+.dfprop の設定
  4. replaceSchemaMap+.dfprop の設定
  5. DBFluteクライアント/__sea_manage.sh を作成 (環境変数をseaに)

__sea_manage.sh を叩けば、sea環境用の設定で ReplaceSchema できるようになります。

新しいWebプロジェクトつくる

TODO jflute