Search/run.bat

71 lines
1.4 KiB
Batchfile
Raw Normal View History

2024-08-13 16:31:28 +02:00
@echo off
setlocal enabledelayedexpansion
rem Initialize variables
set SKIP_CONFIG=""
set PORT=""
set DOMAIN=""
2025-02-21 20:29:43 +01:00
set CONFIG_FILE=""
2024-12-05 00:24:47 +01:00
set BUILD_OUTPUT=qgato.exe
rem Parse arguments
:parse_args
if "%~1"=="" goto end_parse
if "%~1"=="--port" (
set PORT=%~2
shift
shift
goto parse_args
)
if "%~1"=="--domain" (
set DOMAIN=%~2
shift
shift
goto parse_args
)
2025-02-21 20:29:43 +01:00
if "%~1"=="--config" (
set CONFIG_FILE=%~2
shift
shift
goto parse_args
)
if "%~1"=="--skip-config-check" (
set SKIP_CONFIG=--skip-config-check
shift
goto parse_args
)
echo Unknown argument: %~1
exit /b 1
:end_parse
2024-10-22 21:58:06 +02:00
rem Use the current directory where the script is executed
pushd %~dp0
2024-08-13 16:31:28 +02:00
2025-01-08 00:29:21 +01:00
rem Always delete and rebuild the binary
echo Cleaning previous build...
if exist "%BUILD_OUTPUT%" del "%BUILD_OUTPUT%"
2025-01-08 00:29:21 +01:00
echo Building application...
2025-06-01 09:54:09 +02:00
go build -ldflags="-s -w" -o "%BUILD_OUTPUT%" .
2025-01-08 00:29:21 +01:00
if errorlevel 1 (
echo Build failed!
exit /b 1
2024-12-05 00:24:47 +01:00
)
2025-01-08 00:29:21 +01:00
echo Build successful! Output: %CD%\%BUILD_OUTPUT%
rem Construct the command
set CMD=%BUILD_OUTPUT% !SKIP_CONFIG!
if not "%PORT%"=="" set CMD=!CMD! --port %PORT%
if not "%DOMAIN%"=="" set CMD=!CMD! --domain %DOMAIN%
2025-02-21 20:29:43 +01:00
if not "%CONFIG_FILE%"=="" set CMD=!CMD! --config %CONFIG_FILE%
2025-01-08 00:29:21 +01:00
rem Informative output
echo Starting application with command: !CMD!
rem Run the built executable
call !CMD!
2024-08-13 16:31:28 +02:00
rem Return to the original directory
popd