62 lines
2.5 KiB
Batchfile
62 lines
2.5 KiB
Batchfile
@ECHO OFF
|
|
TITLE Knoks - deployment to d01 environmen script
|
|
|
|
ECHO === set vars =================================================================================
|
|
FOR %%A IN ("%~dp0\..") DO SET "PROJECT_DIR=%%~fA"
|
|
SET BACH_FILE_NAME_WITH_EXTENTION=%~n0%~x0
|
|
SET BACH_FILE_NAME_WITHOUT_EXTENTION=%~n0
|
|
SET SRC_SYNC=%PROJECT_DIR%\dist
|
|
SET DST_SYNC=/home/ec2-user/ldi/BO
|
|
SET PRIVATEKEY_FILE=C:\Users\user\Dropbox\Dev\LDI\AWS\LDI-DEV-KP.ppk
|
|
|
|
ECHO Project directory: %PROJECT_DIR%
|
|
ECHO Bach file name with extention: %BACH_FILE_NAME_WITH_EXTENTION%
|
|
ECHO Bach file name withou extention: %BACH_FILE_NAME_WITHOUT_EXTENTION%
|
|
ECHO Source: %SRC_SYNC%
|
|
ECHO Destination: %DST_SYNC%
|
|
ECHO Private key file: %PRIVATEKEY_FILE%
|
|
ECHO.
|
|
|
|
ECHO === detect sync mode (update or preview) =====================================================
|
|
IF "%~1"=="u" (
|
|
SET PREVIEW_OPT=
|
|
ECHO Sync mode: UPDATE!
|
|
) ELSE (
|
|
SET PREVIEW_OPT=-preview
|
|
ECHO Sync mode: Preview
|
|
)
|
|
ECHO.
|
|
|
|
::ECHO === git pull by user's answer ================================================================
|
|
::CHOICE /N /C:yn /M "Run 'git pull' ? (y/n)"%1
|
|
::IF ERRORLEVEL 2 GOTO NoGitPull
|
|
::git pull
|
|
:::NoGitPull
|
|
::ECHO.
|
|
|
|
ECHO === npm run build ============================================================================
|
|
:: note this command is runing based on package.json file under project root directory
|
|
call ng build --env=d01
|
|
ECHO.
|
|
|
|
ECHO === create logs folder if not exists for WinSCP.com ==========================================
|
|
IF EXIST "%PROJECT_DIR%\deploy\logs" (
|
|
ECHO Logs folder already exists
|
|
) ELSE (
|
|
ECHO Creat Logs folder
|
|
MKDIR "%PROJECT_DIR%\Deploy\Logs"
|
|
)
|
|
ECHO.
|
|
|
|
ECHO === run WinSCP ===============================================================================
|
|
::help link: https://winscp.net/eng/docs/scriptcommand_synchronize
|
|
"C:\Users\user\Dropbox\Dev\LDI\WinSCP\WinSCP.com" /log="%PROJECT_DIR%\deploy\logs\%BACH_FILE_NAME_WITHOUT_EXTENTION%.log" /ini=nul /command ^
|
|
"open scp://ec2-user@ec2-54-167-223-45.compute-1.amazonaws.com/ -hostkey=""ssh-ed25519 256 89:be:f3:ef:6b:64:fa:a0:e2:cc:01:e7:16:fd:a3:f7"" -privatekey=""%PRIVATEKEY_FILE%"" -rawsettings AuthGSSAPI=1 TimeDifference=""000000000000C03F"" TimeDifferenceAuto=0 SendBuf=0 SshSimple=0" ^
|
|
"synchronize remote %PREVIEW_OPT% -delete -preservetime -transfer=automatic %SRC_SYNC% %DST_SYNC%" ^
|
|
"exit"
|
|
ECHO.
|
|
|
|
ECHO === script end ===============================================================================
|
|
ECHO Script completed! Press any key to exit...
|
|
PAUSE > NUL
|