From 3a471549695697b740daacbbb3fc52e96b8d7b38 Mon Sep 17 00:00:00 2001 From: jay-tux Date: Tue, 29 Apr 2025 17:42:36 +0200 Subject: [PATCH] Migration --- composeApp/build.gradle.kts | 1 + .../kotlin/com/jaytux/grader/data/Database.kt | 11 ++++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/composeApp/build.gradle.kts b/composeApp/build.gradle.kts index 76c6c9e..ca8648c 100644 --- a/composeApp/build.gradle.kts +++ b/composeApp/build.gradle.kts @@ -31,6 +31,7 @@ kotlin { implementation(libs.exposed.core) implementation(libs.exposed.jdbc) implementation(libs.exposed.dao) + implementation(libs.exposed.migration) implementation(libs.exposed.kotlin.datetime) implementation(libs.sqlite) implementation(libs.material3.desktop) diff --git a/composeApp/src/desktopMain/kotlin/com/jaytux/grader/data/Database.kt b/composeApp/src/desktopMain/kotlin/com/jaytux/grader/data/Database.kt index d848672..b3bbecc 100644 --- a/composeApp/src/desktopMain/kotlin/com/jaytux/grader/data/Database.kt +++ b/composeApp/src/desktopMain/kotlin/com/jaytux/grader/data/Database.kt @@ -1,5 +1,6 @@ package com.jaytux.grader.data +import MigrationUtils import org.jetbrains.exposed.sql.Database import org.jetbrains.exposed.sql.SchemaUtils import org.jetbrains.exposed.sql.transactions.transaction @@ -17,15 +18,19 @@ object Database { StudentToGroupEvaluation ) - val addMissing = SchemaUtils.addMissingColumnsStatements( + val migrate = MigrationUtils.statementsRequiredForDatabaseMigration( Courses, Editions, Groups, Students, GroupStudents, EditionStudents, GroupAssignments, SoloAssignments, GroupAssignmentCriteria, SoloAssignmentCriteria, GroupFeedbacks, IndividualFeedbacks, SoloFeedbacks, PeerEvaluations, PeerEvaluationContents, StudentToStudentEvaluation, - StudentToGroupEvaluation + StudentToGroupEvaluation, + withLogs = true ) - addMissing.forEach { exec(it) } + + println(" --- Migration --- ") + migrate.forEach { println(it); exec(it) } + println(" --- End migration --- ") } actual }