fun setupDistributedBuild()

in server/src/main/kotlin/com/jetbrains/teamcity/plugins/unrealengine/server/buildgraph/BuildGraphDistributedSetupOrchestrator.kt [21:41]


    fun setupDistributedBuild(setupBuild: SRunningBuild) {
        val (validatedSetupBuild, originalBuild) = validator.validate(setupBuild)
        val buildGraph = definitionLoader.loadFrom(validatedSetupBuild)

        val settings = settingsInitializer.initializeBuildSettings(originalBuild, buildGraph.badges)
        val distributedBuild =
            buildCreator.create(originalBuild, buildGraph).also {
                it.builds.onEach { build -> build.persist() }
            }

        if (settings.badgePosting is BadgePostingConfig.Enabled) {
            buildStateTracker.track(originalBuild, distributedBuild)
        }

        dependencyConnector.connect(validatedSetupBuild, distributedBuild, originalBuild)

        buildQueue.addToQueue(
            distributedBuild.builds.associateWith { null },
            originalBuild.buildPromotion.asBuildPromotionEx().asTriggeredBy(),
        )
    }