diff --git a/.circleci/config.yml b/.circleci/config.yml
index 53aa2d39..3046017e 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -60,6 +60,13 @@ workflows:
filters:
tags:
only: /.*/
+ - sonar:
+ context: "OpenNMS Build"
+ requires:
+ - build
+ filters:
+ tags:
+ only: /.*/
- build-docs:
context: "OpenNMS Build"
requires:
@@ -427,3 +434,14 @@ jobs:
name: Push packages to CloudSmith
command: .circleci/scripts/publish-cloudsmith.sh
+ sonar:
+ executor: build-executor
+ steps:
+ - attach_workspace:
+ at: ~/
+ - run:
+ name: Run SonarQube Code Analysis
+ when: always
+ command: |
+ mvn -Psonar,coverage -Dbuild.packages clean verify dependency:resolve-plugins dependency:go-offline \
+ sonar:sonar -Dsonar.login=$SONARCLOUD_LOGIN
diff --git a/pom.xml b/pom.xml
index cb7acc61..146f74c1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -95,6 +95,8 @@
1.1.1
4.5.13
4.4.15
+ 3.7.0.1746
+ 0.8.8
@@ -415,6 +417,16 @@
+
+ org.sonarsource.scanner.maven
+ sonar-maven-plugin
+ ${sonarVersion}
+
+
+ org.jacoco
+ jacoco-maven-plugin
+ ${jacoco.version}
+
@@ -517,10 +529,11 @@
org.apache.maven.plugins
maven-surefire-plugin
2.22.1
-
-
- -Xmx1024m -Xms1024m -XX:MaxPermSize=512m -Djdk.net.URLClassPath.disableClassPathURLCheck=true
-
+
+
+
+
+
org.apache.maven.plugins
@@ -594,5 +607,47 @@
-Xdoclint:none
+
+ sonar
+
+ false
+
+
+ https://sonarcloud.io
+ opennms
+ OpenNMS_alec
+ ${project.artifactId}
+
+
+
+ coverage
+
+
+
+ org.jacoco
+ jacoco-maven-plugin
+
+
+ prepare-agent
+
+ prepare-agent
+
+
+
+ report
+
+ report
+
+
+
+ XML
+
+
+
+
+
+
+
+