public code v2
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
@echo off
|
||||
:: Levanta Flintstones en Docker y abre el navegador automaticamente.
|
||||
setlocal
|
||||
|
||||
set APP_DIR=releng\flintstones.application.product\target\products\RCP product\linux\gtk\x86_64
|
||||
set IMAGE=flintstones-develop-run
|
||||
set URL=http://localhost:6080/vnc.html?autoconnect=true^&resize=scale
|
||||
|
||||
:: 1. Compilar si no existe el binario
|
||||
if not exist "%APP_DIR%\eclipse" (
|
||||
echo =^> Proyecto no compilado. Compilando (esto tarda la primera vez)...
|
||||
docker compose run --rm build
|
||||
if errorlevel 1 goto error
|
||||
)
|
||||
|
||||
:: 2. Construir imagen de ejecucion si no existe
|
||||
docker image inspect %IMAGE% >nul 2>&1
|
||||
if errorlevel 1 (
|
||||
echo =^> Construyendo imagen Docker de ejecucion (solo la primera vez)...
|
||||
docker compose build run
|
||||
if errorlevel 1 goto error
|
||||
)
|
||||
|
||||
:: 3. Arrancar el contenedor
|
||||
docker compose ps run | findstr "running" >nul 2>&1
|
||||
if errorlevel 1 (
|
||||
echo =^> Arrancando Flintstones...
|
||||
docker compose up -d run
|
||||
if errorlevel 1 goto error
|
||||
) else (
|
||||
echo =^> Flintstones ya esta en marcha.
|
||||
)
|
||||
|
||||
:: 4. Esperar a que noVNC este listo
|
||||
echo =^> Esperando conexion...
|
||||
:wait
|
||||
curl -s http://localhost:6080 >nul 2>&1
|
||||
if errorlevel 1 (
|
||||
timeout /t 1 /nobreak >nul
|
||||
goto wait
|
||||
)
|
||||
|
||||
:: 5. Abrir el navegador
|
||||
echo =^> Abriendo %URL%
|
||||
start "" "%URL%"
|
||||
|
||||
echo.
|
||||
echo Para parar: docker compose stop run
|
||||
echo Para los logs: docker compose logs -f run
|
||||
goto end
|
||||
|
||||
:error
|
||||
echo.
|
||||
echo ERROR: algo ha fallado. Revisa los logs con: docker compose logs run
|
||||
exit /b 1
|
||||
|
||||
:end
|
||||
endlocal
|
||||
Reference in New Issue
Block a user