From bbf303cdf8faac8e787c1b6c4bb03cd471fc2cfb Mon Sep 17 00:00:00 2001 From: samvaio Date: Wed, 30 Nov 2016 17:32:30 +0530 Subject: [PATCH] Add files via upload --- scripts/Latest.bat | 110 +++++++++++++++++++++++++++++++++++++++++++++ scripts/Stable.bat | 110 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 220 insertions(+) create mode 100644 scripts/Latest.bat create mode 100644 scripts/Stable.bat diff --git a/scripts/Latest.bat b/scripts/Latest.bat new file mode 100644 index 00000000..8256adbc --- /dev/null +++ b/scripts/Latest.bat @@ -0,0 +1,110 @@ +@ECHO off +TITLE Downloading NadekoBot, please wait +::Setting convenient to read variables which don't delete the windows temp folder +SET root=%~dp0 +CD /D %root% +SET rootdir=%cd% +SET build1=%root%NadekoInstall_Temp\NadekoBot\discord.net\src\Discord.Net\ +SET build2=%root%NadekoInstall_Temp\NadekoBot\discord.net\src\Discord.Net.Commands\ +SET build3=%root%NadekoInstall_Temp\NadekoBot\src\NadekoBot\ +SET installtemp=%root%NadekoInstall_Temp\ +::Deleting traces of last setup for the sake of clean folders, if by some miracle it still exists +IF EXIST %installtemp% ( RMDIR %installtemp% /S /Q >nul 2>&1) +::Checks that both git and dotnet are installed +dotnet --version >nul 2>&1 || GOTO :dotnet +git --version >nul 2>&1 || GOTO :git +::Creates the install directory to work in and get the current directory because spaces ruins everything otherwise +:start +MKDIR NadekoInstall_Temp +CD /D %installtemp% +::Downloads the latest version of Nadeko +ECHO Downloading Nadeko... +ECHO. +git clone -b dev --recursive --depth 1 --progress https://github.com/Kwoth/NadekoBot.git >nul +IF %ERRORLEVEL% EQU 128 (GOTO :giterror) +TITLE Installing NadekoBot, please wait +ECHO. +ECHO Installing... +::Building Nadeko +CD /D %build1% +dotnet restore >nul 2>&1 +CD /D %build2% +dotnet restore >nul 2>&1 +CD /D %build3% +dotnet restore >nul 2>&1 +dotnet build --configuration Release >nul 2>&1 +::Attempts to backup old files if they currently exist in the same folder as the batch file +IF EXIST "%root%NadekoBot\" (GOTO :backupinstall) +:freshinstall + ::Moves the NadekoBot folder to keep things tidy + ROBOCOPY "%root%NadekoInstall_Temp" "%rootdir%" /E /MOVE >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + GOTO :end +:backupinstall + TITLE Backing up old files + ECHO. + ECHO Make sure to close any files such as NadekoBot.db before PRESSing ANY KEY TO CONTINUE to prevent data loss + PAUSE >nul 2>&1 + ::Recursively copies all files and folders from NadekoBot to NadekoBot_Old + ROBOCOPY "%root%NadekoBot" "%root%NadekoBot_Old" /MIR >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + ECHO. + ECHO Old files backed up to NadekoBot_Old + ::Copies the credentials and database from the backed up data to the new folder + COPY "%root%NadekoBot_Old\src\NadekoBot\credentials.json" "%installtemp%NadekoBot\src\NadekoBot\credentials.json" >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + ECHO. + ECHO credentials.json copied to new folder + ROBOCOPY "%root%NadekoBot_Old\src\NadekoBot\bin" "%installtemp%NadekoBot\src\NadekoBot\bin" /E >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + ECHO. + ECHO Old bin folder copied to new folder + ROBOCOPY "%root%NadekoBot_Old\src\NadekoBot\data" "%installtemp%NadekoBot\src\NadekoBot\data" /E >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + ECHO. + ECHO Old data folder copied to new folder + ::Moves the setup Nadeko folder + RMDIR "%root%NadekoBot\" /S /Q >nul 2>&1 + ROBOCOPY "%root%NadekoInstall_Temp" "%rootdir%" /E /MOVE >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + GOTO :end +:dotnet + ::Terminates the batch script if it can't run dotnet --version + TITLE Error! + ECHO dotnet not found, make sure it's been installed as per the guides instructions! + ECHO Press any key to exit. + PAUSE >nul 2>&1 + CD /D "%root%" + GOTO :EOF +:git + ::Terminates the batch script if it can't run git --version + TITLE Error! + ECHO git not found, make sure it's been installed as per the guides instructions! + ECHO Press any key to exit. + PAUSE >nul 2>&1 + CD /D "%root%" + GOTO :EOF +:giterror + ECHO. + ECHO Git clone failed, trying again + RMDIR %installtemp% /S /Q >nul 2>&1 + GOTO :start +:copyerror + ::If at any point a copy error is encountered + TITLE Error! + ECHO. + ECHO An error in copying data has been encountered, returning an exit code of %ERRORLEVEL% + ECHO. + ECHO Make sure to close any files, such as `NadekoBot.db` before continuing or try running the installer as an Administrator + PAUSE >nul 2>&1 + CD /D "%root%" + GOTO :EOF +:end + ::Normal execution of end of script + TITLE Installation complete! + CD /D "%root%" + RMDIR /S /Q "%installtemp%" >nul 2>&1 + ECHO. + ECHO Installation complete, press any key to close this window! + PAUSE >nul 2>&1 + del Latest.bat diff --git a/scripts/Stable.bat b/scripts/Stable.bat new file mode 100644 index 00000000..d2c29d3e --- /dev/null +++ b/scripts/Stable.bat @@ -0,0 +1,110 @@ +@ECHO off +TITLE Downloading NadekoBot, please wait +::Setting convenient to read variables which don't delete the windows temp folder +SET root=%~dp0 +CD /D %root% +SET rootdir=%cd% +SET build1=%root%NadekoInstall_Temp\NadekoBot\discord.net\src\Discord.Net\ +SET build2=%root%NadekoInstall_Temp\NadekoBot\discord.net\src\Discord.Net.Commands\ +SET build3=%root%NadekoInstall_Temp\NadekoBot\src\NadekoBot\ +SET installtemp=%root%NadekoInstall_Temp\ +::Deleting traces of last setup for the sake of clean folders, if by some miracle it still exists +IF EXIST %installtemp% ( RMDIR %installtemp% /S /Q >nul 2>&1) +::Checks that both git and dotnet are installed +dotnet --version >nul 2>&1 || GOTO :dotnet +git --version >nul 2>&1 || GOTO :git +::Creates the install directory to work in and get the current directory because spaces ruins everything otherwise +:start +MKDIR NadekoInstall_Temp +CD /D %installtemp% +::Downloads the latest version of Nadeko +ECHO Downloading Nadeko... +ECHO. +git clone -b 1.0 --recursive --depth 1 --progress https://github.com/Kwoth/NadekoBot.git >nul +IF %ERRORLEVEL% EQU 128 (GOTO :giterror) +TITLE Installing NadekoBot, please wait +ECHO. +ECHO Installing... +::Building Nadeko +CD /D %build1% +dotnet restore >nul 2>&1 +CD /D %build2% +dotnet restore >nul 2>&1 +CD /D %build3% +dotnet restore >nul 2>&1 +dotnet build --configuration Release >nul 2>&1 +::Attempts to backup old files if they currently exist in the same folder as the batch file +IF EXIST "%root%NadekoBot\" (GOTO :backupinstall) +:freshinstall + ::Moves the NadekoBot folder to keep things tidy + ROBOCOPY "%root%NadekoInstall_Temp" "%rootdir%" /E /MOVE >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + GOTO :end +:backupinstall + TITLE Backing up old files + ECHO. + ECHO Make sure to close any files such as NadekoBot.db before PRESSing ANY KEY TO CONTINUE to prevent data loss + PAUSE >nul 2>&1 + ::Recursively copies all files and folders from NadekoBot to NadekoBot_Old + ROBOCOPY "%root%NadekoBot" "%root%NadekoBot_Old" /MIR >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + ECHO. + ECHO Old files backed up to NadekoBot_Old + ::Copies the credentials and database from the backed up data to the new folder + COPY "%root%NadekoBot_Old\src\NadekoBot\credentials.json" "%installtemp%NadekoBot\src\NadekoBot\credentials.json" >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + ECHO. + ECHO credentials.json copied to new folder + ROBOCOPY "%root%NadekoBot_Old\src\NadekoBot\bin" "%installtemp%NadekoBot\src\NadekoBot\bin" /E >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + ECHO. + ECHO Old bin folder copied to new folder + ROBOCOPY "%root%NadekoBot_Old\src\NadekoBot\data" "%installtemp%NadekoBot\src\NadekoBot\data" /E >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + ECHO. + ECHO Old data folder copied to new folder + ::Moves the setup Nadeko folder + RMDIR "%root%NadekoBot\" /S /Q >nul 2>&1 + ROBOCOPY "%root%NadekoInstall_Temp" "%rootdir%" /E /MOVE >nul 2>&1 + IF %ERRORLEVEL% GEQ 8 (GOTO :copyerror) + GOTO :end +:dotnet + ::Terminates the batch script if it can't run dotnet --version + TITLE Error! + ECHO dotnet not found, make sure it's been installed as per the guides instructions! + ECHO Press any key to exit. + PAUSE >nul 2>&1 + CD /D "%root%" + GOTO :EOF +:git + ::Terminates the batch script if it can't run git --version + TITLE Error! + ECHO git not found, make sure it's been installed as per the guides instructions! + ECHO Press any key to exit. + PAUSE >nul 2>&1 + CD /D "%root%" + GOTO :EOF +:giterror + ECHO. + ECHO Git clone failed, trying again + RMDIR %installtemp% /S /Q >nul 2>&1 + GOTO :start +:copyerror + ::If at any point a copy error is encountered + TITLE Error! + ECHO. + ECHO An error in copying data has been encountered, returning an exit code of %ERRORLEVEL% + ECHO. + ECHO Make sure to close any files, such as `NadekoBot.db` before continuing or try running the installer as an Administrator + PAUSE >nul 2>&1 + CD /D "%root%" + GOTO :EOF +:end + ::Normal execution of end of script + TITLE Installation complete! + CD /D "%root%" + RMDIR /S /Q "%installtemp%" >nul 2>&1 + ECHO. + ECHO Installation complete, press any key to close this window! + PAUSE >nul 2>&1 + del Stable.bat