From: Duarte Meneses Date: Thu, 16 Jul 2015 11:51:30 +0000 (+0200) Subject: merge it-sonar-runner and update groupId X-Git-Tag: 2.5-rc1~66 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=73b46e381ff0a7a0b3bc280ac45de592e547513a;p=sonar-scanner-cli.git merge it-sonar-runner and update groupId --- diff --git a/.travis.yml b/.travis.yml index 2469bf0..c7f2d88 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,6 +8,16 @@ jdk: install: true script: ./travis.sh +env: + - TESTS=CI + - TESTS=IT-DEV + +matrix: + fast_finish: true + cache: directories: - '$HOME/.m2/repository' + +notifications: + email: false diff --git a/it/pom.xml b/it/pom.xml new file mode 100644 index 0000000..4ed6ea7 --- /dev/null +++ b/it/pom.xml @@ -0,0 +1,72 @@ + + + 4.0.0 + + + org.sonarsource.parent + parent + 23 + + + + com.sonarsource.it + it-sonar-runner + 1.0-SNAPSHOT + SonarSource :: IT :: SonarQube Runner + 2009 + + + SonarSource + http://www.sonarsource.com + + + + 3.7 + -server + + + + + + com.sonarsource.orchestrator + sonar-orchestrator + 3.3-SNAPSHOT + + + junit + junit + 4.11 + test + + + org.codehaus.sonar + sonar-ws-client + ${sonar.buildVersion} + test + + + org.easytesting + fest-assert + 1.4 + test + + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + **/SonarRunnerTestSuite.java + + + + + + + + diff --git a/it/projects/bad-source-dirs/sonar-project.properties b/it/projects/bad-source-dirs/sonar-project.properties new file mode 100644 index 0000000..55ff5ab --- /dev/null +++ b/it/projects/bad-source-dirs/sonar-project.properties @@ -0,0 +1,6 @@ +sonar.projectKey=bad-source-dirs +sonar.projectName=Bad Source Dirs +sonar.projectDescription=Bad Source Dirs +sonar.projectVersion=1.0 + +sonar.sources=src,bad diff --git a/it/projects/bad-source-dirs/src/Hello.java b/it/projects/bad-source-dirs/src/Hello.java new file mode 100644 index 0000000..1291f40 --- /dev/null +++ b/it/projects/bad-source-dirs/src/Hello.java @@ -0,0 +1,7 @@ +public class Hello { + + public void hello() { + int i=356; + if (true) i=5658; + } +} diff --git a/it/projects/basedir-with-source/Hello.java b/it/projects/basedir-with-source/Hello.java new file mode 100644 index 0000000..1291f40 --- /dev/null +++ b/it/projects/basedir-with-source/Hello.java @@ -0,0 +1,7 @@ +public class Hello { + + public void hello() { + int i=356; + if (true) i=5658; + } +} diff --git a/it/projects/basedir-with-source/sonar-project.properties b/it/projects/basedir-with-source/sonar-project.properties new file mode 100644 index 0000000..e5a74f8 --- /dev/null +++ b/it/projects/basedir-with-source/sonar-project.properties @@ -0,0 +1,7 @@ +# Note that the format of project key is still groupId:artifactId in order to support test with sonar 2.6. +sonar.projectKey=java:basedir-with-source +sonar.projectName=Basedir with source +sonar.projectDescription=The base directory contains sources (see the parameter 'sources') +sonar.projectVersion=1.0 + +sonar.sources=. diff --git a/it/projects/java-bytecode/.sonar/findbugs-include.xml b/it/projects/java-bytecode/.sonar/findbugs-include.xml new file mode 100644 index 0000000..d4846f0 --- /dev/null +++ b/it/projects/java-bytecode/.sonar/findbugs-include.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/it/projects/java-bytecode/.sonar/findbugs-result.xml b/it/projects/java-bytecode/.sonar/findbugs-result.xml new file mode 100644 index 0000000..0ae2961 --- /dev/null +++ b/it/projects/java-bytecode/.sonar/findbugs-result.xml @@ -0,0 +1,69 @@ + + + + + /home/duartem/git/sonar-tests-core/it-sonar-runner/projects/java-bytecode/src/HasFindbugsViolation.java + /home/duartem/git/sonar-tests-core/it-sonar-runner/projects/java-bytecode/build/classes/HasFindbugsViolation.class + /home/duartem/git/sonar-tests-core/it-sonar-runner/projects/java-bytecode/build/classes + /home/duartem/git/sonar-tests-core/it-sonar-runner/projects/java-bytecode/lib/deprecated.jar + /home/duartem/git/sonar-tests-core/it-sonar-runner/projects/java-bytecode/.sonar/findbugs/annotations.jar + /home/duartem/git/sonar-tests-core/it-sonar-runner/projects/java-bytecode/.sonar/findbugs/jsr305.jar + /home/duartem/git/sonar-tests-core/it-sonar-runner/projects/java-bytecode/.sonar + + + Method invokes System.exit(...) + HasFindbugsViolation.use() invokes System.exit(...), which shuts down the entire virtual machine + + + At HasFindbugsViolation.java:[lines 1-12] + + In class HasFindbugsViolation + + + + In method HasFindbugsViolation.use() + + + At HasFindbugsViolation.java:[line 7] + + + + Bad practice + + + Method invokes System.exit(...) +
Invoking System.exit shuts down the entire Java virtual machine. This + should only been done when it is appropriate. Such calls make it + hard or impossible for your code to be invoked by other code. + Consider throwing a RuntimeException instead.

