Ignore a leftover builds.maxConcurrent instead of refusing to start
The concurrency limit moved to executor.maxConcurrent without an alias, so the old key binds a scalar where a build definition belongs and failed the whole configuration. But that configuration is committed in the watched repository, and a repository's master is not always changeable right away — an installation must not be stuck on a key it is meant to forget. A `builds` entry that is not a mapping is now dropped with a warning (once per key, the config is loaded every poll cycle), naming executor.maxConcurrent for the key that moved. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
f5871a0442
commit
ca3e758cdc
@@ -92,6 +92,23 @@ class ConfigLoaderTest : FunSpec() {
|
||||
loader.load(dir).effectiveBuildDefinitions()["default"] shouldBe BuildDefinition(onPush = false)
|
||||
}
|
||||
|
||||
test("a leftover builds.maxConcurrent is ignored instead of failing the config") {
|
||||
val dir = Files.createTempDirectory("gittally-test")
|
||||
dir.resolve(".gittally.yml").toFile().writeText(
|
||||
"""
|
||||
builds:
|
||||
maxConcurrent: 1
|
||||
pitest:
|
||||
buildCommand: ./gradlew piTestFull
|
||||
""".trimIndent(),
|
||||
)
|
||||
|
||||
val config = loader.load(dir)
|
||||
|
||||
config.executor.maxConcurrent shouldBe 1
|
||||
config.buildDefinitions.keys shouldBe setOf("pitest")
|
||||
}
|
||||
|
||||
test("a branch may redefine the builds section for its own builds") {
|
||||
val dir = Files.createTempDirectory("gittally-test")
|
||||
dir.resolve(".gittally.yml").toFile().writeText(
|
||||
|
||||
Reference in New Issue
Block a user