55 lines
1.1 KiB
Batchfile
Executable file
55 lines
1.1 KiB
Batchfile
Executable file
@echo off
|
|
setlocal enabledelayedexpansion
|
|
|
|
rem Initialize variables
|
|
set SKIP_CONFIG=""
|
|
set PORT=""
|
|
set DOMAIN=""
|
|
|
|
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
|
|
)
|
|
if "%~1"=="--skip-config-check" (
|
|
set SKIP_CONFIG=--skip-config-check
|
|
shift
|
|
goto parse_args
|
|
)
|
|
echo Unknown argument: %~1
|
|
exit /b 1
|
|
|
|
:end_parse
|
|
|
|
rem Use the current directory where the script is executed
|
|
pushd %~dp0
|
|
|
|
rem Collect all .go files in the current directory
|
|
set GO_FILES=
|
|
for %%f in (*.go) do (
|
|
set GO_FILES=!GO_FILES! %%f
|
|
)
|
|
|
|
rem Construct the command
|
|
set CMD=go run !GO_FILES! !SKIP_CONFIG!
|
|
if not "%PORT%"=="" set CMD=!CMD! --port %PORT%
|
|
if not "%DOMAIN%"=="" set CMD=!CMD! --domain %DOMAIN%
|
|
|
|
rem Informative output
|
|
echo Starting application with command: !CMD!
|
|
|
|
rem Run the Go program with the constructed command
|
|
call !CMD!
|
|
|
|
rem Return to the original directory
|
|
popd
|