aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/byspel/Migrations.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/byspel/Migrations.scala')
-rw-r--r--src/main/scala/byspel/Migrations.scala21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/main/scala/byspel/Migrations.scala b/src/main/scala/byspel/Migrations.scala
new file mode 100644
index 0000000..b2129de
--- /dev/null
+++ b/src/main/scala/byspel/Migrations.scala
@@ -0,0 +1,21 @@
+package byspel
+import byspel.app.DatabaseApi
+import java.io.File
+
+trait Migrations extends app.DatabaseApp { self: DatabaseApi =>
+
+ override def start(): Unit = {
+ super.start()
+ log("running migrations")
+ import sys.process._
+ val cmd = Process(
+ s"sqitch deploy db:sqlite:${config.database.file}",
+ Some(new File(config.database.sqitch_base))
+ )
+ if (cmd.run.exitValue() != 0) {
+ log("fatal: applying database migrations failed")
+ sys.exit(1)
+ }
+ }
+
+}