IJI-2303: Add compatiblePluginsToIgnore property in BuildOptions to ignore compatible plugins during build.

(cherry picked from commit 49f1ee93d44d28d73271d0c6699ea969abca35c3)

IJ-CR-146838

GitOrigin-RevId: e4a29fa9185ba2d3aae6717c9104f045b5ef1ff8
This commit is contained in:
Ivan.Povetkin
2024-10-16 14:44:09 +00:00
committed by intellij-monorepo-bot
parent bd091351af
commit c03cb76853
2 changed files with 9 additions and 3 deletions
@@ -480,6 +480,11 @@ data class BuildOptions(
var isNightlyBuild: Boolean = getBooleanProperty(INTELLIJ_BUILD_IS_NIGHTLY, (buildNumber?.count { it == '.' } ?: 1) <= 1)
/**
* Specifies an additional list of compatible plugin names which should not be built, see [ProductModulesLayout.compatiblePluginsToIgnore]
*/
var compatiblePluginsToIgnore: Set<String> = getSetProperty("intellij.build.compatible.plugins.to.ignore")
/**
* If `false`, [org.jetbrains.intellij.build.impl.projectStructureMapping.buildJarContentReport]
* won't be affected by [PluginBundlingRestrictions.includeInDistribution]
@@ -9,13 +9,10 @@ import com.intellij.util.containers.with
import io.opentelemetry.api.common.AttributeKey
import io.opentelemetry.api.common.Attributes
import io.opentelemetry.api.trace.Span
import jetbrains.buildServer.messages.serviceMessages.MessageWithAttributes
import jetbrains.buildServer.messages.serviceMessages.ServiceMessageTypes
import kotlinx.collections.immutable.PersistentList
import kotlinx.collections.immutable.persistentListOf
import kotlinx.coroutines.*
import org.jetbrains.intellij.build.*
import org.jetbrains.intellij.build.dependencies.TeamCityHelper
import org.jetbrains.intellij.build.io.runProcess
import org.jetbrains.intellij.build.jarCache.JarCacheManager
import org.jetbrains.intellij.build.jarCache.LocalDiskJarCacheManager
@@ -113,6 +110,10 @@ class BuildContextImpl internal constructor(
)
)
}
if (!options.compatiblePluginsToIgnore.isEmpty()) {
productProperties.productLayout.compatiblePluginsToIgnore =
productProperties.productLayout.compatiblePluginsToIgnore.addAll(options.compatiblePluginsToIgnore)
}
}
companion object {