in server/src/main/kotlin/com/jetbrains/teamcity/plugins/unrealengine/server/buildgraph/BuildGraphSettingsInitializer.kt [13:41]
fun initializeBuildSettings(
originalBuild: SBuild,
badges: Collection<Badge>,
): BuildGraphBuildSettings {
val originalRunnerParameters =
originalBuild.buildPromotion
.activeRunners()
.singleOrNull()
?.parameters
.let {
ensureNotNull(it, "Unable to get runner parameters (there should be exactly one active UnrealEngine runner)")
}
val modeSettings = BuildGraphModeParameter.parse(originalRunnerParameters) as? BuildGraphMode.Distributed
val badgePostingConfig =
if (modeSettings?.metadataServerUrl == null) {
BadgePostingConfig.Disabled
} else {
ensureNotNull(modeSettings.metadataServerUrl, "Metadata Server URL not set")
.let {
BadgePostingConfig.Enabled(it, badges)
}
}
return BuildGraphBuildSettings(badgePostingConfig).also {
originalBuild.addBuildGraphBuildSettings(it)
}
}