LastaFluteでビルドデプロイするやり方
LastaFluteにおけるビルドデプロイのやり方です。 Maven の profile を使って切り替えることを前提としています。
Mavenでwarファイル作成
installとpackageの順序
継承や依存などの 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の構成、および、環境切り替えの構成を把握していることを前提として...
例えば、sea という名前の環境を新たに作るとします。
1. resources に環境依存propertiesを追加
src/main/resources に xxx_env_sea.properties を追加します。別の環境の xxx_env.properties をコピーして作るとよいです。 が、修正漏れだけには厳重注意しましょう。
プロパティ値だけでなく、コメントの中も新しい環境に合わせましょう。(環境名とか書いてあるかも)
2. lastafluteMap.dfprop にて env を追加
lastafluteMap.dfprop の environmentList に、seaを追加します。(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の環境切り替えの構成について把握していることを前提として...
- DBFluteクライアント/dfprop/sea フォルダを作成
- そこに、databaseInfoMap+.dfprop と replaceSchemaMap+.dfprop を作成
- databaseInfoMap+.dfprop の設定
- replaceSchemaMap+.dfprop の設定
- DBFluteクライアント/__sea_manage.sh を作成 (環境変数をseaに)
__sea_manage.sh を叩けば、sea環境用の設定で ReplaceSchema できるようになります。
新しいWebプロジェクトつくる
TODO jflute