summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJason Penilla <[email protected]>2024-04-24 10:48:00 -0700
committerJason Penilla <[email protected]>2024-04-24 10:48:00 -0700
commite832328b7ebc1c4e9aed6b3bb5613e01fa3c8aa0 (patch)
treec600e7f3a72a16200c673105021f4b2ab1ba29ad
parent4e654f2a3aab60e13ca132d68840155865f738ad (diff)
downloadPaper-e832328b7ebc1c4e9aed6b3bb5613e01fa3c8aa0.tar.gz
Paper-e832328b7ebc1c4e9aed6b3bb5613e01fa3c8aa0.zip
Check for existing am session before running continueServerUpdate
-rw-r--r--build.gradle.kts11
1 files changed, 10 insertions, 1 deletions
diff --git a/build.gradle.kts b/build.gradle.kts
index b2230193a4..48ed69d962 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -1,3 +1,4 @@
+import io.papermc.paperweight.PaperweightException
import io.papermc.paperweight.tasks.BaseTask
import io.papermc.paperweight.util.*
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
@@ -204,6 +205,14 @@ abstract class RebasePatches : BaseTask() {
@TaskAction
fun run() {
+ val patchedDirPath = projectDir.path.resolve(patchedDir.get())
+ if (patchedDirPath.isDirectory()) {
+ val status = Git(patchedDirPath)("status").getText()
+ if (status.contains("You are in the middle of an am session.")) {
+ throw PaperweightException("Cannot continue update when $patchedDirPath is in the middle of an am session.")
+ }
+ }
+
val unapplied = unapplied()
for (patch in unapplied) {
patch.copyTo(appliedLoc(patch))
@@ -266,7 +275,7 @@ abstract class RebasePatches : BaseTask() {
}
// Delete the build file before resetting the AM session in case it has compilation errors
- projectDir.path.resolve(patchedDir.get()).resolve("build.gradle.kts").deleteIfExists()
+ patchedDirPath.resolve("build.gradle.kts").deleteIfExists()
// Apply again to reset the am session (so it ends on the failed patch, to allow us to rebuild after fixing it)
val apply2 = ProcessBuilder()
.directory(projectDir.path)