diff options
author | Sébastien Lesaint <sebastien.lesaint@sonarsource.com> | 2016-03-08 18:45:24 +0100 |
---|---|---|
committer | Sébastien Lesaint <sebastien.lesaint@sonarsource.com> | 2016-03-21 16:44:03 +0100 |
commit | 4d3d6b2504673128263eadcec82c8fd64f71e4c5 (patch) | |
tree | 037a32442fc3f898cb36447e703de6d45a741a75 /sonar-application | |
parent | 37c03b26859c6ad3b56442b7f5a0e039526f5eb5 (diff) | |
download | sonarqube-4d3d6b2504673128263eadcec82c8fd64f71e4c5.tar.gz sonarqube-4d3d6b2504673128263eadcec82c8fd64f71e4c5.zip |
SONAR-7435 add CE process, never stops but does nothing yet
Diffstat (limited to 'sonar-application')
-rw-r--r-- | sonar-application/assembly.xml | 10 | ||||
-rw-r--r-- | sonar-application/pom.xml | 10 | ||||
-rw-r--r-- | sonar-application/src/main/java/org/sonar/application/App.java | 67 | ||||
-rw-r--r-- | sonar-application/src/test/java/org/sonar/application/AppTest.java | 2 |
4 files changed, 65 insertions, 24 deletions
diff --git a/sonar-application/assembly.xml b/sonar-application/assembly.xml index 2300b6dd140..069bd23add4 100644 --- a/sonar-application/assembly.xml +++ b/sonar-application/assembly.xml @@ -68,6 +68,16 @@ <scope>provided</scope> </dependencySet> + <dependencySet> + <outputDirectory>lib/ce</outputDirectory> + <useProjectArtifact>false</useProjectArtifact> + <useTransitiveDependencies>false</useTransitiveDependencies> + <useTransitiveFiltering>false</useTransitiveFiltering> + <includes> + <include>org.sonarsource.sonarqube:sonar-ce</include> + </includes> + <scope>provided</scope> + </dependencySet> <dependencySet> <outputDirectory>lib/batch</outputDirectory> diff --git a/sonar-application/pom.xml b/sonar-application/pom.xml index b2126dc6da3..6fa92bcabb7 100644 --- a/sonar-application/pom.xml +++ b/sonar-application/pom.xml @@ -56,6 +56,12 @@ </dependency> <dependency> <groupId>${project.groupId}</groupId> + <artifactId>sonar-ce</artifactId> + <version>${project.version}</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>${project.groupId}</groupId> <artifactId>sonar-scanner-engine-shaded</artifactId> <version>${project.version}</version> <scope>provided</scope> @@ -232,8 +238,8 @@ <configuration> <rules> <requireFilesSize> - <minsize>105000000</minsize> - <maxsize>125000000</maxsize> + <minsize>110000000</minsize> + <maxsize>120000000</maxsize> <files> <file>${project.build.directory}/sonarqube-${project.version}.zip</file> </files> diff --git a/sonar-application/src/main/java/org/sonar/application/App.java b/sonar-application/src/main/java/org/sonar/application/App.java index ca2f98d62b8..1537405fa04 100644 --- a/sonar-application/src/main/java/org/sonar/application/App.java +++ b/sonar-application/src/main/java/org/sonar/application/App.java @@ -53,8 +53,20 @@ public class App implements Stoppable { } private static List<JavaCommand> createCommands(Props props) { - List<JavaCommand> commands = new ArrayList<>(); File homeDir = props.nonNullValueAsFile(ProcessProperties.PATH_HOME); + List<JavaCommand> commands = new ArrayList<>(3); + commands.add(createESCommand(props, homeDir)); + + // do not yet start WebServer nor CE on elasticsearch slaves + if (StringUtils.isBlank(props.value(ProcessProperties.CLUSTER_MASTER_HOST))) { + commands.add(createWebServerCommand(props, homeDir)); + commands.add(createCeServerCommand(props, homeDir)); + } + + return commands; + } + + private static JavaCommand createESCommand(Props props, File homeDir) { JavaCommand elasticsearch = new JavaCommand("search"); elasticsearch .setWorkDir(homeDir) @@ -65,28 +77,41 @@ public class App implements Stoppable { .setArguments(props.rawProperties()) .addClasspath("./lib/common/*") .addClasspath("./lib/search/*"); - commands.add(elasticsearch); + return elasticsearch; + } - // do not yet start SQ on elasticsearch slaves - if (StringUtils.isBlank(props.value(ProcessProperties.CLUSTER_MASTER_HOST))) { - JavaCommand webServer = new JavaCommand("web") - .setWorkDir(homeDir) - .addJavaOptions(ProcessProperties.WEB_ENFORCED_JVM_ARGS) - .addJavaOptions(props.nonNullValue(ProcessProperties.WEB_JAVA_OPTS)) - .addJavaOptions(props.nonNullValue(ProcessProperties.WEB_JAVA_ADDITIONAL_OPTS)) - // required for logback tomcat valve - .setEnvVariable(ProcessProperties.PATH_LOGS, props.nonNullValue(ProcessProperties.PATH_LOGS)) - .setClassName("org.sonar.server.app.WebServer") - .setArguments(props.rawProperties()) - .addClasspath("./lib/common/*") - .addClasspath("./lib/server/*"); - String driverPath = props.value(ProcessProperties.JDBC_DRIVER_PATH); - if (driverPath != null) { - webServer.addClasspath(driverPath); - } - commands.add(webServer); + private static JavaCommand createWebServerCommand(Props props, File homeDir) { + JavaCommand webServer = new JavaCommand("web") + .setWorkDir(homeDir) + .addJavaOptions(ProcessProperties.WEB_ENFORCED_JVM_ARGS) + .addJavaOptions(props.nonNullValue(ProcessProperties.WEB_JAVA_OPTS)) + .addJavaOptions(props.nonNullValue(ProcessProperties.WEB_JAVA_ADDITIONAL_OPTS)) + // required for logback tomcat valve + .setEnvVariable(ProcessProperties.PATH_LOGS, props.nonNullValue(ProcessProperties.PATH_LOGS)) + .setClassName("org.sonar.server.app.WebServer") + .setArguments(props.rawProperties()) + .addClasspath("./lib/common/*") + .addClasspath("./lib/server/*"); + String driverPath = props.value(ProcessProperties.JDBC_DRIVER_PATH); + if (driverPath != null) { + webServer.addClasspath(driverPath); } - return commands; + return webServer; + } + + private static JavaCommand createCeServerCommand(Props props, File homeDir) { + JavaCommand webServer = new JavaCommand("ce") + .setWorkDir(homeDir) + .setClassName("org.sonar.ce.app.CeServer") + .setArguments(props.rawProperties()) + .addClasspath("./lib/common/*") + .addClasspath("./lib/server/*") + .addClasspath("./lib/ce/*"); + String driverPath = props.value(ProcessProperties.JDBC_DRIVER_PATH); + if (driverPath != null) { + webServer.addClasspath(driverPath); + } + return webServer; } static String starPath(File homeDir, String relativePath) { diff --git a/sonar-application/src/test/java/org/sonar/application/AppTest.java b/sonar-application/src/test/java/org/sonar/application/AppTest.java index 120dd2382d7..04f0da47559 100644 --- a/sonar-application/src/test/java/org/sonar/application/AppTest.java +++ b/sonar-application/src/test/java/org/sonar/application/AppTest.java @@ -63,7 +63,7 @@ public class AppTest { ArgumentCaptor<List<JavaCommand>> argument = ArgumentCaptor.forClass(listClass); verify(monitor).start(argument.capture()); - assertThat(argument.getValue()).extracting("key").containsExactly("search", "web"); + assertThat(argument.getValue()).extracting("key").containsExactly("search", "web", "ce"); } @Test |