AWS : SonarScanner fails from time to time

Hi there,

We’re running a sonarqube community server on AWS, it’s in a fargate container behind an application load balancer, we can connect to it, and everything works fine.

On the other hand, we have the sonarscanner container running in a codebuild project.

The scanner fails from time to time with this error message :

[Container] 2021/07/22 15:57:39 Running command sonar-scanner -Dsonar.verbose=true -Dsonar.projectKey=$repoName -Dsonar.sources=. -X -Dsonar.host.url=$SONARQUBE_ENDPOINT -Dsonar.login=$SONARQUBE_TOKEN
391 15:57:39.662 INFO: Scanner configuration file: /opt/sonar-scanner/conf/sonar-scanner.properties
392 15:57:39.665 INFO: Project root configuration file: NONE
393 15:57:39.713 INFO: SonarScanner 4.6.2.2472
394 15:57:39.713 INFO: Java 11.0.11 AdoptOpenJDK (64-bit)
395 15:57:39.713 INFO: Linux 4.14.225-121.362.amzn1.x86_64 amd64
396 15:57:39.977 DEBUG: keyStore is :
397 15:57:39.977 DEBUG: keyStore type is : pkcs12
398 15:57:39.977 DEBUG: keyStore provider is :
399 15:57:39.977 DEBUG: init keystore
400 15:57:39.978 DEBUG: init keymanager of type SunX509
401 15:57:40.187 DEBUG: Create: /opt/sonar-scanner/.sonar/cache
402 15:57:40.188 INFO: User cache: /opt/sonar-scanner/.sonar/cache
403 15:57:40.188 DEBUG: Create: /opt/sonar-scanner/.sonar/cache/_tmp
404 15:57:40.191 DEBUG: Extract sonar-scanner-api-batch in temp...
405 15:57:40.198 DEBUG: Get bootstrap index...
406 15:57:40.198 DEBUG: Download: ***/batch/index
407 15:57:50.316 ERROR: SonarQube server [***] can not be reached
408 15:57:50.316 INFO: ------------------------------------------------------------------------
409 15:57:50.316 INFO: EXECUTION FAILURE
410 15:57:50.316 INFO: ------------------------------------------------------------------------
411 15:57:50.317 INFO: Total time: 10.667s
412 15:57:50.326 INFO: Final Memory: 3M/14M
413 15:57:50.326 INFO: ------------------------------------------------------------------------
414 15:57:50.326 ERROR: Error during SonarScanner execution
415 org.sonarsource.scanner.api.internal.ScannerException: Unable to execute SonarScanner analysis
416 at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory.lambda$createLauncher$0(IsolatedLauncherFactory.java:85)
417 at java.base/java.security.AccessController.doPrivileged(Native Method)
418 at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory.createLauncher(IsolatedLauncherFactory.java:74)
419 at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory.createLauncher(IsolatedLauncherFactory.java:70)
420 at org.sonarsource.scanner.api.EmbeddedScanner.doStart(EmbeddedScanner.java:185)
421 at org.sonarsource.scanner.api.EmbeddedScanner.start(EmbeddedScanner.java:123)
422 at org.sonarsource.scanner.cli.Main.execute(Main.java:73)
423 at org.sonarsource.scanner.cli.Main.main(Main.java:61)
424 Caused by: java.lang.IllegalStateException: Fail to get bootstrap index from server
425 at org.sonarsource.scanner.api.internal.BootstrapIndexDownloader.getIndex(BootstrapIndexDownloader.java:42)
426 at org.sonarsource.scanner.api.internal.JarDownloader.getScannerEngineFiles(JarDownloader.java:58)
427 at org.sonarsource.scanner.api.internal.JarDownloader.download(JarDownloader.java:53)
428 at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory.lambda$createLauncher$0(IsolatedLauncherFactory.java:76)
429 ... 7 more
430 Caused by: java.net.SocketTimeoutException: connect timed out
431 at java.base/java.net.PlainSocketImpl.socketConnect(Native Method)
432 at java.base/java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
433 at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
434 at java.base/java.net.AbstractPlainSocketImpl.connect(Unknown Source)
435 at java.base/java.net.SocksSocketImpl.connect(Unknown Source)
436 at java.base/java.net.Socket.connect(Unknown Source)
437 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.platform.Platform.connectSocket(Platform.java:130)
438 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.RealConnection.connectSocket(RealConnection.java:263)
439 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.RealConnection.connect(RealConnection.java:183)
440 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.java:224)
441 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.java:108)
442 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.ExchangeFinder.find(ExchangeFinder.java:88)
443 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.Transmitter.newExchange(Transmitter.java:169)
444 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:41)
445 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
446 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:117)
447 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:94)
448 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
449 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:117)
450 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
451 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
452 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:88)
453 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
454 at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:117)
455 at org.sonarsource.scanner.api.internal.shaded.okhttp.RealCall.getResponseWithInterceptorChain(RealCall.java:221)
456 at org.sonarsource.scanner.api.internal.shaded.okhttp.RealCall.execute(RealCall.java:81)
457 at org.sonarsource.scanner.api.internal.ServerConnection.callUrl(ServerConnection.java:115)
458 at org.sonarsource.scanner.api.internal.ServerConnection.downloadString(ServerConnection.java:99)
459 at org.sonarsource.scanner.api.internal.BootstrapIndexDownloader.getIndex(BootstrapIndexDownloader.java:39)
460 ... 10 more

Hi,

Welcome to the community!

This failure is caused by the inability to contact the SonarQube server.

You should talk to your network folks.

 
:woman_shrugging:
Ann

Hi Ann,

It’s a late response, but thank you, it was indeed a network issue