+ + ]]>
+
+ + Dubious method used + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/it/projects/java-bytecode/build.xml b/it/projects/java-bytecode/build.xml new file mode 100644 index 0000000..d24c2b8 --- /dev/null +++ b/it/projects/java-bytecode/build.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/it/projects/java-bytecode/build/classes/HasFindbugsViolation.class b/it/projects/java-bytecode/build/classes/HasFindbugsViolation.class new file mode 100644 index 0000000..f482325 Binary files /dev/null and b/it/projects/java-bytecode/build/classes/HasFindbugsViolation.class differ diff --git a/it/projects/java-bytecode/lib/deprecated.jar b/it/projects/java-bytecode/lib/deprecated.jar new file mode 100644 index 0000000..65e3be9 Binary files /dev/null and b/it/projects/java-bytecode/lib/deprecated.jar differ diff --git a/it/projects/java-bytecode/sonar-project.properties b/it/projects/java-bytecode/sonar-project.properties new file mode 100644 index 0000000..cf6eb18 --- /dev/null +++ b/it/projects/java-bytecode/sonar-project.properties @@ -0,0 +1,9 @@ +# Note that the format of project key is still groupId:artifactId in order to support test with sonar 2.6. +sonar.projectKey=java:bytecode +sonar.projectName=Java Bytecode Sample +sonar.projectVersion=1.0 +sonar.profile=With Findbugs + +sonar.sources=src +sonar.binaries=build/classes +sonar.libraries=lib/*.jar diff --git a/it/projects/java-bytecode/src/HasFindbugsViolation.java b/it/projects/java-bytecode/src/HasFindbugsViolation.java new file mode 100644 index 0000000..c68f54f --- /dev/null +++ b/it/projects/java-bytecode/src/HasFindbugsViolation.java @@ -0,0 +1,13 @@ +public class HasFindbugsViolation { + + private String field; + + public void use() { + new DeprecatedExample().deprecatedMethod(); // violation of squid rule: CallToDeprecatedMethod + System.exit(33); // violation on findbugs rule: DM_EXIT + } + + public void useFieldForLcom4() { + System.out.println(field); + } +} diff --git a/it/projects/java-sample/sonar-project.properties b/it/projects/java-sample/sonar-project.properties new file mode 100644 index 0000000..0414efd --- /dev/null +++ b/it/projects/java-sample/sonar-project.properties @@ -0,0 +1,7 @@ +# Note that the format of project key is still groupId:artifactId in order to support test with sonar 2.6. +sonar.projectKey=java:sample +sonar.projectName=Java Sample, with comma +sonar.projectDescription=This is a Java sample +sonar.projectVersion=1.2.3 + +sonar.sources=src diff --git a/it/projects/java-sample/src/basic/Hello.java b/it/projects/java-sample/src/basic/Hello.java new file mode 100644 index 0000000..b9db5a0 --- /dev/null +++ b/it/projects/java-sample/src/basic/Hello.java @@ -0,0 +1,9 @@ +package basic; + +public class Hello { + + public void hello() { + int i=356; + if (true) i=5658; + } +} diff --git a/it/projects/java-sample/src/basic/World.java b/it/projects/java-sample/src/basic/World.java new file mode 100644 index 0000000..c65d91c --- /dev/null +++ b/it/projects/java-sample/src/basic/World.java @@ -0,0 +1,8 @@ +package basic; + +public final class World { + + public void world() { + System.out.println("hello world"); + } +} diff --git a/it/projects/multi-module/advanced/using-config-file-prop/module1/src/Hello.java b/it/projects/multi-module/advanced/using-config-file-prop/module1/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/advanced/using-config-file-prop/module1/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/advanced/using-config-file-prop/module1/temp/generated-sonar-project.properties b/it/projects/multi-module/advanced/using-config-file-prop/module1/temp/generated-sonar-project.properties new file mode 100644 index 0000000..81dd0e0 --- /dev/null +++ b/it/projects/multi-module/advanced/using-config-file-prop/module1/temp/generated-sonar-project.properties @@ -0,0 +1,2 @@ +sonar.projectName=Module 1 +sonar.projectBaseDir=.. diff --git a/it/projects/multi-module/advanced/using-config-file-prop/module2/src/Hello.java b/it/projects/multi-module/advanced/using-config-file-prop/module2/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/advanced/using-config-file-prop/module2/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/advanced/using-config-file-prop/module2/temp/generated-sonar-project.properties b/it/projects/multi-module/advanced/using-config-file-prop/module2/temp/generated-sonar-project.properties new file mode 100644 index 0000000..0b0e342 --- /dev/null +++ b/it/projects/multi-module/advanced/using-config-file-prop/module2/temp/generated-sonar-project.properties @@ -0,0 +1,2 @@ +sonar.projectName=Module 2 +sonar.projectBaseDir=.. \ No newline at end of file diff --git a/it/projects/multi-module/advanced/using-config-file-prop/sonar-project.properties b/it/projects/multi-module/advanced/using-config-file-prop/sonar-project.properties new file mode 100644 index 0000000..448cf40 --- /dev/null +++ b/it/projects/multi-module/advanced/using-config-file-prop/sonar-project.properties @@ -0,0 +1,10 @@ +sonar.projectKey=using-config-file-prop +sonar.projectName=Advanced use case - mostly used by the Ant task +sonar.projectVersion=1.2.3 + +sonar.sources=src + +sonar.modules=module1,module2 + +module1.sonar.projectConfigFile=module1/temp/generated-sonar-project.properties +module2.sonar.projectConfigFile=module2/temp/generated-sonar-project.properties diff --git a/it/projects/multi-module/customization/deep-path-for-modules/modules/module1/src/Hello.java b/it/projects/multi-module/customization/deep-path-for-modules/modules/module1/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/customization/deep-path-for-modules/modules/module1/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/customization/deep-path-for-modules/modules/module2/src/Hello.java b/it/projects/multi-module/customization/deep-path-for-modules/modules/module2/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/customization/deep-path-for-modules/modules/module2/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/customization/deep-path-for-modules/sonar-project.properties b/it/projects/multi-module/customization/deep-path-for-modules/sonar-project.properties new file mode 100644 index 0000000..e366eaa --- /dev/null +++ b/it/projects/multi-module/customization/deep-path-for-modules/sonar-project.properties @@ -0,0 +1,13 @@ +sonar.projectKey=deep-path-for-modules +sonar.projectName=Project with deep path for modules +sonar.projectVersion=1.2.3 + +sonar.sources=src + +sonar.modules=mod1,mod2 + +mod1.sonar.projectBaseDir=modules/module1 +mod1.sonar.projectName=Module 1 + +mod2.sonar.projectBaseDir=modules/module2 +mod2.sonar.projectName=Module 2 \ No newline at end of file diff --git a/it/projects/multi-module/customization/module-path-with-space/my module 1/src/Hello.java b/it/projects/multi-module/customization/module-path-with-space/my module 1/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/customization/module-path-with-space/my module 1/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/customization/module-path-with-space/my module 2/src/Hello.java b/it/projects/multi-module/customization/module-path-with-space/my module 2/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/customization/module-path-with-space/my module 2/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/customization/module-path-with-space/sonar-project.properties b/it/projects/multi-module/customization/module-path-with-space/sonar-project.properties new file mode 100644 index 0000000..4a2c774 --- /dev/null +++ b/it/projects/multi-module/customization/module-path-with-space/sonar-project.properties @@ -0,0 +1,14 @@ +sonar.projectKey=module-path-with-space +sonar.projectName=Project with module path that contain spaces +sonar.projectVersion=1.2.3 + +sonar.sources=src + +sonar.modules=module1,module2 + +# module1 and module2 are located in a path that differs from their id AND that contains a space +module1.sonar.projectName=Module 1 +module1.sonar.projectBaseDir=my module 1 + +module2.sonar.projectName=Module 2 +module2.sonar.projectBaseDir=my module 2 diff --git a/it/projects/multi-module/customization/overwriting-parent-properties/module1/src1/Hello.java b/it/projects/multi-module/customization/overwriting-parent-properties/module1/src1/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/customization/overwriting-parent-properties/module1/src1/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/customization/overwriting-parent-properties/module2/sonar-project.properties b/it/projects/multi-module/customization/overwriting-parent-properties/module2/sonar-project.properties new file mode 100644 index 0000000..19d46fb --- /dev/null +++ b/it/projects/multi-module/customization/overwriting-parent-properties/module2/sonar-project.properties @@ -0,0 +1,4 @@ +sonar.projectKey=module2-new-key +sonar.projectName=Module 2 +sonar.projectDescription=Description of module 2 +sonar.sources=src2 diff --git a/it/projects/multi-module/customization/overwriting-parent-properties/module2/src2/Hello.java b/it/projects/multi-module/customization/overwriting-parent-properties/module2/src2/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/customization/overwriting-parent-properties/module2/src2/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/customization/overwriting-parent-properties/sonar-project.properties b/it/projects/multi-module/customization/overwriting-parent-properties/sonar-project.properties new file mode 100644 index 0000000..b2dff8d --- /dev/null +++ b/it/projects/multi-module/customization/overwriting-parent-properties/sonar-project.properties @@ -0,0 +1,16 @@ +sonar.projectKey=overwriting-parent-properties +sonar.projectName=Project with modules that overwrite properties +sonar.projectVersion=1.2.3 +sonar.projectDescription=Description of root project + +sonar.sources=src + +sonar.modules=module1,module2 + +# For module 1, we overwrite properties here +module1.sonar.projectKey=module1-new-key +module1.sonar.projectName=Module 1 +module1.sonar.projectDescription=Description of module 1 +module1.sonar.sources=src1 + +# For module 2, we do it in the "sonar-project.properties" defined in the module diff --git a/it/projects/multi-module/failures/unexisting-base-dir/module1/src/Hello.java b/it/projects/multi-module/failures/unexisting-base-dir/module1/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/failures/unexisting-base-dir/module1/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/failures/unexisting-base-dir/module2/src/Hello.java b/it/projects/multi-module/failures/unexisting-base-dir/module2/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/failures/unexisting-base-dir/module2/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/failures/unexisting-base-dir/sonar-project.properties b/it/projects/multi-module/failures/unexisting-base-dir/sonar-project.properties new file mode 100644 index 0000000..8bb89b7 --- /dev/null +++ b/it/projects/multi-module/failures/unexisting-base-dir/sonar-project.properties @@ -0,0 +1,10 @@ +sonar.projectKey=unexisting-base-dir +sonar.projectName=Project with unexisting base directory for module +sonar.projectVersion=1.2.3 + +sonar.sources=src + +sonar.modules=module1,module3 + +module1.sonar.projectName=Module 1 +module3.sonar.projectName=Module 3 diff --git a/it/projects/multi-module/failures/unexisting-config-file/module1/src/Hello.java b/it/projects/multi-module/failures/unexisting-config-file/module1/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/failures/unexisting-config-file/module1/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/failures/unexisting-config-file/module1/temp/empty-dir.txt b/it/projects/multi-module/failures/unexisting-config-file/module1/temp/empty-dir.txt new file mode 100644 index 0000000..0026da6 --- /dev/null +++ b/it/projects/multi-module/failures/unexisting-config-file/module1/temp/empty-dir.txt @@ -0,0 +1 @@ +File to be sure that SVN keeps this "empty" directory \ No newline at end of file diff --git a/it/projects/multi-module/failures/unexisting-config-file/module2/src/Hello.java b/it/projects/multi-module/failures/unexisting-config-file/module2/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/failures/unexisting-config-file/module2/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/failures/unexisting-config-file/module2/temp/generated-sonar-project.properties b/it/projects/multi-module/failures/unexisting-config-file/module2/temp/generated-sonar-project.properties new file mode 100644 index 0000000..0b0e342 --- /dev/null +++ b/it/projects/multi-module/failures/unexisting-config-file/module2/temp/generated-sonar-project.properties @@ -0,0 +1,2 @@ +sonar.projectName=Module 2 +sonar.projectBaseDir=.. \ No newline at end of file diff --git a/it/projects/multi-module/failures/unexisting-config-file/sonar-project.properties b/it/projects/multi-module/failures/unexisting-config-file/sonar-project.properties new file mode 100644 index 0000000..d3f7d6e --- /dev/null +++ b/it/projects/multi-module/failures/unexisting-config-file/sonar-project.properties @@ -0,0 +1,10 @@ +sonar.projectKey=unexisting-config-file +sonar.projectName=Project using an unexisting config file +sonar.projectVersion=1.2.3 + +sonar.sources=src + +sonar.modules=module1,module2 + +module1.sonar.projectConfigFile=module1/temp/generated-sonar-project.properties +module2.sonar.projectConfigFile=module2/temp/generated-sonar-project.properties diff --git a/it/projects/multi-module/multi-language/sonar-project.properties b/it/projects/multi-module/multi-language/sonar-project.properties new file mode 100644 index 0000000..3598e57 --- /dev/null +++ b/it/projects/multi-module/multi-language/sonar-project.properties @@ -0,0 +1,14 @@ +sonar.projectKey=multi-language +sonar.projectName=Simplest multi-language project +sonar.projectVersion=1.2.3 + + +sonar.modules=java-module,js-module + +java-module.sonar.language=java +java-module.sonar.projectBaseDir=. +java-module.sonar.sources=src/main/java + +js-module.sonar.language=js +js-module.sonar.projectBaseDir=. +js-module.sonar.sources=src/main/js diff --git a/it/projects/multi-module/multi-language/src/main/java/Hello.java b/it/projects/multi-module/multi-language/src/main/java/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/multi-language/src/main/java/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/multi-language/src/main/js/Hello.js b/it/projects/multi-module/multi-language/src/main/js/Hello.js new file mode 100644 index 0000000..2096104 --- /dev/null +++ b/it/projects/multi-module/multi-language/src/main/js/Hello.js @@ -0,0 +1,3 @@ +function hello() { + alert("Hello World"); +} diff --git a/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module1/sonar-project.properties b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module1/sonar-project.properties new file mode 100644 index 0000000..f5e701d --- /dev/null +++ b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module1/sonar-project.properties @@ -0,0 +1,2 @@ +# no need to set the "sonar.projectKey": it defaults to the module ID ('module1') +# no need to set the "sonar.projectName": it defaults to the module ID ('module1') \ No newline at end of file diff --git a/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module1/src/Hello.java b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module1/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module1/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module2/sonar-project.properties b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module2/sonar-project.properties new file mode 100644 index 0000000..93a6c21 --- /dev/null +++ b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module2/sonar-project.properties @@ -0,0 +1,3 @@ +# here, we overwrite "sonar.projectKey" and "sonar.projectName" for 'module2' +sonar.projectKey=overridden-key-for-module2 +sonar.projectName=Module 2 \ No newline at end of file diff --git a/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module2/src/Hello.java b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module2/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/module2/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/simplest/simplest-with-props-on-each-module/sonar-project.properties b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/sonar-project.properties new file mode 100644 index 0000000..6bfae93 --- /dev/null +++ b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/sonar-project.properties @@ -0,0 +1,7 @@ +sonar.projectKey=simplest-with-props-each-module +sonar.projectName=Simplest multi-module project with properties set on each module +sonar.projectVersion=1.2.3 + +sonar.sources=src + +sonar.modules=module1,module2 \ No newline at end of file diff --git a/it/projects/multi-module/simplest/simplest-with-props-on-each-module/src/placeholder.txt b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/src/placeholder.txt new file mode 100644 index 0000000..1a5bdeb --- /dev/null +++ b/it/projects/multi-module/simplest/simplest-with-props-on-each-module/src/placeholder.txt @@ -0,0 +1 @@ +The root module contains a src folder but it will not be analysed (SONARPLUGINS-2295) and a warning will be displayed. \ No newline at end of file diff --git a/it/projects/multi-module/simplest/simplest-with-props-on-root/module1/src/Hello.java b/it/projects/multi-module/simplest/simplest-with-props-on-root/module1/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/simplest/simplest-with-props-on-root/module1/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/simplest/simplest-with-props-on-root/module2/src/Hello.java b/it/projects/multi-module/simplest/simplest-with-props-on-root/module2/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/multi-module/simplest/simplest-with-props-on-root/module2/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/multi-module/simplest/simplest-with-props-on-root/sonar-project.properties b/it/projects/multi-module/simplest/simplest-with-props-on-root/sonar-project.properties new file mode 100644 index 0000000..a3488b8 --- /dev/null +++ b/it/projects/multi-module/simplest/simplest-with-props-on-root/sonar-project.properties @@ -0,0 +1,11 @@ +sonar.projectKey=simplest-with-props-on-root +sonar.projectName=Simplest multi-module project with all properties set on the root project +sonar.projectVersion=1.2.3 + +sonar.sources=src + +sonar.modules=module1,module2 + +# no need to set the "sonar.projectBaseDir": it also defaults to / +# no need to set the "sonar.projectKey": it defaults to the module ID ('module1') +# no need to set the "sonar.projectName": it defaults to the module ID ('module1') \ No newline at end of file diff --git a/it/projects/override-working-dir/sonar-project.properties b/it/projects/override-working-dir/sonar-project.properties new file mode 100644 index 0000000..fc08f05 --- /dev/null +++ b/it/projects/override-working-dir/sonar-project.properties @@ -0,0 +1,5 @@ +sonar.projectKey=override-working-dir +sonar.projectName=Override working dir +sonar.projectVersion=1.0-SNAPSHOT + +sonar.sources=src diff --git a/it/projects/override-working-dir/src/Hello.java b/it/projects/override-working-dir/src/Hello.java new file mode 100644 index 0000000..1291f40 --- /dev/null +++ b/it/projects/override-working-dir/src/Hello.java @@ -0,0 +1,7 @@ +public class Hello { + + public void hello() { + int i=356; + if (true) i=5658; + } +} diff --git a/it/projects/using-deprecated-props/build/Hello.class b/it/projects/using-deprecated-props/build/Hello.class new file mode 100644 index 0000000..48df723 Binary files /dev/null and b/it/projects/using-deprecated-props/build/Hello.class differ diff --git a/it/projects/using-deprecated-props/lib/deprecated.jar b/it/projects/using-deprecated-props/lib/deprecated.jar new file mode 100644 index 0000000..65e3be9 Binary files /dev/null and b/it/projects/using-deprecated-props/lib/deprecated.jar differ diff --git a/it/projects/using-deprecated-props/sonar-project.properties b/it/projects/using-deprecated-props/sonar-project.properties new file mode 100644 index 0000000..628eaf7 --- /dev/null +++ b/it/projects/using-deprecated-props/sonar-project.properties @@ -0,0 +1,8 @@ +sonar.projectKey=using-deprecated-props +sonar.projectName=Deprecated Props +sonar.projectVersion=1.2.3 + +sources=src +tests=tests +binaries=build +libraries=lib/*.jar diff --git a/it/projects/using-deprecated-props/src/Hello.java b/it/projects/using-deprecated-props/src/Hello.java new file mode 100644 index 0000000..8a94806 --- /dev/null +++ b/it/projects/using-deprecated-props/src/Hello.java @@ -0,0 +1,2 @@ +public class Hello { +} diff --git a/it/projects/using-deprecated-props/tests/HelloTest.java b/it/projects/using-deprecated-props/tests/HelloTest.java new file mode 100644 index 0000000..7cb87ed --- /dev/null +++ b/it/projects/using-deprecated-props/tests/HelloTest.java @@ -0,0 +1,2 @@ +public class HelloTest { +} diff --git a/it/src/test/java/com/sonar/runner/it/CacheTest.java b/it/src/test/java/com/sonar/runner/it/CacheTest.java new file mode 100644 index 0000000..788b82c --- /dev/null +++ b/it/src/test/java/com/sonar/runner/it/CacheTest.java @@ -0,0 +1,68 @@ +/* + * SonarSource :: IT :: SonarQube Runner + * Copyright (C) 2009 SonarSource + * sonarqube@googlegroups.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02 + */ +package com.sonar.runner.it; + +import com.sonar.orchestrator.build.BuildFailureException; + +import com.sonar.orchestrator.locator.ResourceLocation; +import com.sonar.orchestrator.build.BuildResult; +import com.sonar.orchestrator.build.SonarRunner; +import org.junit.Test; + +import java.io.File; + +import static org.junit.Assert.*; +import static org.junit.Assume.assumeTrue; + +public class CacheTest extends RunnerTestCase { + @Test + public void testOffline() { + assumeTrue(orchestrator.getServer().version().isGreaterThanOrEquals("5.2")); + orchestrator.getServer().restoreProfile(ResourceLocation.create("/sonar-way-profile.xml")); + + SonarRunner build = createRunner(true); + BuildResult result = orchestrator.executeBuild(build); + stopServer(); + + build = createRunner(false); + try { + result = orchestrator.executeBuild(build, false); + } catch (BuildFailureException e) { + // expected + } + + build = createRunner(true); + result = orchestrator.executeBuild(build, false); + assertTrue(result.isSuccess()); + } + + private SonarRunner createRunner(boolean enableOffline) { + SonarRunner runner = newRunner(new File("projects/java-sample")) + .setProperty("sonar.analysis.mode", "preview") + .setProfile("sonar-way"); + + if (enableOffline) { + runner.setProperty("sonar.enableOffline", "true"); + } + + return runner; + } + +} diff --git a/it/src/test/java/com/sonar/runner/it/JavaTest.java b/it/src/test/java/com/sonar/runner/it/JavaTest.java new file mode 100644 index 0000000..23cc3a4 --- /dev/null +++ b/it/src/test/java/com/sonar/runner/it/JavaTest.java @@ -0,0 +1,263 @@ +/* + * SonarSource :: IT :: SonarQube Runner + * Copyright (C) 2009 SonarSource + * sonarqube@googlegroups.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02 + */ +package com.sonar.runner.it; + +import com.sonar.orchestrator.build.BuildResult; +import com.sonar.orchestrator.build.SonarRunner; +import com.sonar.orchestrator.locator.ResourceLocation; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.TemporaryFolder; +import org.sonar.wsclient.issue.Issue; +import org.sonar.wsclient.issue.IssueQuery; +import org.sonar.wsclient.services.Resource; +import org.sonar.wsclient.services.ResourceQuery; + +import java.io.File; +import java.io.IOException; +import java.util.List; + +import static org.fest.assertions.Assertions.assertThat; +import static org.junit.Assume.assumeTrue; + +public class JavaTest extends RunnerTestCase { + + @Rule + public TemporaryFolder temp = new TemporaryFolder(); + + /** + * No bytecode, only sources + */ + @Test + public void scan_java_sources() { + orchestrator.getServer().restoreProfile(ResourceLocation.create("/sonar-way-profile.xml")); + + SonarRunner build = newRunner(new File("projects/java-sample")) + .setProperty("sonar.verbose", "true") + .addArguments("-e", "-X") + .setProfile("sonar-way"); + // SONARPLUGINS-3061 + // Add a trailing slash + build.setProperty("sonar.host.url", orchestrator.getServer().getUrl() + "/"); + orchestrator.executeBuild(build); + + Resource project = orchestrator.getServer().getWsClient().find(new ResourceQuery("java:sample").setMetrics("files", "ncloc", "classes", "lcom4", "violations")); + // SONARPLUGINS-2399 + assertThat(project.getName()).isEqualTo("Java Sample, with comma"); + assertThat(project.getDescription()).isEqualTo("This is a Java sample"); + assertThat(project.getVersion()).isEqualTo("1.2.3"); + if (!orchestrator.getServer().version().isGreaterThanOrEquals("4.2")) { + assertThat(project.getLanguage()).isEqualTo("java"); + } + assertThat(project.getMeasureIntValue("files")).isEqualTo(2); + assertThat(project.getMeasureIntValue("classes")).isEqualTo(2); + assertThat(project.getMeasureIntValue("ncloc")).isGreaterThan(10); + assertThat(project.getMeasureIntValue("lcom4")).isNull(); // no bytecode + if (orchestrator.getServer().version().isGreaterThanOrEquals("3.7")) { + // the squid rules enabled in sonar-way-profile do not exist in SQ 3.0 + assertThat(project.getMeasureIntValue("violations")).isGreaterThan(0); + } + + Resource file = orchestrator.getServer().getWsClient() + .find(new ResourceQuery(helloFileKey()).setMetrics("files", "ncloc", "classes", "lcom4", "violations")); + if (orchestrator.getServer().version().isGreaterThanOrEquals("4.2")) { + assertThat(file.getName()).isEqualTo("Hello.java"); + } else { + assertThat(file.getName()).isEqualTo("Hello"); + assertThat(file.getMeasureIntValue("lcom4")).isNull(); // no bytecode + } + assertThat(file.getMeasureIntValue("ncloc")).isEqualTo(7); + if (orchestrator.getServer().version().isGreaterThanOrEquals("3.7")) { + // the squid rules enabled in sonar-way-profile do not exist in SQ 3.0 + assertThat(file.getMeasureIntValue("violations")).isGreaterThan(0); + } + } + + @Test + public void scan_java_sources_and_bytecode() { + orchestrator.getServer().restoreProfile(ResourceLocation.create("/requires-bytecode-profile.xml")); + SonarRunner build = newRunner(new File("projects/java-bytecode")).setProfile("requires-bytecode"); + orchestrator.executeBuild(build); + + Resource project = orchestrator.getServer().getWsClient().find(new ResourceQuery("java:bytecode").setMetrics("lcom4", "violations")); + assertThat(project.getName()).isEqualTo("Java Bytecode Sample"); + if (!orchestrator.getServer().version().isGreaterThanOrEquals("4.1")) { + // SONAR-4853 LCOM4 is no more computed on SQ 4.1 + assertThat(project.getMeasureIntValue("lcom4")).isGreaterThanOrEqualTo(1); + } + // the squid rules enabled in sonar-way-profile do not exist in SQ 3.0 + assertThat(project.getMeasureIntValue("violations")).isGreaterThan(0); + + Resource file = orchestrator.getServer().getWsClient().find(new ResourceQuery(findbugsFileKey()).setMetrics("lcom4", "violations")); + assertThat(file.getMeasureIntValue("violations")).isGreaterThan(0); + + // findbugs is executed on bytecode + List issues = orchestrator.getServer().wsClient().issueClient().find(IssueQuery.create().componentRoots("java:bytecode").rules("findbugs:DM_EXIT")).list(); + assertThat(issues).hasSize(1); + assertThat(issues.get(0).ruleKey()).isEqualTo("findbugs:DM_EXIT"); + + // Squid performs analysis of dependencies + issues = orchestrator.getServer().wsClient().issueClient().find(IssueQuery.create().componentRoots("java:bytecode").rules("squid:CallToDeprecatedMethod")).list(); + assertThat(issues).hasSize(1); + assertThat(issues.get(0).ruleKey()).isEqualTo("squid:CallToDeprecatedMethod"); + } + + @Test + public void basedir_contains_java_sources() { + orchestrator.getServer().restoreProfile(ResourceLocation.create("/sonar-way-profile.xml")); + SonarRunner build = newRunner(new File("projects/basedir-with-source")).setProfile("sonar-way"); + orchestrator.executeBuild(build); + + Resource project = orchestrator.getServer().getWsClient().find(new ResourceQuery("java:basedir-with-source").setMetrics("files", "ncloc")); + assertThat(project.getMeasureIntValue("files")).isEqualTo(1); + assertThat(project.getMeasureIntValue("ncloc")).isGreaterThan(1); + } + + /** + * Replace the maven format groupId:artifactId by a single key + */ + @Test + public void should_support_simple_project_keys() { + orchestrator.getServer().restoreProfile(ResourceLocation.create("/sonar-way-profile.xml")); + SonarRunner build = newRunner(new File("projects/java-sample")) + .setProjectKey("SAMPLE") + .setProfile("sonar-way"); + orchestrator.executeBuild(build); + + Resource project = orchestrator.getServer().getWsClient().find(new ResourceQuery("SAMPLE").setMetrics("files", "ncloc")); + assertThat(project.getMeasureIntValue("files")).isEqualTo(2); + assertThat(project.getMeasureIntValue("ncloc")).isGreaterThan(1); + } + + /** + * SONARPLUGINS-1230 + */ + @Test + public void should_override_working_dir_with_relative_path() { + SonarRunner build = newRunner(new File("projects/override-working-dir")) + .setProperty("sonar.working.directory", ".overridden-relative-sonar"); + orchestrator.executeBuild(build); + + assertThat(new File("projects/override-working-dir/.sonar")).doesNotExist(); + assertThat(new File("projects/override-working-dir/.overridden-relative-sonar")).exists().isDirectory(); + } + + /** + * SONARPLUGINS-1230 + */ + @Test + public void should_override_working_dir_with_absolute_path() { + File projectHome = new File("projects/override-working-dir"); + SonarRunner build = newRunner(projectHome) + .setProperty("sonar.working.directory", new File(projectHome, ".overridden-absolute-sonar").getAbsolutePath()); + orchestrator.executeBuild(build); + + assertThat(new File("projects/override-working-dir/.sonar")).doesNotExist(); + assertThat(new File("projects/override-working-dir/.overridden-absolute-sonar")).exists().isDirectory(); + } + + /** + * SONARPLUGINS-1856 + */ + @Test + public void should_fail_if_source_dir_does_not_exist() { + SonarRunner build = newRunner(new File("projects/bad-source-dirs")); + + BuildResult result = orchestrator.executeBuildQuietly(build); + assertThat(result.getStatus()).isNotEqualTo(0); + // with the following message + assertThat(result.getLogs()).contains("The folder 'bad' does not exist for 'bad-source-dirs'"); + } + + /** + * SONARPLUGINS-2203 + */ + @Test + public void should_log_message_when_deprecated_properties_are_used() { + assumeTrue(!orchestrator.getServer().version().isGreaterThanOrEquals("4.3")); + SonarRunner build = newRunner(new File("projects/using-deprecated-props")); + + BuildResult result = orchestrator.executeBuild(build); + String logs = result.getLogs(); + assertThat(logs).contains("/!\\ The 'sources' property is deprecated and is replaced by 'sonar.sources'. Don't forget to update your files."); + assertThat(logs).contains("/!\\ The 'tests' property is deprecated and is replaced by 'sonar.tests'. Don't forget to update your files."); + assertThat(logs).contains("/!\\ The 'binaries' property is deprecated and is replaced by 'sonar.binaries'. Don't forget to update your files."); + assertThat(logs).contains("/!\\ The 'libraries' property is deprecated and is replaced by 'sonar.libraries'. Don't forget to update your files."); + } + + /** + * SONARPLUGINS-2256 + */ + @Test + public void should_warn_when_analysis_is_platform_dependent() { + SonarRunner build = newRunner(new File("projects/java-sample")) + // ORCH-243 + .setSourceEncoding(""); + String log = orchestrator.executeBuild(build).getLogs(); + + // Note: we can't really check the locale value and the charset because the ones used during the Sonar analysis may not be the ones + // used to launch the tests. But we can check that the analysis is platform dependent (i.e. "sonar.sourceEncoding" hasn't been set). + assertThat(log).contains("Default locale:"); + assertThat(log).contains(", source code encoding:"); + assertThat(log).contains("(analysis is platform dependent)"); + } + + @Test + public void should_fail_if_unable_to_connect() { + SonarRunner build = newRunner(new File("projects/java-sample")) + .setProperty("sonar.host.url", "http://foo"); + + BuildResult result = orchestrator.executeBuildQuietly(build); + // expect build failure + assertThat(result.getStatus()).isNotEqualTo(0); + // with the following message + assertThat(result.getLogs()).contains("ERROR: Sonar server 'http://foo' can not be reached"); + } + + // SONARPLUGINS-3574 + @Test + public void run_from_external_location() throws IOException { + File tempDir = temp.newFolder(); + SonarRunner build = newRunner(tempDir) + .setProperty("sonar.projectBaseDir", new File("projects/java-sample").getAbsolutePath()) + .addArguments("-e"); + orchestrator.executeBuild(build); + + Resource project = orchestrator.getServer().getWsClient().find(new ResourceQuery("java:sample").setMetrics("files", "ncloc", "classes", "lcom4", "violations")); + assertThat(project.getDescription()).isEqualTo("This is a Java sample"); + assertThat(project.getVersion()).isEqualTo("1.2.3"); + } + + private String findbugsFileKey() { + if (orchestrator.getServer().version().isGreaterThanOrEquals("4.2")) { + return "java:bytecode:src/HasFindbugsViolation.java"; + } else { + return "java:bytecode:[default].HasFindbugsViolation"; + } + } + + private String helloFileKey() { + if (orchestrator.getServer().version().isGreaterThanOrEquals("4.2")) { + return "java:sample:src/basic/Hello.java"; + } else { + return "java:sample:basic.Hello"; + } + } +} diff --git a/it/src/test/java/com/sonar/runner/it/MultimoduleTest.java b/it/src/test/java/com/sonar/runner/it/MultimoduleTest.java new file mode 100644 index 0000000..35dc8d9 --- /dev/null +++ b/it/src/test/java/com/sonar/runner/it/MultimoduleTest.java @@ -0,0 +1,249 @@ +/* + * SonarSource :: IT :: SonarQube Runner + * Copyright (C) 2009 SonarSource + * sonarqube@googlegroups.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02 + */ +package com.sonar.runner.it; + +import com.sonar.orchestrator.build.BuildResult; +import com.sonar.orchestrator.build.SonarRunner; +import org.junit.Test; +import org.sonar.wsclient.services.Resource; +import org.sonar.wsclient.services.ResourceQuery; + +import java.io.File; + +import static org.fest.assertions.Assertions.assertThat; +import static org.junit.Assume.assumeTrue; + +public class MultimoduleTest extends RunnerTestCase { + + /** + * SONARPLUGINS-2202 + */ + @Test + public void test_simplest_with_props_on_root() { + SonarRunner build = newRunner(new File("projects/multi-module/simplest/simplest-with-props-on-root")); + + orchestrator.executeBuild(build); + + Resource rootProject = findResource("simplest-with-props-on-root"); + assertThat(rootProject.getName()).isEqualTo("Simplest multi-module project with all properties set on the root project"); + assertThat(rootProject.getVersion()).isEqualTo("1.2.3"); + + // Verify that we have the modules + Resource module1 = findResource("simplest-with-props-on-root:module1"); + assertThat(module1.getName()).isEqualTo("module1"); + assertThat(module1.getVersion()).isEqualTo("1.2.3"); + + Resource module2 = findResource("simplest-with-props-on-root:module2"); + assertThat(module2.getName()).isEqualTo("module2"); + assertThat(module2.getVersion()).isEqualTo("1.2.3"); + + // And verify that the working directories are all located in the root folder + File workDir = new File("projects/multi-module/simplest/simplest-with-props-on-root/.sonar"); + assertThat(workDir).exists(); + assertThat(new File(workDir, "simplest-with-props-on-root_module1")).exists(); + assertThat(new File(workDir, "simplest-with-props-on-root_module2")).exists(); + assertThat(new File("projects/multi-module/simplest/simplest-with-props-on-root/module1/.sonar")).doesNotExist(); + assertThat(new File("projects/multi-module/simplest/simplest-with-props-on-root/module2/.sonar")).doesNotExist(); + } + + /** + * SONARPLUGINS-2421 + */ + @Test + public void test_multi_language_with_same_projectdir() { + SonarRunner build = newRunner(new File("projects/multi-module/multi-language")); + + orchestrator.executeBuild(build); + + Resource rootProject = findResource("multi-language"); + assertThat(rootProject.getName()).isEqualTo("Simplest multi-language project"); + assertThat(rootProject.getVersion()).isEqualTo("1.2.3"); + + // Verify that we have the modules + Resource module1 = findResource("multi-language:java-module"); + assertThat(module1.getName()).isEqualTo("java-module"); + assertThat(module1.getVersion()).isEqualTo("1.2.3"); + + Resource module2 = findResource("multi-language:js-module"); + assertThat(module2.getName()).isEqualTo("js-module"); + assertThat(module2.getVersion()).isEqualTo("1.2.3"); + } + + /** + * SONARPLUGINS-2202 + */ + @Test + public void test_simplest_with_props_on_each_module() { + SonarRunner build = newRunner(new File("projects/multi-module/simplest/simplest-with-props-on-each-module")); + + orchestrator.executeBuild(build); + + Resource rootProject = findResource("simplest-with-props-each-module"); + assertThat(rootProject.getName()).isEqualTo("Simplest multi-module project with properties set on each module"); + assertThat(rootProject.getVersion()).isEqualTo("1.2.3"); + + // Verify that we have the modules + Resource module1 = findResource("simplest-with-props-each-module:module1"); + assertThat(module1.getName()).isEqualTo("module1"); + assertThat(module1.getVersion()).isEqualTo("1.2.3"); + + Resource module2 = findResource("simplest-with-props-each-module:overridden-key-for-module2"); + assertThat(module2.getName()).isEqualTo("Module 2"); + assertThat(module2.getVersion()).isEqualTo("1.2.3"); + } + + /** + * SONARPLUGINS-2295 + */ + @Test + public void test_warning_when_source_folder_on_root_module() { + SonarRunner build = newRunner(new File("projects/multi-module/simplest/simplest-with-props-on-each-module")); + + assertThat(orchestrator.executeBuild(build).getLogs()).contains("/!\\ A multi-module project can't have source folders"); + } + + /** + * SONARPLUGINS-2202 + */ + @Test + public void test_deep_path_for_modules() { + SonarRunner build = newRunner(new File("projects/multi-module/customization/deep-path-for-modules")); + + orchestrator.executeBuild(build); + + Resource rootProject = findResource("deep-path-for-modules"); + assertThat(rootProject.getName()).isEqualTo("Project with deep path for modules"); + assertThat(rootProject.getVersion()).isEqualTo("1.2.3"); + + // Verify that we have the modules + Resource module1 = findResource("deep-path-for-modules:mod1"); + assertThat(module1.getName()).isEqualTo("Module 1"); + assertThat(module1.getVersion()).isEqualTo("1.2.3"); + + Resource module2 = findResource("deep-path-for-modules:mod2"); + assertThat(module2.getName()).isEqualTo("Module 2"); + assertThat(module2.getVersion()).isEqualTo("1.2.3"); + } + + /** + * SONARPLUGINS-2202 + */ + @Test + public void test_module_path_with_space() { + SonarRunner build = newRunner(new File("projects/multi-module/customization/module-path-with-space")); + + orchestrator.executeBuild(build); + + Resource rootProject = findResource("module-path-with-space"); + assertThat(rootProject.getName()).isEqualTo("Project with module path that contain spaces"); + assertThat(rootProject.getVersion()).isEqualTo("1.2.3"); + + // Verify that we have the modules + Resource module1 = findResource("module-path-with-space:module1"); + assertThat(module1.getName()).isEqualTo("Module 1"); + assertThat(module1.getVersion()).isEqualTo("1.2.3"); + + Resource module2 = findResource("module-path-with-space:module2"); + assertThat(module2.getName()).isEqualTo("Module 2"); + assertThat(module2.getVersion()).isEqualTo("1.2.3"); + } + + /** + * SONARPLUGINS-2202 + */ + @Test + public void test_overwriting_parent_properties() { + SonarRunner build = newRunner(new File("projects/multi-module/customization/overwriting-parent-properties")); + + orchestrator.executeBuild(build); + + Resource rootProject = findResource("overwriting-parent-properties"); + assertThat(rootProject.getName()).isEqualTo("Project with modules that overwrite properties"); + assertThat(rootProject.getVersion()).isEqualTo("1.2.3"); + assertThat(rootProject.getDescription()).isEqualTo("Description of root project"); + + // Verify that we have the modules + Resource module1 = findResource("overwriting-parent-properties:module1-new-key"); + assertThat(module1.getName()).isEqualTo("Module 1"); + assertThat(module1.getVersion()).isEqualTo("1.2.3"); + assertThat(module1.getDescription()).isEqualTo("Description of module 1"); + + Resource module2 = findResource("overwriting-parent-properties:module2-new-key"); + assertThat(module2.getName()).isEqualTo("Module 2"); + assertThat(module2.getVersion()).isEqualTo("1.2.3"); + assertThat(module2.getDescription()).isEqualTo("Description of module 2"); + } + + /** + * SONARPLUGINS-2202 + */ + @Test + public void test_using_config_file_property() { + SonarRunner build = newRunner(new File("projects/multi-module/advanced/using-config-file-prop")); + + orchestrator.executeBuild(build); + + Resource rootProject = findResource("using-config-file-prop"); + assertThat(rootProject.getName()).isEqualTo("Advanced use case - mostly used by the Ant task"); + assertThat(rootProject.getVersion()).isEqualTo("1.2.3"); + + // Verify that we have the modules + Resource module1 = findResource("using-config-file-prop:module1"); + assertThat(module1.getName()).isEqualTo("Module 1"); + assertThat(module1.getVersion()).isEqualTo("1.2.3"); + + Resource module2 = findResource("using-config-file-prop:module2"); + assertThat(module2.getName()).isEqualTo("Module 2"); + assertThat(module2.getVersion()).isEqualTo("1.2.3"); + } + + /** + * SONARPLUGINS-2202 + */ + @Test + public void should_fail_if_unexisting_base_dir() { + SonarRunner build = newRunner(new File("projects/multi-module/failures/unexisting-base-dir")); + + BuildResult result = orchestrator.executeBuildQuietly(build); + // expect build failure + assertThat(result.getStatus()).isNotEqualTo(0); + // with the following message + assertThat(result.getLogs()).contains("The base directory of the module 'module3' does not exist"); + + } + + /** + * SONARPLUGINS-2202 + */ + @Test + public void should_fail_if_unexisting_config_file() { + SonarRunner build = newRunner(new File("projects/multi-module/failures/unexisting-config-file")); + + BuildResult result = orchestrator.executeBuildQuietly(build); + // expect build failure + assertThat(result.getStatus()).isNotEqualTo(0); + // with the following message + assertThat(result.getLogs()).contains("The properties file of the module 'module1' does not exist"); + } + + private Resource findResource(String resourceKey) { + return orchestrator.getServer().getWsClient().find(new ResourceQuery(resourceKey)); + } +} diff --git a/it/src/test/java/com/sonar/runner/it/RunnerTestCase.java b/it/src/test/java/com/sonar/runner/it/RunnerTestCase.java new file mode 100644 index 0000000..bd308c4 --- /dev/null +++ b/it/src/test/java/com/sonar/runner/it/RunnerTestCase.java @@ -0,0 +1,69 @@ +/* + * SonarSource :: IT :: SonarQube Runner + * Copyright (C) 2009 SonarSource + * sonarqube@googlegroups.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02 + */ +package com.sonar.runner.it; + +import com.sonar.orchestrator.version.Version; + +import com.sonar.orchestrator.Orchestrator; +import com.sonar.orchestrator.OrchestratorBuilder; +import com.sonar.orchestrator.build.SonarRunner; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Rule; +import org.junit.rules.ExpectedException; + +import java.io.File; + +public abstract class RunnerTestCase { + + @Rule + public ExpectedException thrown = ExpectedException.none(); + + public static Orchestrator orchestrator = null; + + @BeforeClass + public static void startServer() { + OrchestratorBuilder builder = Orchestrator.builderEnv() + // TODO Java projects should be replaced by Xoo projects + .setOrchestratorProperty("javaVersion", "LATEST_RELEASE") + .addPlugin("java") + .setOrchestratorProperty("findbugsVersion", "LATEST_RELEASE") + .addPlugin("findbugs") + .setOrchestratorProperty("javascriptVersion", "LATEST_RELEASE") + .addPlugin("javascript"); + + orchestrator = builder.build(); + orchestrator.start(); + } + + @AfterClass + public static void stopServer() { + if (orchestrator != null) { + orchestrator.stop(); + } + } + + SonarRunner newRunner(File baseDir, String... keyValueProperties) { + SonarRunner runner = SonarRunner.create(baseDir, keyValueProperties); + String runnerVersion = Version.create(orchestrator.getConfiguration().getString("sonarRunner.version")).toString(); + runner.setRunnerVersion(runnerVersion); + return runner; + } +} diff --git a/it/src/test/java/com/sonar/runner/it/SonarRunnerTestSuite.java b/it/src/test/java/com/sonar/runner/it/SonarRunnerTestSuite.java new file mode 100644 index 0000000..e33768d --- /dev/null +++ b/it/src/test/java/com/sonar/runner/it/SonarRunnerTestSuite.java @@ -0,0 +1,30 @@ +/* + * SonarSource :: IT :: SonarQube Runner + * Copyright (C) 2009 SonarSource + * sonarqube@googlegroups.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02 + */ +package com.sonar.runner.it; + +import org.junit.runner.RunWith; +import org.junit.runners.Suite; +import org.junit.runners.Suite.SuiteClasses; + +@RunWith(Suite.class) +@SuiteClasses({JavaTest.class, MultimoduleTest.class}) +public class SonarRunnerTestSuite { + +} diff --git a/it/src/test/resources/requires-bytecode-profile.xml b/it/src/test/resources/requires-bytecode-profile.xml new file mode 100644 index 0000000..284596f --- /dev/null +++ b/it/src/test/resources/requires-bytecode-profile.xml @@ -0,0 +1,17 @@ + + + requires-bytecode + java + + + squid + CallToDeprecatedMethod + MINOR + + + findbugs + DM_EXIT + MAJOR + + + \ No newline at end of file diff --git a/it/src/test/resources/sonar-way-profile.xml b/it/src/test/resources/sonar-way-profile.xml new file mode 100644 index 0000000..a5b203d --- /dev/null +++ b/it/src/test/resources/sonar-way-profile.xml @@ -0,0 +1,691 @@ + + + sonar-way + java + + + common-java + DuplicatedBlocks + MAJOR + + + common-java + InsufficientBranchCoverage + MAJOR + + + minimumBranchCoverageRatio + 65.0 + + + + + squid + S00105 + MINOR + + + squid + MethodCyclomaticComplexity + MAJOR + + + max + 10 + + + + + squid + ClassCyclomaticComplexity + MAJOR + + + max + 200 + + + + + squid + CommentedOutCodeLine + MAJOR + + + squid + S00108 + MAJOR + + + squid + S00107 + MAJOR + + + maximumMethodParameters + 7 + + + + + squid + S00112 + MAJOR + + + squid + S00100 + MAJOR + + + format + ^[a-z][a-zA-Z0-9]*$ + + + + + squid + S00101 + MAJOR + + + format + ^[A-Z][a-zA-Z0-9]*$ + + + + + squid + S00114 + MAJOR + + + format + ^[A-Z][a-zA-Z0-9]*$ + + + + + squid + S00115 + MAJOR + + + format + ^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$ + + + + + squid + S00116 + MAJOR + + + format + ^[a-z][a-zA-Z0-9]*$ + + + + + squid + S00117 + MAJOR + + + format + ^[a-z][a-zA-Z0-9]*$ + + + + + squid + S00119 + MAJOR + + + format + ^[A-Z]$ + + + + + squid + S00120 + MAJOR + + + format + ^[a-z]+(\.[a-z][a-z0-9]*)*$ + + + + + squid + S00121 + MAJOR + + + squid + S00122 + MAJOR + + + squid + RightCurlyBraceSameLineAsNextBlockCheck + MAJOR + + + squid + RightCurlyBraceStartLineCheck + MAJOR + + + squid + LeftCurlyBraceEndLineCheck + MAJOR + + + squid + UselessParenthesesCheck + MAJOR + + + squid + ObjectFinalizeCheck + CRITICAL + + + squid + ObjectFinalizeOverridenCheck + CRITICAL + + + squid + ObjectFinalizeOverridenCallsSuperFinalizeCheck + BLOCKER + + + squid + ClassVariableVisibilityCheck + MAJOR + + + squid + ForLoopCounterChangedCheck + MAJOR + + + squid + LabelsShouldNotBeUsedCheck + MAJOR + + + squid + SwitchLastCaseIsDefaultCheck + MAJOR + + + squid + EmptyStatementUsageCheck + MAJOR + + + squid + ModifiersOrderCheck + MINOR + + + squid + AssignmentInSubExpressionCheck + MAJOR + + + squid + StringEqualityComparisonCheck + CRITICAL + + + squid + TrailingCommentCheck + MINOR + + + legalCommentPattern + ^\s*+[^\s]++$ + + + + + squid + UselessImportCheck + MINOR + + + squid + LowerCaseLongSuffixCheck + MAJOR + + + squid + MissingDeprecatedCheck + MAJOR + + + squid + HiddenFieldCheck + MAJOR + + + squid + S1133 + INFO + + + squid + S1134 + MAJOR + + + squid + S1135 + INFO + + + squid + S1118 + MAJOR + + + squid + S1132 + MAJOR + + + squid + S1126 + MAJOR + + + squid + S1125 + MINOR + + + squid + S1067 + MAJOR + + + max + 3 + + + + + squid + S1141 + MAJOR + + + squid + S1147 + CRITICAL + + + squid + S1143 + BLOCKER + + + squid + S1145 + MAJOR + + + squid + S1157 + MAJOR + + + squid + S1155 + MAJOR + + + squid + S1149 + MAJOR + + + squid + S1171 + MAJOR + + + squid + S1168 + MAJOR + + + squid + S1170 + MAJOR + + + squid + S1163 + MAJOR + + + squid + S106 + MAJOR + + + squid + S1165 + MAJOR + + + squid + S1066 + MAJOR + + + squid + S134 + MINOR + + + max + 3 + + + + + squid + S1181 + BLOCKER + + + squid + S1150 + MAJOR + + + squid + S1182 + MAJOR + + + squid + S1151 + MAJOR + + + max + 5 + + + + + squid + S128 + CRITICAL + + + squid + S1166 + MAJOR + + + squid + S1190 + MAJOR + + + squid + S1188 + MAJOR + + + max + 20 + + + + + squid + S1191 + MAJOR + + + + squid + S135 + MAJOR + + + squid + S1186 + MAJOR + + + squid + S1185 + MINOR + + + squid + S1174 + MAJOR + + + squid + S1175 + MAJOR + + + squid + S1153 + MINOR + + + squid + S1148 + CRITICAL + + + squid + S1195 + MINOR + + + squid + S1194 + MAJOR + + + squid + S1193 + MAJOR + + + squid + S1192 + MINOR + + + squid + S1158 + MAJOR + + + squid + S1215 + CRITICAL + + + squid + S1197 + MINOR + + + squid + S1220 + MAJOR + + + squid + S1221 + CRITICAL + + + squid + S1199 + MAJOR + + + squid + S1214 + MINOR + + + squid + S1201 + CRITICAL + + + squid + S1210 + CRITICAL + + + squid + S1206 + BLOCKER + + + squid + S1219 + CRITICAL + + + squid + S1301 + MINOR + + + squid + S1314 + MAJOR + + + squid + S1226 + MAJOR + + + squid + S1313 + MAJOR + + + squid + S1312 + MAJOR + + + format + LOG(?:GER)? + + + + + squid + S1318 + CRITICAL + + + squid + S1223 + MAJOR + + + squid + S1319 + MAJOR + + + squid + S1231 + MINOR + + + squid + S1444 + MAJOR + + + squid + S1452 + MAJOR + + + squid + S1481 + MAJOR + + + squid + S1068 + MAJOR + + + squid + S1317 + MAJOR + + + squid + S1596 + MAJOR + + + squid + UnusedPrivateMethod + MAJOR + + + squid + RedundantThrowsDeclarationCheck + MINOR + + + squid + S1160 + MAJOR + + + squid + S1217 + CRITICAL + + + squid + S1488 + MINOR + + + squid + S1602 + MAJOR + + + squid + S1611 + MINOR + + + \ No newline at end of file diff --git a/pom.xml b/pom.xml index 2b02cc0..ba1bb66 100644 --- a/pom.xml +++ b/pom.xml @@ -1,12 +1,12 @@ 4.0.0 - org.codehaus.sonar-plugins + org.sonarsource.parent parent - 19 + 23 - org.codehaus.sonar.runner + org.sonarsource.sonar-runner sonar-runner 2.5-SNAPSHOT pom @@ -14,15 +14,6 @@ http://docs.codehaus.org/display/SONAR/Analyzing+with+SonarQube+Runner 2011 - - - - codehaus-nexus-staging - Codehaus Release Repository - https://nexus.codehaus.org/service/local/staging/deploy/maven2/ - - - sonar-runner-api sonar-runner-batch diff --git a/sonar-runner-api/pom.xml b/sonar-runner-api/pom.xml index 6e94115..a1cf3c6 100644 --- a/sonar-runner-api/pom.xml +++ b/sonar-runner-api/pom.xml @@ -1,7 +1,7 @@ 4.0.0 - org.codehaus.sonar.runner + org.sonarsource.sonar-runner sonar-runner 2.5-SNAPSHOT diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/api/Dirs.java b/sonar-runner-api/src/main/java/org/sonar/runner/api/Dirs.java index c592237..a5da52d 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/api/Dirs.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/api/Dirs.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/api/EmbeddedRunner.java b/sonar-runner-api/src/main/java/org/sonar/runner/api/EmbeddedRunner.java index 21f0862..6b2ae23 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/api/EmbeddedRunner.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/api/EmbeddedRunner.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/api/LogOutput.java b/sonar-runner-api/src/main/java/org/sonar/runner/api/LogOutput.java index 4dfe94e..71a0c91 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/api/LogOutput.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/api/LogOutput.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/api/ProcessMonitor.java b/sonar-runner-api/src/main/java/org/sonar/runner/api/ProcessMonitor.java index 8d71214..cc1bcef 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/api/ProcessMonitor.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/api/ProcessMonitor.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/api/RunnerProperties.java b/sonar-runner-api/src/main/java/org/sonar/runner/api/RunnerProperties.java index e903d74..0a855b7 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/api/RunnerProperties.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/api/RunnerProperties.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/api/RunnerVersion.java b/sonar-runner-api/src/main/java/org/sonar/runner/api/RunnerVersion.java index 2aa3b97..d91dbf9 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/api/RunnerVersion.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/api/RunnerVersion.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/api/ScanProperties.java b/sonar-runner-api/src/main/java/org/sonar/runner/api/ScanProperties.java index 0ec4f45..8d8154b 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/api/ScanProperties.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/api/ScanProperties.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/api/StdOutLogOutput.java b/sonar-runner-api/src/main/java/org/sonar/runner/api/StdOutLogOutput.java index 016e614..eac27ce 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/api/StdOutLogOutput.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/api/StdOutLogOutput.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/api/Utils.java b/sonar-runner-api/src/main/java/org/sonar/runner/api/Utils.java index cef12b4..29ea62e 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/api/Utils.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/api/Utils.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/api/package-info.java b/sonar-runner-api/src/main/java/org/sonar/runner/api/package-info.java index cebd22d..4a62486 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/api/package-info.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/api/package-info.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/InternalProperties.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/InternalProperties.java index 48c3319..03e7f22 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/InternalProperties.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/InternalProperties.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedClassloader.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedClassloader.java index d5c52b3..958b1b0 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedClassloader.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedClassloader.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedLauncherFactory.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedLauncherFactory.java index 601776d..5c2a590 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedLauncherFactory.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedLauncherFactory.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedLauncherProxy.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedLauncherProxy.java index 411d731..629ca43 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedLauncherProxy.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/IsolatedLauncherProxy.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/JarDownloader.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/JarDownloader.java index 62fc157..f3f88ba 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/JarDownloader.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/JarDownloader.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/JarExtractor.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/JarExtractor.java index c4e3fa7..fee1d10 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/JarExtractor.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/JarExtractor.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/Jars.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/Jars.java index d181f23..262c859 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/Jars.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/Jars.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/RunnerException.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/RunnerException.java index 9d60947..6d35505 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/RunnerException.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/RunnerException.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/ServerConnection.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/ServerConnection.java index 291ee30..7abd093 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/ServerConnection.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/ServerConnection.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/TempCleaning.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/TempCleaning.java index 045e36d..89c07c7 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/TempCleaning.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/TempCleaning.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/VersionUtils.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/VersionUtils.java index 642f41e..6d9003b 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/VersionUtils.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/VersionUtils.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/main/java/org/sonar/runner/impl/package-info.java b/sonar-runner-api/src/main/java/org/sonar/runner/impl/package-info.java index d7ac772..4868737 100644 --- a/sonar-runner-api/src/main/java/org/sonar/runner/impl/package-info.java +++ b/sonar-runner-api/src/main/java/org/sonar/runner/impl/package-info.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/api/DirsTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/api/DirsTest.java index 3c45b32..0bce312 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/api/DirsTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/api/DirsTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/api/EmbeddedRunnerTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/api/EmbeddedRunnerTest.java index 386f669..e838381 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/api/EmbeddedRunnerTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/api/EmbeddedRunnerTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/api/RunnerVersionTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/api/RunnerVersionTest.java index ca8c651..f78b87c 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/api/RunnerVersionTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/api/RunnerVersionTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/api/UtilsTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/api/UtilsTest.java index 3d98cf0..653f61f 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/api/UtilsTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/api/UtilsTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedClassloaderTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedClassloaderTest.java index c1cb9a5..f2a681b 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedClassloaderTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedClassloaderTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedLauncherFactoryTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedLauncherFactoryTest.java index d9eb613..a186d72 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedLauncherFactoryTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedLauncherFactoryTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedLauncherProxyTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedLauncherProxyTest.java index a75bb54..9d47dad 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedLauncherProxyTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/IsolatedLauncherProxyTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarDownloaderTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarDownloaderTest.java index 35e02df..8c6cb6c 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarDownloaderTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarDownloaderTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarExtractorTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarExtractorTest.java index 8d2c0d7..9de107c 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarExtractorTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarExtractorTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarsTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarsTest.java index 047d4e7..a772901 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarsTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/JarsTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/MockHttpServer.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/MockHttpServer.java index 36e5d08..9613132 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/MockHttpServer.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/MockHttpServer.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/MockHttpServerInterceptor.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/MockHttpServerInterceptor.java index 2cbfc7e..221549d 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/MockHttpServerInterceptor.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/MockHttpServerInterceptor.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/NetworkUtil.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/NetworkUtil.java index f9bfd83..7ed852a 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/NetworkUtil.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/NetworkUtil.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/ServerConnectionTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/ServerConnectionTest.java index d926203..20016d8 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/ServerConnectionTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/ServerConnectionTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/TempCleaningTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/TempCleaningTest.java index 2037a62..1a05e47 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/TempCleaningTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/TempCleaningTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-api/src/test/java/org/sonar/runner/impl/VersionUtilsTest.java b/sonar-runner-api/src/test/java/org/sonar/runner/impl/VersionUtilsTest.java index e015a26..376ea42 100644 --- a/sonar-runner-api/src/test/java/org/sonar/runner/impl/VersionUtilsTest.java +++ b/sonar-runner-api/src/test/java/org/sonar/runner/impl/VersionUtilsTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - API * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-batch-interface/pom.xml b/sonar-runner-batch-interface/pom.xml index 9ccb3b9..6555e66 100644 --- a/sonar-runner-batch-interface/pom.xml +++ b/sonar-runner-batch-interface/pom.xml @@ -1,7 +1,7 @@ 4.0.0 - org.codehaus.sonar.runner + org.sonarsource.sonar-runner sonar-runner 2.5-SNAPSHOT diff --git a/sonar-runner-batch-interface/src/main/java/org/sonar/runner/batch/IsolatedLauncher.java b/sonar-runner-batch-interface/src/main/java/org/sonar/runner/batch/IsolatedLauncher.java index 21b0d73..834c11b 100644 --- a/sonar-runner-batch-interface/src/main/java/org/sonar/runner/batch/IsolatedLauncher.java +++ b/sonar-runner-batch-interface/src/main/java/org/sonar/runner/batch/IsolatedLauncher.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - Batch Interface * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-batch-interface/src/main/java/org/sonar/runner/batch/LogOutput.java b/sonar-runner-batch-interface/src/main/java/org/sonar/runner/batch/LogOutput.java index f17eb55..5fd3754 100644 --- a/sonar-runner-batch-interface/src/main/java/org/sonar/runner/batch/LogOutput.java +++ b/sonar-runner-batch-interface/src/main/java/org/sonar/runner/batch/LogOutput.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - Batch Interface * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-batch/pom.xml b/sonar-runner-batch/pom.xml index dc57821..e2fd475 100644 --- a/sonar-runner-batch/pom.xml +++ b/sonar-runner-batch/pom.xml @@ -1,7 +1,7 @@ 4.0.0 - org.codehaus.sonar.runner + org.sonarsource.sonar-runner sonar-runner 2.5-SNAPSHOT diff --git a/sonar-runner-batch/src/main/java/org/sonar/runner/batch/BatchIsolatedLauncher.java b/sonar-runner-batch/src/main/java/org/sonar/runner/batch/BatchIsolatedLauncher.java index 4241da4..6b6a710 100644 --- a/sonar-runner-batch/src/main/java/org/sonar/runner/batch/BatchIsolatedLauncher.java +++ b/sonar-runner-batch/src/main/java/org/sonar/runner/batch/BatchIsolatedLauncher.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - Batch * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-batch/src/main/java/org/sonar/runner/batch/Compatibility.java b/sonar-runner-batch/src/main/java/org/sonar/runner/batch/Compatibility.java index 88dd0c9..a2d16d0 100644 --- a/sonar-runner-batch/src/main/java/org/sonar/runner/batch/Compatibility.java +++ b/sonar-runner-batch/src/main/java/org/sonar/runner/batch/Compatibility.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - Batch * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-batch/src/test/java/org/sonar/runner/batch/IsolatedLauncherTest.java b/sonar-runner-batch/src/test/java/org/sonar/runner/batch/IsolatedLauncherTest.java index 610ff75..62f4435 100644 --- a/sonar-runner-batch/src/test/java/org/sonar/runner/batch/IsolatedLauncherTest.java +++ b/sonar-runner-batch/src/test/java/org/sonar/runner/batch/IsolatedLauncherTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - Batch * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/assembly.xml b/sonar-runner-cli/assembly.xml index 70a9969..d438fdf 100644 --- a/sonar-runner-cli/assembly.xml +++ b/sonar-runner-cli/assembly.xml @@ -13,7 +13,7 @@ true true - org.codehaus.sonar.runner:sonar-runner-api + org.sonarsource.sonar-runner:sonar-runner-api diff --git a/sonar-runner-cli/pom.xml b/sonar-runner-cli/pom.xml index 2c3d0c1..179b49f 100644 --- a/sonar-runner-cli/pom.xml +++ b/sonar-runner-cli/pom.xml @@ -1,7 +1,7 @@ 4.0.0 - org.codehaus.sonar.runner + org.sonarsource.sonar-runner sonar-runner 2.5-SNAPSHOT diff --git a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Cli.java b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Cli.java index 2c79dc8..f1a038b 100644 --- a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Cli.java +++ b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Cli.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Conf.java b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Conf.java index e32a06c..68627f7 100644 --- a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Conf.java +++ b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Conf.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Exit.java b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Exit.java index 7c2ed3c..6d53dc2 100644 --- a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Exit.java +++ b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Exit.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Logs.java b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Logs.java index a68e282..d69f3fd 100644 --- a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Logs.java +++ b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Logs.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Main.java b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Main.java index 6971bc6..6316122 100644 --- a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Main.java +++ b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Main.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/RunnerFactory.java b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/RunnerFactory.java index 60f6f31..3abe645 100644 --- a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/RunnerFactory.java +++ b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/RunnerFactory.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Shutdown.java b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Shutdown.java index de5341a..3c52bc5 100644 --- a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Shutdown.java +++ b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Shutdown.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Stats.java b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Stats.java index 5089c12..5173137 100644 --- a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Stats.java +++ b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/Stats.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/SystemInfo.java b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/SystemInfo.java index 090eafd..1ab1458 100644 --- a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/SystemInfo.java +++ b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/SystemInfo.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/package-info.java b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/package-info.java index f92c312..4a17c31 100644 --- a/sonar-runner-cli/src/main/java/org/sonar/runner/cli/package-info.java +++ b/sonar-runner-cli/src/main/java/org/sonar/runner/cli/package-info.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/CliTest.java b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/CliTest.java index 9eda2b9..a0332c2 100644 --- a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/CliTest.java +++ b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/CliTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/ConfTest.java b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/ConfTest.java index bfeb23d..9452463 100644 --- a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/ConfTest.java +++ b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/ConfTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/MainTest.java b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/MainTest.java index 5b7d8fe..857ed8c 100644 --- a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/MainTest.java +++ b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/MainTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/RunnerFactoryTest.java b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/RunnerFactoryTest.java index 29955d3..7ca2688 100644 --- a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/RunnerFactoryTest.java +++ b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/RunnerFactoryTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/ShutdownTest.java b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/ShutdownTest.java index 7e570b1..98a5b85 100644 --- a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/ShutdownTest.java +++ b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/ShutdownTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/StatsTest.java b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/StatsTest.java index 6093b41..ff8fa0b 100644 --- a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/StatsTest.java +++ b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/StatsTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/SystemInfoTest.java b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/SystemInfoTest.java index edeffff..8f16d34 100644 --- a/sonar-runner-cli/src/test/java/org/sonar/runner/cli/SystemInfoTest.java +++ b/sonar-runner-cli/src/test/java/org/sonar/runner/cli/SystemInfoTest.java @@ -1,7 +1,7 @@ /* * SonarQube Runner - CLI - Distribution * Copyright (C) 2011 SonarSource - * dev@sonar.codehaus.org + * sonarqube@googlegroups.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/travis.sh b/travis.sh index d7705a7..7f2d537 100755 --- a/travis.sh +++ b/travis.sh @@ -3,9 +3,26 @@ set -euo pipefail function installTravisTools { - curl -sSL https://raw.githubusercontent.com/sonarsource/travis-utils/v10/install.sh | bash + curl -sSL https://raw.githubusercontent.com/sonarsource/travis-utils/v11/install.sh | bash + source /tmp/travis-utils/env.sh } -installTravisTools -travis_build_green "SonarSource/sonarqube" "master" -mvn verify -B -e -V +case "$TESTS" in + +CI) + installTravisTools + travis_build_green "SonarSource/sonarqube" "master" + mvn verify -B -e -V + ;; + +IT-DEV) + cat /etc/hosts + rpm -qa | grep glibc + installTravisTools + mvn install -Dsource.skip=true -Denforcer.skip=true -Danimal.sniffer.skip=true -Dmaven.test.skip=true + travis_build_green "SonarSource/sonarqube" "master" + cd it + mvn -Dsonar.runtimeVersion="DEV" -DsonarRunner.version="2.5-SNAPSHOT" -Dmaven.test.redirectTestOutputToFile=false install + ;; + +esac