diff --git a/build.sbt b/build.sbt index eab008f5b..698408ad7 100644 --- a/build.sbt +++ b/build.sbt @@ -449,23 +449,26 @@ lazy val setSonatypeReleaseSettings = ReleaseStep(action = oldState => { } }) -lazy val setDockerReleaseSettings = ReleaseStep(action = oldState => { +lazy val createSetDockerUpdateLatestCommand = ReleaseStep(action = state => { // dockerUpdateLatest is set to true if the version is not a SNAPSHOT - val extracted = Project.extract(oldState) - val v = extracted.get(Keys.version) - val snap = v.endsWith("SNAPSHOT") - if (!snap) { - extracted - .appendWithSession(Seq(dockerUpdateLatest in api := true, dockerUpdateLatest in portal := true), oldState) - } else oldState + val snap = Project.extract(state).get(Keys.version).endsWith("SNAPSHOT") + + val setDockerUpdateLatest = if (!snap) + Command.command("setDockerUpdateLatest") { + "set every dockerUpdateLatest := true" :: + _ + } + else + Command.command("setDockerUpdateLatest") { + "" :: + _ + } + + state.copy(definedCommands = state.definedCommands :+ setDockerUpdateLatest) }) -lazy val initReleaseStage = Seq[ReleaseStep]( - releaseStepCommand(";project root"), // use version.sbt file from root - inquireVersions, // have a developer confirm versions - setReleaseVersion, - setDockerReleaseSettings, - setSonatypeReleaseSettings +lazy val sonatypePublishStage = Seq[ReleaseStep]( + releaseStepCommandAndRemaining(";sonatypeReleaseCommand") ) lazy val dockerPublishStage = Seq[ReleaseStep]( @@ -473,8 +476,13 @@ lazy val dockerPublishStage = Seq[ReleaseStep]( releaseStepCommandAndRemaining(";project portal;docker:publish") ) -lazy val sonatypePublishStage = Seq[ReleaseStep]( - releaseStepCommandAndRemaining(";sonatypeReleaseCommand") + +lazy val initReleaseStage = Seq[ReleaseStep]( + inquireVersions, // have a developer confirm versions + setReleaseVersion, + createSetDockerUpdateLatestCommand, + releaseStepCommandAndRemaining(";setDockerUpdateLatest"), + setSonatypeReleaseSettings ) lazy val finalReleaseStage = Seq[ReleaseStep] ( diff --git a/project/plugins.sbt b/project/plugins.sbt index 154794623..6cce8d0b7 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -14,7 +14,7 @@ addSbtPlugin("io.github.davidmweber" % "flyway-sbt" % "5.0.0") addSbtPlugin("org.wartremover" % "sbt-wartremover" % "2.3.7") -addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.3.5") +addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.3.23") addSbtPlugin("com.tapad" % "sbt-docker-compose" % "1.0.34")