From f2df80dbd277ffa97d2d43f8e44368944d3e1e4b Mon Sep 17 00:00:00 2001 From: Julien HENRY Date: Mon, 6 May 2024 15:48:11 +0200 Subject: [PATCH] Update to the latest scanner-java-library --- .cirrus.yml | 2 + it/pom.xml | 38 ++++++++------ .../sonarsource/scanner/it/ScannerTest.java | 16 ++---- .../scanner/it/SonarScannerTestSuite.java | 2 +- pom.xml | 6 +-- .../org/sonarsource/scanner/cli/Conf.java | 4 +- .../cli/ScannerEngineBootstrapperFactory.java | 2 +- .../scanner/cli/Slf4jLogOutput.java | 50 ------------------ .../scanner/cli/Slf4jLogOutputTest.java | 51 ------------------- 9 files changed, 36 insertions(+), 135 deletions(-) delete mode 100644 src/main/java/org/sonarsource/scanner/cli/Slf4jLogOutput.java delete mode 100644 src/test/java/org/sonarsource/scanner/cli/Slf4jLogOutputTest.java diff --git a/.cirrus.yml b/.cirrus.yml index fd15fa2..0405791 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -77,6 +77,7 @@ linux_qa_java17_task: matrix: - SQ_VERSION: LATEST_RELEASE[9.9] - SQ_VERSION: LATEST_RELEASE + - SQ_VERSION: DEV maven_cache: folder: ${CIRRUS_WORKING_DIR}/.m2/repository qa_script: @@ -103,6 +104,7 @@ win_qa_java17_task: matrix: - SQ_VERSION: LATEST_RELEASE[9.9] - SQ_VERSION: LATEST_RELEASE + - SQ_VERSION: DEV maven_cache: folder: ${CIRRUS_WORKING_DIR}/.m2/repository qa_script: diff --git a/it/pom.xml b/it/pom.xml index 2ad29b7..cfb9282 100644 --- a/it/pom.xml +++ b/it/pom.xml @@ -67,22 +67,28 @@ - - - - org.apache.maven.plugins - maven-surefire-plugin - - - ${env.PROJECT_VERSION} - - - **/SonarScannerTestSuite.java - - - - - + + + org.apache.maven.plugins + maven-surefire-plugin + + + + en + US + + + en_US + + + ${env.PROJECT_VERSION} + + + **/SonarScannerTestSuite.java + + + + diff --git a/it/src/test/java/com/sonarsource/scanner/it/ScannerTest.java b/it/src/test/java/com/sonarsource/scanner/it/ScannerTest.java index 8055d82..d6b9bf7 100644 --- a/it/src/test/java/com/sonarsource/scanner/it/ScannerTest.java +++ b/it/src/test/java/com/sonarsource/scanner/it/ScannerTest.java @@ -164,17 +164,14 @@ public class ScannerTest extends ScannerTestCase { @Test public void should_use_environment_prop() { SonarScanner build = newScanner(new File("projects/simple-sample")) - .setEnvironmentVariable("SONAR_HOST_URL", "http://from-env.org"); + .setEnvironmentVariable("SONAR_HOST_URL", "http://www.google.com/404"); BuildRunner runner = new BuildRunner(orchestrator.getConfiguration()); BuildResult buildResult = runner.runQuietly(null, build); assertThat(buildResult.isSuccess()).isFalse(); assertThat(buildResult.getLogs()) - .containsAnyOf( - "No such host is known (from-env.org)", // Windows - "from-env.org: Name or service not known" // Linux - ); + .contains("Error status returned by url [http://www.google.com/404/api/v2/analysis/version]: 404"); } @Test @@ -192,18 +189,15 @@ public class ScannerTest extends ScannerTestCase { public void should_fail_if_unable_to_connect() { SonarScanner build = newScanner(new File("projects/simple-sample")) //env property should be overridden - .setEnvironmentVariable("SONAR_HOST_URL", "http://from-env.org") - .setProperty("sonar.host.url", "http://foo"); + .setEnvironmentVariable("SONAR_HOST_URL", "http://www.google.com") + .setProperty("sonar.host.url", "http://www.google.com/404"); BuildResult result = orchestrator.executeBuildQuietly(build); // expect build failure assertThat(result.isSuccess()).isFalse(); // with the following message assertThat(result.getLogs()) - .containsAnyOf( - "No such host is known (foo)", // Windows - "foo: No address associated with hostname" // Linux - ); + .contains("Error status returned by url [http://www.google.com/404/api/v2/analysis/version]: 404"); } // SONARPLUGINS-3574 diff --git a/it/src/test/java/com/sonarsource/scanner/it/SonarScannerTestSuite.java b/it/src/test/java/com/sonarsource/scanner/it/SonarScannerTestSuite.java index e3222a5..8d4df88 100644 --- a/it/src/test/java/com/sonarsource/scanner/it/SonarScannerTestSuite.java +++ b/it/src/test/java/com/sonarsource/scanner/it/SonarScannerTestSuite.java @@ -38,7 +38,7 @@ public class SonarScannerTestSuite { private static OrchestratorRule createOrchestrator() { String sonarVersion = System - .getProperty("sonar.runtimeVersion", "LATEST_RELEASE[9.9]"); + .getProperty("sonar.runtimeVersion", "DEV"); return OrchestratorRule.builderEnv() .useDefaultAdminCredentialsForBuilds(true) .setSonarVersion(sonarVersion) diff --git a/pom.xml b/pom.xml index dbe822e..226c511 100644 --- a/pom.xml +++ b/pom.xml @@ -66,7 +66,7 @@ org.sonarsource.scanner.lib sonar-scanner-java-library - 3.0.0.114 + 3.0.0.141 ch.qos.logback @@ -213,8 +213,8 @@ - 4100000 - 4200000 + 4300000 + 4400000 ${project.build.directory}/sonar-scanner-${project.version}.zip diff --git a/src/main/java/org/sonarsource/scanner/cli/Conf.java b/src/main/java/org/sonarsource/scanner/cli/Conf.java index b1cbe62..47f431f 100644 --- a/src/main/java/org/sonarsource/scanner/cli/Conf.java +++ b/src/main/java/org/sonarsource/scanner/cli/Conf.java @@ -81,8 +81,8 @@ class Conf { return resolver.resolve(); } - private Map loadEnvironmentProperties() { - return EnvironmentConfig.load(new Slf4jLogOutput()); + private static Map loadEnvironmentProperties() { + return EnvironmentConfig.load(); } private Properties loadGlobalProperties() { diff --git a/src/main/java/org/sonarsource/scanner/cli/ScannerEngineBootstrapperFactory.java b/src/main/java/org/sonarsource/scanner/cli/ScannerEngineBootstrapperFactory.java index 63ee9d0..a0983d9 100644 --- a/src/main/java/org/sonarsource/scanner/cli/ScannerEngineBootstrapperFactory.java +++ b/src/main/java/org/sonarsource/scanner/cli/ScannerEngineBootstrapperFactory.java @@ -38,7 +38,7 @@ class ScannerEngineBootstrapperFactory { } ScannerEngineBootstrapper newScannerEngineBootstrapper(String appName, String appVersion) { - return ScannerEngineBootstrapper.create(appName, appVersion, new Slf4jLogOutput()); + return ScannerEngineBootstrapper.create(appName, appVersion); } diff --git a/src/main/java/org/sonarsource/scanner/cli/Slf4jLogOutput.java b/src/main/java/org/sonarsource/scanner/cli/Slf4jLogOutput.java deleted file mode 100644 index 2ce5cba..0000000 --- a/src/main/java/org/sonarsource/scanner/cli/Slf4jLogOutput.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * SonarScanner CLI - * Copyright (C) 2011-2024 SonarSource SA - * mailto:info AT sonarsource DOT 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 02110-1301, USA. - */ -package org.sonarsource.scanner.cli; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.sonarsource.scanner.lib.LogOutput; - -public class Slf4jLogOutput implements LogOutput { - - private static final Logger LOG = LoggerFactory.getLogger(Slf4jLogOutput.class); - - @Override - public void log(String s, Level level) { - switch (level) { - case TRACE: - LOG.trace(s); - break; - case DEBUG: - LOG.debug(s); - break; - case INFO: - LOG.info(s); - break; - case WARN: - LOG.warn(s); - break; - case ERROR: - LOG.error(s); - break; - } - } -} diff --git a/src/test/java/org/sonarsource/scanner/cli/Slf4jLogOutputTest.java b/src/test/java/org/sonarsource/scanner/cli/Slf4jLogOutputTest.java deleted file mode 100644 index adf29f4..0000000 --- a/src/test/java/org/sonarsource/scanner/cli/Slf4jLogOutputTest.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * SonarScanner CLI - * Copyright (C) 2011-2024 SonarSource SA - * mailto:info AT sonarsource DOT 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 02110-1301, USA. - */ -package org.sonarsource.scanner.cli; - -import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.extension.RegisterExtension; -import org.slf4j.event.Level; -import org.sonarsource.scanner.lib.LogOutput; -import testutils.LogTester; - -import static org.assertj.core.api.Assertions.assertThat; - -class Slf4jLogOutputTest { - - @RegisterExtension - LogTester logTester = new LogTester().setLevel(Level.TRACE); - - @Test - void make_coverage_happy() { - var underTest = new Slf4jLogOutput(); - underTest.log("trace", LogOutput.Level.TRACE); - underTest.log("debug", LogOutput.Level.DEBUG); - underTest.log("info", LogOutput.Level.INFO); - underTest.log("warn", LogOutput.Level.WARN); - underTest.log("error", LogOutput.Level.ERROR); - - assertThat(logTester.logs(Level.TRACE)).containsOnly("trace"); - assertThat(logTester.logs(Level.DEBUG)).containsOnly("debug"); - assertThat(logTester.logs(Level.INFO)).containsOnly("info"); - assertThat(logTester.logs(Level.WARN)).containsOnly("warn"); - assertThat(logTester.logs(Level.ERROR)).containsOnly("error"); - } - -} -- 2.39.5