@@ -24,6 +24,13 @@ pipeline {
24
24
downstream_job_name = " wktui-sign"
25
25
TAG_NAME = sh(returnStdout : true , script : ' /usr/bin/git describe --abbrev=0 --tags' ). trim()
26
26
is_release = " true"
27
+
28
+ sonarscanner_version = ' 4.7.0.2747'
29
+ sonarscanner_zip_file = " sonar-scanner-cli-${ sonarscanner_version} .zip"
30
+ sonarscanner_download_url = " https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/${ sonarscanner_zip_file} "
31
+
32
+ sonar_org = ' oracle'
33
+ sonar_project_key = " ${ sonar_org} _weblogic-toolkit-ui"
27
34
}
28
35
stages {
29
36
stage(' Compute file version number' ) {
@@ -53,6 +60,9 @@ pipeline {
53
60
linux_node_exe = " ${ linux_node_dir} /bin/node"
54
61
linux_npm_modules_dir = " ${ linux_node_dir} /lib"
55
62
linux_npm_exe = " ${ linux_node_dir} /bin/npm"
63
+
64
+ sonarscanner_install_dir = " ${ WORKSPACE} /sonar-scanner-${ sonarscanner_version} "
65
+ sonarscanner_exe = " ${ sonarscanner_install_dir} /bin/sonar-scanner"
56
66
}
57
67
stages {
58
68
stage(' Linux Echo Environment' ) {
@@ -119,10 +129,43 @@ pipeline {
119
129
sh ' cd ${WORKSPACE}/electron; PATH="${linux_node_dir}/bin:$PATH" ${linux_npm_exe} run install-tools; cd ${WORKSPACE}'
120
130
}
121
131
}
122
- stage(' Linux Run Unit Tests' ) {
132
+ stage(' Install SonarScanner' ) {
133
+ steps {
134
+ sh " curl -x ${ WKTUI_PROXY} ${ sonarscanner_download_url} --output ${ WORKSPACE} /${ sonarscanner_zip_file} "
135
+ sh " unzip ${ WORKSPACE} /${ sonarscanner_zip_file} "
136
+ sh " rm -f ${ WORKSPACE} /${ sonarscanner_zip_file} "
137
+ }
138
+ }
139
+ stage(' Linux Run Unit Tests with Coverage' ) {
140
+ steps {
141
+ sh ' cd ${WORKSPACE}/electron; PATH="${linux_node_dir}/bin:$PATH" ${linux_npm_exe} run coverage; cd ${WORKSPACE}'
142
+ sh ' cd ${WORKSPACE}/webui; PATH="${linux_node_dir}/bin:$PATH" ${linux_npm_exe} run coverage; cd ${WORKSPACE}'
143
+ }
144
+ }
145
+ stage(' Run Sonar Analysis' ) {
146
+ tools {
147
+ jdk " JDK 11.0.9"
148
+ }
149
+ environment {
150
+ electron_coverage = " ${ WORKSPACE} /electron/coverage/lcov.info"
151
+ webui_coverage = " ${ WORKSPACE} /webui/coverage/lcov.info"
152
+ lcov_report_paths = " ${ electron_coverage} ,${ webui_coverage} "
153
+ }
123
154
steps {
124
- sh ' cd ${WORKSPACE}/electron; PATH="${linux_node_dir}/bin:$PATH" ${linux_npm_exe} test; cd ${WORKSPACE}'
125
- sh ' cd ${WORKSPACE}/webui; PATH="${linux_node_dir}/bin:$PATH" ${linux_npm_exe} test; cd ${WORKSPACE}'
155
+ echo " JAVA_HOME = ${ JAVA_HOME} "
156
+ sh " which java"
157
+ sh " java -version"
158
+ withSonarQubeEnvironment(' SonarCloud' ) {
159
+ sh """
160
+ SONAR_SCANNER_OPTS="-server"; export SONAR_SCANNER_OPTS
161
+ ${ sonarscanner_exe} \
162
+ -Dsonar.organization=${ sonar_org} \
163
+ -Dsonar.projectKey=${ sonar_project_key} \
164
+ -Dsonar.projectVersion=${ version_prefix} \
165
+ -Dsonar.branch.name=${ BRANCH_NAME} \
166
+ -Dsonar.javascript.lcov.reportPaths=${ lcov_report_paths}
167
+ """
168
+ }
126
169
}
127
170
}
128
171
stage(' Linux Run eslint' ) {
0 commit comments