123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- #!/bin/sh
- #
- # SonarQube Runner Startup Script for Unix
- #
- # Optional ENV vars:
- # SONAR_RUNNER_OPTS - Parameters passed to the Java VM when running Sonar
- # JAVA_HOME - Location of Java's installation
-
- # The following notice only apply to real_path function copied from
- # https://sites.google.com/site/jdisnard/realpath
- # Copyright 2010 Jon Disnard. All rights reserved.
- #
- # Redistribution and use in source and binary forms, with or without modification, are
- # permitted provided that the following conditions are met:
- #
- # 1. Redistributions of source code must retain the above copyright notice, this list of
- # conditions and the following disclaimer.
- #
- # 2. Redistributions in binary form must reproduce the above copyright notice, this list
- # of conditions and the following disclaimer in the documentation and/or other materials
- # provided with the distribution.
- #
- # THIS SOFTWARE IS PROVIDED BY Jon Disnard ``AS IS'' AND ANY EXPRESS OR IMPLIED
- # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
- # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
- # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
- # ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- #
- # The views and conclusions contained in the software and documentation are those of the
- # authors and should not be interpreted as representing official policies, either expressed
- # or implied, of Jon Disnard.
- real_path () {
- target=$1
-
- (
- while true; do
- cd "$(dirname "$target")"
- target=$(basename "$target")
- link=$(readlink "$target")
- test "$link" || break
- target=$link
- done
-
- echo "$(pwd -P)/$target"
- )
- }
-
- echo WARN: 'sonar-runner' script is deprecated. Please use 'sonar-scanner' instead.
-
- script_path="$0"
-
- if [ -h "$script_path" ] ; then
- # resolve recursively symlinks
- script_path=$(real_path "$script_path")
- fi
-
- sonar_runner_home=$(dirname "$script_path")/..
-
- # make it fully qualified
- sonar_runner_home=$(cd "$sonar_runner_home" && pwd)
-
- # check that the sonar_runner_home has been correctly set
- if [ ! -f "$sonar_runner_home/lib/sonar-scanner-cli-${project.version}.jar" ] ; then
- echo '$sonar_runner_home' does not point to a valid installation directory: $sonar_runner_home
- exit 1
- fi
-
- if [ -n "$JAVA_HOME" ]
- then
- java_cmd="$JAVA_HOME/bin/java"
- else
- java_cmd="$(which java)"
- fi
-
- if [ -n "$SONAR_RUNNER_OPTS" ] ;
- then
- echo WARN: '$SONAR_RUNNER_OPTS' is deprecated. Please use '$SONAR_SCANNER_OPTS' instead.
- if [ -z "$SONAR_SCANNER_OPTS" ] ; then
- SONAR_SCANNER_OPTS=$SONAR_RUNNER_OPTS
- fi
- fi
-
- jar_file=${sonar_runner_home}/lib/sonar-scanner-cli-${project.version}.jar
- project_home=$(pwd)
-
- #echo "Info: Using sonar-runner at $sonar_runner_home"
- #echo "Info: Using java at $java_cmd"
- #echo "Info: Using classpath $jar_file"
- #echo "Info: Using project $project_home"
-
- exec "$java_cmd" \
- -Djava.awt.headless=true \
- $SONAR_SCANNER_OPTS \
- -classpath "$jar_file" \
- -Dscanner.home="$sonar_runner_home" \
- -Dproject.home="$project_home" \
- org.sonarsource.scanner.cli.Main "$@"
|