diff options
author | philippe-perrin-sonarsource <philippe.perrin@sonarsource.com> | 2019-06-05 16:02:05 +0200 |
---|---|---|
committer | SonarTech <sonartech@sonarsource.com> | 2019-06-11 20:21:11 +0200 |
commit | 41f73e8c27d6b74cc41f087e2b60f18efd4ba675 (patch) | |
tree | a98f1a72c911c7368d0bd1e588543ecacddb8fb2 /scripts | |
parent | 4c080d0e9ebdc3d39f9688eb3dd861ef29859d00 (diff) | |
download | sonarqube-41f73e8c27d6b74cc41f087e2b60f18efd4ba675.tar.gz sonarqube-41f73e8c27d6b74cc41f087e2b60f18efd4ba675.zip |
Add support for Windows in ./scripts/start.sh
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/os.sh | 25 | ||||
-rwxr-xr-x | scripts/start.sh | 15 | ||||
-rwxr-xr-x | scripts/stop.sh | 16 |
3 files changed, 37 insertions, 19 deletions
diff --git a/scripts/os.sh b/scripts/os.sh new file mode 100644 index 00000000000..0564e3c2adb --- /dev/null +++ b/scripts/os.sh @@ -0,0 +1,25 @@ +#!/usr/bin/env bash +############################### +# Helper for OS folders and scripts +############################### + +set -euo pipefail + +if [[ "${OSTYPE:-}" == "darwin"* ]]; then + OS_DIR='macosx-universal-64' + SH_FILE="sonar.sh" +elif [[ "${OSTYPE:-}" == "msys"* ]]; then + OS_DIR='windows-x86-64' + SH_FILE="StartSonar.bat" +else + OS_DIR='linux-x86-64' + SH_FILE="sonar.sh" +fi + +runSQ() { + if [[ "${OSTYPE:-}" == "msys"* ]]; then + "$1" + else + "$1" start + fi +}
\ No newline at end of file diff --git a/scripts/start.sh b/scripts/start.sh index 941b0ba1c97..1971abcaab8 100755 --- a/scripts/start.sh +++ b/scripts/start.sh @@ -24,6 +24,7 @@ if [ -r "$ROOT/private/scripts/editions.sh" ]; then fi source "$ROOT/scripts/logs.sh" source "$ROOT/scripts/stop.sh" +source "$ROOT/scripts/os.sh" PATCHES="" EDITION="$DEFAULT_EDITION" @@ -47,12 +48,6 @@ EDITION=$(resolveAliases "$EDITION") checkEdition "$EDITION" checkLogArgument "$LOG" -if [[ "${OSTYPE:-}" == "darwin"* ]]; then - OS='macosx-universal-64' -else - OS='linux-x86-64' -fi - OSS_ZIP="$(distributionDirOf "community")/$(baseFileNameOf "community")-*.zip" if ! ls ${OSS_ZIP} &> /dev/null; then echo 'Sources are not built' @@ -64,8 +59,8 @@ stopAny cd "$(distributionDirOf "$EDITION")" -SH_FILE="sonarqube-*/bin/$OS/sonar.sh" -if ! ls ${SH_FILE} &> /dev/null; then +SH_FILE_DIR="sonarqube-*/bin/$OS_DIR/" +if ! ls $SH_FILE_DIR &> /dev/null; then BASE_FILE_NAME="$(baseFileNameOf "$EDITION")" echo "Unpacking ${BASE_FILE_NAME}..." ZIP_FILE="${BASE_FILE_NAME}-*.zip" @@ -78,7 +73,7 @@ cd "$ROOT" source "$ROOT"/scripts/patches_utils.sh -SQ_EXEC="$SQ_HOME/bin/$OS/sonar.sh" +SQ_EXEC="$SQ_HOME/bin/$OS_DIR/$SH_FILE" # invoke patches if at least one was specified # each patch is passed the path to the SQ instance home directory as first and only argument @@ -86,7 +81,7 @@ if [ "$PATCHES" ]; then call_patches "$PATCHES" "$SQ_HOME" fi -"$SQ_EXEC" start +runSQ $SQ_EXEC sleep 1 doTail "$LOG" diff --git a/scripts/stop.sh b/scripts/stop.sh index 55f3757c30e..0cc9e61113e 100755 --- a/scripts/stop.sh +++ b/scripts/stop.sh @@ -7,24 +7,22 @@ set -euo pipefail ROOT=$(pwd) source "$ROOT/scripts/editions.sh" +source "$ROOT/scripts/os.sh" if [ -r "$ROOT/private/scripts/editions.sh" ]; then source "$ROOT/private/scripts/editions.sh" fi -if [[ "$OSTYPE" == "darwin"* ]]; then - OS='macosx-universal-64' -else - OS='linux-x86-64' -fi - stopAny() { - for edition in $EDITIONS; do - SONAR_SH="$(distributionDirOf "$edition")/sonarqube-*/bin/$OS/sonar.sh" + # Don't try to stop on windows for now + if [[ "${OSTYPE:-}" != "msys" ]]; then + for edition in $EDITIONS; do + SONAR_SH="$(distributionDirOf "$edition")/sonarqube-*/bin/$OS_DIR/sonar.sh" if ls $SONAR_SH &> /dev/null; then echo "$(baseFileNameOf "$edition") is unpacked" sh $SONAR_SH stop fi - done + done + fi } # check the script was called to avoid execute when script is only sourced |