fun withLicense()

in plugin-unity-agent/src/main/kotlin/jetbrains/buildServer/unity/license/UnityBuildStepScopeLicenseActivator.kt [61:75]


    fun withLicense(
        unityEnvironment: UnityEnvironment,
        commands: () -> Sequence<CommandExecution>,
    ) = sequence {
        if (!runnerContext.buildStepLicenseScope()) {
            yieldAll(commands())
            return@sequence
        }

        yieldAll(activateLicense(unityEnvironment))
        yieldAll(
            commands().map { it.returnLicenseOnInterruption(unityEnvironment) },
        )
        yieldAll(returnLicense(unityEnvironment))
    }