Skip to content

Commit 5f7c46d

Browse files
configure cross Flink version build
1 parent cbdf088 commit 5f7c46d

File tree

4 files changed

+43
-3
lines changed

4 files changed

+43
-3
lines changed

build.sbt

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
import sbtrelease.ReleaseStateTransformations._
2+
import ReleaseProcess._
23

34
Global / onChangedBuildSource := ReloadOnSourceChanges
45
Global / excludeLintKeys := Set(git.useGitDescribe)
56

67
lazy val rootScalaVersion = "3.2.2"
7-
lazy val flinkVersion = "1.16.1"
8+
lazy val flinkVersion = System.getProperty("flinkVersion", "1.16.2")
89

910
lazy val root = (project in file("."))
11+
.settings(ReleaseProcess.releaseSettings(flinkVersion): _*)
1012
.settings(
1113
name := "flink-scala-api",
1214
scalaVersion := rootScalaVersion,
@@ -100,7 +102,12 @@ lazy val root = (project in file("."))
100102
)
101103
else Seq.empty[ReleaseStep]),
102104
releaseProcess ++= (if (sys.env.contains("RELEASE_PUBLISH"))
103-
Seq[ReleaseStep](inquireVersions, setNextVersion, commitNextVersion, pushChanges)
105+
Seq[ReleaseStep](
106+
inquireVersions,
107+
setNextVersion,
108+
commitNextVersion,
109+
pushChanges
110+
)
104111
else Seq.empty[ReleaseStep]),
105112
mdocIn := new File("README.md")
106113
)

project/release.scala

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import sbtrelease.ReleasePlugin._
2+
import sbtrelease.Version
3+
import sbtrelease.versionFormatError
4+
import sbt.AutoPlugin
5+
import sbt._
6+
import Keys._
7+
8+
object ReleaseProcess extends AutoPlugin {
9+
import sbtrelease.ReleasePlugin.autoImport._
10+
11+
def cutFlinkPrefix(v: String): String =
12+
if (v.contains("_")) v.split("_").tail.mkString else v
13+
14+
def releaseSettings(flinkVersion: String): Seq[Setting[_]] = Seq(
15+
releaseVersion := { ver =>
16+
Version(cutFlinkPrefix(ver))
17+
.map(_.withoutQualifier.string)
18+
.map(v => flinkVersion + "_" + v)
19+
.getOrElse(versionFormatError(ver))
20+
},
21+
releaseNextVersion := { ver =>
22+
Version(cutFlinkPrefix(ver))
23+
.map(_.bump(releaseVersionBump.value).asSnapshot.string)
24+
.getOrElse(versionFormatError(ver))
25+
}
26+
)
27+
}

release.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#!/bin/bash
2+
set -ex
3+
RELEASE_VERSION_BUMP=true sbt -DflinkVersion=1.15.4 test 'release with-defaults'
4+
RELEASE_VERSION_BUMP=true sbt -DflinkVersion=1.16.2 test 'release with-defaults'
5+
RELEASE_VERSION_BUMP=true sbt -DflinkVersion=1.17.1 test 'release with-defaults'
6+
wait

version.sbt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
ThisBuild / version := "1.16.1.4-SNAPSHOT"
1+
ThisBuild / version := "1.0.0-SNAPSHOT"

0 commit comments

Comments
 (0)