From 4af3027b34799899be48d78a07b301ce2f8df488 Mon Sep 17 00:00:00 2001 From: Aleksey Rostovskiy Date: Fri, 12 Apr 2019 18:21:50 +0300 Subject: [PATCH] IDEA-207709 IDEA-CR-46198 PythonCE Plugin --- .../PythonCommunityPluginBuilder.groovy | 41 ++++++++++++++----- 1 file changed, 30 insertions(+), 11 deletions(-) diff --git a/python/build/groovy/org/jetbrains/intellij/build/pycharm/PythonCommunityPluginBuilder.groovy b/python/build/groovy/org/jetbrains/intellij/build/pycharm/PythonCommunityPluginBuilder.groovy index 02b03bf58af8..e28301d12680 100644 --- a/python/build/groovy/org/jetbrains/intellij/build/pycharm/PythonCommunityPluginBuilder.groovy +++ b/python/build/groovy/org/jetbrains/intellij/build/pycharm/PythonCommunityPluginBuilder.groovy @@ -15,11 +15,15 @@ */ package org.jetbrains.intellij.build.pycharm +import groovy.io.FileType import org.jetbrains.intellij.build.BuildContext import org.jetbrains.intellij.build.BuildOptions import org.jetbrains.intellij.build.BuildTasks +import org.jetbrains.intellij.build.IdeaCommunityProperties import org.jetbrains.intellij.build.ProprietaryBuildTools +import static org.jetbrains.intellij.build.python.PythonCommunityPluginModules.PYTHON_COMMUNITY_PLUGIN_MODULE + /** * @author vlan */ @@ -32,17 +36,32 @@ class PythonCommunityPluginBuilder { def build() { def pluginBuildNumber = System.getProperty("build.number", "SNAPSHOT") - def options = new BuildOptions(targetOS: BuildOptions.OS_NONE, buildNumber: pluginBuildNumber, outputRootPath: "$home/out/pycharmCE") - def buildContext = BuildContext.createContext(home, home, new PythonCommunityPluginProperties(), ProprietaryBuildTools.DUMMY, options) - def buildTasks = BuildTasks.create(buildContext) - buildTasks.buildDistributions() - - def builtPlugins = new File("$buildContext.paths.artifacts/${buildContext.applicationInfo.productCode}-plugins").listFiles() - if (builtPlugins == null || builtPlugins.length == 0) { - buildContext.messages.warning("No plugins were built") - return + def pluginsForIdeaCommunity = [ + PYTHON_COMMUNITY_PLUGIN_MODULE, + "intellij.reStructuredText", + ] + + def options = new BuildOptions(buildNumber: pluginBuildNumber, + outputRootPath: "$home/out/pycharmCE") + def buildContext = BuildContext.createContext(home, + home, + new IdeaCommunityProperties(home), + ProprietaryBuildTools.DUMMY, + options) + BuildTasks.create(buildContext).buildNonBundledPlugins(pluginsForIdeaCommunity) + + List builtPlugins = [] + new File(buildContext.paths.artifacts, "${buildContext.applicationInfo.productCode}-plugins").eachFileRecurse(FileType.FILES) { + if (it.name.endsWith(".zip")) { + builtPlugins << it + } } - + if (builtPlugins.isEmpty()) { + buildContext.messages.warning("No plugins were built") + return + } + def pluginsPaths = new File("$buildContext.paths.buildOutputRoot/plugins-paths.txt") - pluginsPaths.text = builtPlugins.collect { it.toString() }.join("\n") } + pluginsPaths.text = builtPlugins.collect { it.toString() }.join("\n") + } }