aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pom.xml2
-rw-r--r--src/main/java/org/sonarsource/scanner/cli/Main.java18
-rw-r--r--src/test/java/org/sonarsource/scanner/cli/MainTest.java6
3 files changed, 18 insertions, 8 deletions
diff --git a/pom.xml b/pom.xml
index 1d8ee3b..2b243fe 100644
--- a/pom.xml
+++ b/pom.xml
@@ -81,7 +81,7 @@
<dependency>
<groupId>org.sonarsource.scanner.lib</groupId>
<artifactId>sonar-scanner-java-library</artifactId>
- <version>3.1.1.261</version>
+ <version>3.2.0.370</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
diff --git a/src/main/java/org/sonarsource/scanner/cli/Main.java b/src/main/java/org/sonarsource/scanner/cli/Main.java
index fe53f1c..7d548b7 100644
--- a/src/main/java/org/sonarsource/scanner/cli/Main.java
+++ b/src/main/java/org/sonarsource/scanner/cli/Main.java
@@ -71,14 +71,20 @@ public class Main {
checkSkip(p);
configureLogging(p);
init(p);
- try (var engine = scannerEngineBootstrapper.bootstrap()) {
- var success = engine.analyze((Map) p);
- if (success) {
- displayExecutionResult(stats, "SUCCESS");
- status = Exit.SUCCESS;
+ try (var result = scannerEngineBootstrapper.bootstrap()) {
+ if (result.isSuccessful()) {
+ var engine = result.getEngineFacade();
+ var success = engine.analyze((Map) p);
+ if (success) {
+ displayExecutionResult(stats, "SUCCESS");
+ status = Exit.SUCCESS;
+ } else {
+ displayExecutionResult(stats, "FAILURE");
+ status = Exit.SCANNER_ENGINE_ERROR;
+ }
} else {
displayExecutionResult(stats, "FAILURE");
- status = Exit.SCANNER_ENGINE_ERROR;
+ status = Exit.INTERNAL_ERROR;
}
}
} catch (Throwable e) {
diff --git a/src/test/java/org/sonarsource/scanner/cli/MainTest.java b/src/test/java/org/sonarsource/scanner/cli/MainTest.java
index 746f5c9..9342138 100644
--- a/src/test/java/org/sonarsource/scanner/cli/MainTest.java
+++ b/src/test/java/org/sonarsource/scanner/cli/MainTest.java
@@ -30,6 +30,7 @@ import org.mockito.Mockito;
import org.slf4j.LoggerFactory;
import org.slf4j.event.Level;
import org.sonar.api.utils.MessageException;
+import org.sonarsource.scanner.lib.ScannerEngineBootstrapResult;
import org.sonarsource.scanner.lib.ScannerEngineBootstrapper;
import org.sonarsource.scanner.lib.ScannerEngineFacade;
import org.sonarsource.scanner.lib.ScannerProperties;
@@ -60,7 +61,10 @@ class MainTest {
@BeforeEach
void setUp() {
when(scannerEngineBootstrapperFactory.create(any(Properties.class), any(String.class))).thenReturn(bootstrapper);
- when(bootstrapper.bootstrap()).thenReturn(engine);
+ var result = mock(ScannerEngineBootstrapResult.class);
+ when(result.isSuccessful()).thenReturn(true);
+ when(result.getEngineFacade()).thenReturn(engine);
+ when(bootstrapper.bootstrap()).thenReturn(result);
when(engine.analyze(any())).thenReturn(true);
when(conf.properties()).thenReturn(properties);
}