reboot is non-blocking, so we need to exit the script to avoid parallel race conditions after calling reboot