2 # SPDX-License-Identifier: EPL-1.0
3 ##############################################################################
4 # Copyright (c) 2017 The Linux Foundation and others.
6 # All rights reserved. This program and the accompanying materials
7 # are made available under the terms of the Eclipse Public License v1.0
8 # which accompanies this distribution, and is available at
9 # http://www.eclipse.org/legal/epl-v10.html
10 ##############################################################################
11 echo "---> maven-sonar.sh"
12 # This script builds a Maven project and deploys it into a staging repo which
13 # can be used to deploy elsewhere later eg. Nexus staging / snapshot repos.
15 # DO NOT enable -u because $MAVEN_PARAMS and $MAVEN_OPTIONS could be unbound.
16 # Ensure we fail the job if any steps fail.
23 params+=("--global-settings $GLOBAL_SETTINGS_FILE")
24 params+=("--settings $SETTINGS_FILE")
26 # Disable SC2086 because we want to allow word splitting for $MAVEN_* parameters.
27 # shellcheck disable=SC2086
28 _JAVA_OPTIONS="$JAVA_OPTS" $MVN $MAVEN_GOALS \
31 $MAVEN_OPTIONS $MAVEN_PARAMS
33 if [ "$SONAR_HOST_URL" = "https://sonarcloud.io" ]; then
34 params+=("-Dsonar.projectKey=$PROJECT_KEY")
35 params+=("-Dsonar.organization=$PROJECT_ORGANIZATION")
36 params+=("-Dsonar.login=$API_TOKEN")
39 # Disable SC2086 because we want to allow word splitting for $MAVEN_* parameters.
40 # shellcheck disable=SC2086
41 "$MVN" $SONAR_MAVEN_GOAL \
42 -e -Dsonar -Dsonar.host.url="$SONAR_HOST_URL" \
44 $MAVEN_OPTIONS $MAVEN_PARAMS