diff --git a/spring-boot-project/spring-boot-tools/spring-boot-loader-tools/src/main/resources/org/springframework/boot/loader/tools/launch.script b/spring-boot-project/spring-boot-tools/spring-boot-loader-tools/src/main/resources/org/springframework/boot/loader/tools/launch.script index e8182a15a7..d732403ea6 100755 --- a/spring-boot-project/spring-boot-tools/spring-boot-loader-tools/src/main/resources/org/springframework/boot/loader/tools/launch.script +++ b/spring-boot-project/spring-boot-tools/spring-boot-loader-tools/src/main/resources/org/springframework/boot/loader/tools/launch.script @@ -67,8 +67,8 @@ echoYellow() { echo $'\e[0;33m'"$1"$'\e[0m'; } [[ -z "$LOG_FOLDER" ]] && LOG_FOLDER="{{logFolder:/var/log}}" ! [[ "$PID_FOLDER" == /* ]] && PID_FOLDER="$(dirname "$jarfile")"/"$PID_FOLDER" ! [[ "$LOG_FOLDER" == /* ]] && LOG_FOLDER="$(dirname "$jarfile")"/"$LOG_FOLDER" -! [[ -x "$PID_FOLDER" ]] && echoYellow "Warning: PID_FOLDER=$PID_FOLDER does not exists fallback to /tmp" && PID_FOLDER="/tmp" -! [[ -x "$LOG_FOLDER" ]] && echoYellow "Warning: LOG_FOLDER=$LOG_FOLDER does not exists fallback to /tmp" && LOG_FOLDER="/tmp" +! [[ -x "$PID_FOLDER" ]] && echoYellow "PID_FOLDER $PID_FOLDER does not exist. Falling back to /tmp" && PID_FOLDER="/tmp" +! [[ -x "$LOG_FOLDER" ]] && echoYellow "LOG_FOLDER $LOG_FOLDER does not exist. Falling back to /tmp" && LOG_FOLDER="/tmp" # Set up defaults [[ -z "$MODE" ]] && MODE="{{mode:auto}}" # modes are "auto", "service" or "run" diff --git a/spring-boot-tests/spring-boot-integration-tests/spring-boot-launch-script-tests/src/test/java/org/springframework/boot/launchscript/SysVinitLaunchScriptIT.java b/spring-boot-tests/spring-boot-integration-tests/spring-boot-launch-script-tests/src/test/java/org/springframework/boot/launchscript/SysVinitLaunchScriptIT.java index 9c0508e67f..c7602ac241 100644 --- a/spring-boot-tests/spring-boot-integration-tests/spring-boot-launch-script-tests/src/test/java/org/springframework/boot/launchscript/SysVinitLaunchScriptIT.java +++ b/spring-boot-tests/spring-boot-integration-tests/spring-boot-launch-script-tests/src/test/java/org/springframework/boot/launchscript/SysVinitLaunchScriptIT.java @@ -171,7 +171,22 @@ public class SysVinitLaunchScriptIT { @Test public void basicLaunch() throws Exception { - doLaunch("basic-launch.sh"); + String output = doTest("basic-launch.sh"); + assertThat(output).doesNotContain("PID_FOLDER"); + } + + @Test + public void launchWithMissingLogFolderGeneratesAWarning() throws Exception { + String output = doTest("launch-with-missing-log-folder.sh"); + assertThat(output).has(coloredString(AnsiColor.YELLOW, + "LOG_FOLDER /does/not/exist does not exist. Falling back to /tmp")); + } + + @Test + public void launchWithMissingPidFolderGeneratesAWarning() throws Exception { + String output = doTest("launch-with-missing-pid-folder.sh"); + assertThat(output).has(coloredString(AnsiColor.YELLOW, + "PID_FOLDER /does/not/exist does not exist. Falling back to /tmp")); } @Test diff --git a/spring-boot-tests/spring-boot-integration-tests/spring-boot-launch-script-tests/src/test/resources/scripts/launch-with-missing-log-folder.sh b/spring-boot-tests/spring-boot-integration-tests/spring-boot-launch-script-tests/src/test/resources/scripts/launch-with-missing-log-folder.sh new file mode 100755 index 0000000000..1f3aed3844 --- /dev/null +++ b/spring-boot-tests/spring-boot-integration-tests/spring-boot-launch-script-tests/src/test/resources/scripts/launch-with-missing-log-folder.sh @@ -0,0 +1,6 @@ +source ./test-functions.sh +install_service +echo 'LOG_FOLDER=/does/not/exist' > /test-service/spring-boot-app.conf +start_service +await_app +curl -s http://127.0.0.1:8080/ diff --git a/spring-boot-tests/spring-boot-integration-tests/spring-boot-launch-script-tests/src/test/resources/scripts/launch-with-missing-pid-folder.sh b/spring-boot-tests/spring-boot-integration-tests/spring-boot-launch-script-tests/src/test/resources/scripts/launch-with-missing-pid-folder.sh new file mode 100755 index 0000000000..83430bea62 --- /dev/null +++ b/spring-boot-tests/spring-boot-integration-tests/spring-boot-launch-script-tests/src/test/resources/scripts/launch-with-missing-pid-folder.sh @@ -0,0 +1,6 @@ +source ./test-functions.sh +install_service +echo 'PID_FOLDER=/does/not/exist' > /test-service/spring-boot-app.conf +start_service +await_app +curl -s http://127.0.0.1:8080/