さようなら play-evolutions

@tototoshi

Evolutions

使ってますか?
私は使いません!!

Evolutions のここがダメ

Evolutions のここがダメ

Evolutions のここがダメ

Evolutions のここがダメ

Anorm はいやだ。他のライブラリ使いたい!

scalikejdbc を使おう。

scalikejdbc-play-plugin は DBPlugin 非依存。

Evolutions は DBPlugin 依存だから DBPlugin を無効にできない。

...困った。

そこで

The agile database migration framework for Java

play-plugin を作りました。

play-flyway

build.sbt
libraryDependencies += "com.github.tototoshi" %% "play-flyway" % "1.0.0"
play.plugins
1000:com.github.tototoshi.play2.flyway.Plugin

Usage

playapp
├── app
│   ├── controllers
│   ├── models
│   └── views
├── conf
│   ├── application.conf
│   ├── db
│   │   └── migration
│   │       ├── default
│   │       │   ├── V1__Create_person_table.sql
│   │       │   └── V2__Add_people.sql
│   │       └── secondary
│   │           ├── V1__create_job_table.sql
│   │           └── V2__Add_job.sql
│   ├── play.plugins
│   └── routes

Usage

conf/db/migration/secondary/V1__create_job_table.sql
CREATE TABLE job (
    id integer primary key,
    name varchar(200) not null
);
        

Usage

Admin

喜びの声

やったね!!

まとめ

宣伝

#rpscala (隔週水曜)
https://groups.google.com/forum/#!forum/scalatokyo