Amon2アプリをMinillaで管理する時のハマりどころ
amon2-setup.pl --flavor=Large MyApp
で作成したLarge flavorのAmon2アプリのリリース管理にMinillaを使ってみようとしらうまくいかなかったので試行錯誤してみた。
まずはMinillaに最適化
minil migrate
Minillaで管理するのに必要なファイルの作成や.gitignoreに追加等してくれる。
必要なディレクトリに空ファイルを作成
Large flavorのアプリで言うと db ディレクトリが必要だが、amon2-setup.plで作成した状態だと、.gitignoreは下記の状態になっている。
db/.gitignore
*
!.gitignore
これを下記のように修正して、db/gitkeep という空ファイルを新規作成する(gitkeepというファイル名でなくてもいい)
db/.gitignore
*.db
!.gitignore
touch db/gitkeep
当然、git add & git commitは忘れずに。こうする事で minil test
する時にディレクトリが作成され、ログファイルやdbファイルが無い!というようなエラーにならない。
ハマりどころ
注意点は ドット で始まるファイル(例えば.gitkeep)ではダメだということ。 理由はドットで始まるファイルしか無いディレクトリはminil test時に.build内に作成されないため。proveコマンドだとテスト通るけどMinillaのtestだと通らない。
他にもログファイルの保存用ディレクトリ等にも同じように対策することが出来る。ディレクトリが必要だけど、ファイル自体は管理しない時にはこのhackが有効かも。
雑感
Changesを使ってリリースログ書いたり、git tagをつけてくれたり、githubにpushしたりを自動化出来るので便利。問題はMinillaの使い方として合っているのか?ってこと。どうなんだろ?
追記2016-6-7
ドットから始まるファイルを含ませたい場合はminil.tomlで設定可能っぽい
Minilla - CPAN モジュールオーサリングツール - perldoc.jp
FileGatherer.include_dotfiles
[FileGatherer]
include_dotfiles = false
デフォルトでは、ドットから始まるファイルは、ディストリビューションに含まれません。 この設定はファイルとディレクトリの両方に及びます。
-
前の記事
Amon2::Plugin::LogHandlerってモジュール書いてみた 2016.03.29
-
次の記事
MAMPな環境のmacにDBD::mysqlをインストール 2016.05.28