Skip to content

Commit a3bf0c2

Browse files
committed
Simplify build number detection
1 parent e2fdf53 commit a3bf0c2

File tree

2 files changed

+22
-10
lines changed

2 files changed

+22
-10
lines changed

build-plugin/src/build/RootSettingsExtension.kt

+3-10
Original file line numberDiff line numberDiff line change
@@ -175,17 +175,10 @@ class RootSettingsExtension(
175175

176176
val defaultBuildNumber = "$baseVersion.$buildCounter$devAddition"
177177

178-
return if (!buildNumber.matches(BUILD_NUMBER_REGEX)) {
179-
val versionFile = artifactsDir.resolve(versionFileName)
180-
if (versionFile.exists()) {
181-
val lines = versionFile.readLines()
182-
assert(lines.isNotEmpty()) { "There should be at least one line in VERSION file" }
183-
lines.first().trim()
184-
} else {
185-
defaultBuildNumber
186-
}
187-
} else {
178+
return if (buildNumber.matches(BUILD_NUMBER_REGEX)) {
188179
buildNumber
180+
} else {
181+
defaultBuildNumber
189182
}
190183
}
191184

teamcityBuildNumber.gradle.kts

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
2+
3+
tasks.register("detectVersionsForTC") {
4+
outputs.upToDateWhen { false }
5+
6+
doLast {
7+
println("##teamcity[buildNumber '${ detectVersion() }']")
8+
}
9+
}
10+
11+
private fun detectVersion(): String {
12+
val baseVersion = project.property("baseVersion") as String
13+
val buildCounter = project.property("build.counter") as String
14+
val devCounter = project.findProperty("build.devCounter") as? String
15+
val isOnProtectedBranch = (project.property("build.branch") as String) == "master"
16+
val devAddition = if (isOnProtectedBranch && devCounter == null) "" else ".dev${devCounter ?: "1"}"
17+
18+
return "$baseVersion.$buildCounter$devAddition"
19+
}

0 commit comments

Comments
 (0)