feature: add initDB on migration
This commit is contained in:
@@ -65,7 +65,20 @@ class Migrations(directory: File, private val connection: Connection): Migration
|
|||||||
return this
|
return this
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun initDB() {
|
||||||
|
if (!initialized) {
|
||||||
|
File(this::class.java.getResource("/sql/migration/createHistoryShema.sql").toURI()).let {
|
||||||
|
connection.connect().sendQuery(it.readText()).join()
|
||||||
|
}
|
||||||
|
File(this::class.java.getResource("/sql/migration/createFunctionShema.sql").toURI()).let {
|
||||||
|
connection.connect().sendQuery(it.readText()).join()
|
||||||
|
}
|
||||||
|
initialized = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
override fun up(): Int {
|
override fun up(): Int {
|
||||||
|
initDB()
|
||||||
var count = 0
|
var count = 0
|
||||||
queries.forEach {
|
queries.forEach {
|
||||||
it.up()
|
it.up()
|
||||||
@@ -76,6 +89,7 @@ class Migrations(directory: File, private val connection: Connection): Migration
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun down(): Int {
|
override fun down(): Int {
|
||||||
|
initDB()
|
||||||
var count = 0
|
var count = 0
|
||||||
queries.forEach {
|
queries.forEach {
|
||||||
it.down()
|
it.down()
|
||||||
@@ -86,6 +100,7 @@ class Migrations(directory: File, private val connection: Connection): Migration
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun test(): Int {
|
override fun test(): Int {
|
||||||
|
initDB()
|
||||||
var count = 0
|
var count = 0
|
||||||
connection.inTransaction {
|
connection.inTransaction {
|
||||||
count += up()
|
count += up()
|
||||||
@@ -97,6 +112,7 @@ class Migrations(directory: File, private val connection: Connection): Migration
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun status(): Int {
|
override fun status(): Int {
|
||||||
|
initDB()
|
||||||
TODO("not implemented")
|
TODO("not implemented")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user