magicserve 1.2.5 → 1.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/run.sh +33 -5
package/package.json
CHANGED
package/run.sh
CHANGED
|
@@ -9,7 +9,10 @@ CONFIG_FILE="$SCRIPT_DIR/magicserve.json"
|
|
|
9
9
|
# El directorio donde reside el script (resolviendo symlinks para instalación global via npm)
|
|
10
10
|
_SCRIPT_SOURCE="${BASH_SOURCE[0]}"
|
|
11
11
|
while [ -L "$_SCRIPT_SOURCE" ]; do
|
|
12
|
+
_SCRIPT_DIR="$(cd "$(dirname "$_SCRIPT_SOURCE")" && pwd)"
|
|
12
13
|
_SCRIPT_SOURCE="$(readlink "$_SCRIPT_SOURCE")"
|
|
14
|
+
# Si readlink devuelve una ruta relativa, resolverla desde el dir del symlink
|
|
15
|
+
[[ "$_SCRIPT_SOURCE" != /* ]] && _SCRIPT_SOURCE="$_SCRIPT_DIR/$_SCRIPT_SOURCE"
|
|
13
16
|
done
|
|
14
17
|
REAL_SCRIPT_DIR="$(cd "$(dirname "$_SCRIPT_SOURCE")" && pwd)"
|
|
15
18
|
VERSION=$(jq -r '.version' "$REAL_SCRIPT_DIR/package.json" 2>/dev/null || echo "1.1.0")
|
|
@@ -161,6 +164,7 @@ start_tunnel() {
|
|
|
161
164
|
|
|
162
165
|
echo "🚇 Iniciando túnel para $DOMAIN en puerto $PORT..."
|
|
163
166
|
local TUNNEL_PID_FILE="$PIDS_DIR/${DOMAIN}_tunnel.pid"
|
|
167
|
+
local TUNNEL_URL_FILE="$PIDS_DIR/${DOMAIN}_tunnel.url"
|
|
164
168
|
|
|
165
169
|
# Si pasaron false o null, no hacer nada
|
|
166
170
|
if [ "$TUNNEL_SUBDOMAIN" == "false" ] || [ "$TUNNEL_SUBDOMAIN" == "null" ] || [ -z "$TUNNEL_SUBDOMAIN" ]; then
|
|
@@ -171,13 +175,28 @@ start_tunnel() {
|
|
|
171
175
|
|
|
172
176
|
if [ "$TUNNEL_SUBDOMAIN" == "true" ]; then
|
|
173
177
|
nohup npx localtunnel --port $PORT > "$TUNNEL_LOG" 2>&1 &
|
|
178
|
+
local PID=$!
|
|
179
|
+
echo $PID > "$TUNNEL_PID_FILE"
|
|
180
|
+
echo "✅ Túnel corriendo (PID: $PID)"
|
|
181
|
+
# Esperar a que localtunnel imprima la URL dinámica
|
|
182
|
+
echo "⏳ Esperando URL del túnel..."
|
|
183
|
+
sleep 4
|
|
184
|
+
local URL=$(grep -o 'https://[^ ]*' "$TUNNEL_LOG" 2>/dev/null | head -1)
|
|
185
|
+
if [ -n "$URL" ]; then
|
|
186
|
+
echo "$URL" > "$TUNNEL_URL_FILE"
|
|
187
|
+
echo "🌐 URL pública del túnel: $URL"
|
|
188
|
+
else
|
|
189
|
+
echo "⚠️ No se pudo obtener la URL del túnel aún. Revisa: $TUNNEL_LOG"
|
|
190
|
+
fi
|
|
174
191
|
else
|
|
175
192
|
nohup npx localtunnel --port $PORT --subdomain "$TUNNEL_SUBDOMAIN" > "$TUNNEL_LOG" 2>&1 &
|
|
193
|
+
local PID=$!
|
|
194
|
+
echo $PID > "$TUNNEL_PID_FILE"
|
|
195
|
+
local URL="https://${TUNNEL_SUBDOMAIN}.loca.lt"
|
|
196
|
+
echo "$URL" > "$TUNNEL_URL_FILE"
|
|
197
|
+
echo "✅ Túnel corriendo (PID: $PID)"
|
|
198
|
+
echo "🌐 URL pública del túnel: $URL"
|
|
176
199
|
fi
|
|
177
|
-
|
|
178
|
-
local PID=$!
|
|
179
|
-
echo $PID > "$TUNNEL_PID_FILE"
|
|
180
|
-
echo "✅ Túnel corriendo (PID: $PID)"
|
|
181
200
|
}
|
|
182
201
|
|
|
183
202
|
start_all() {
|
|
@@ -232,6 +251,7 @@ stop_all() {
|
|
|
232
251
|
fi
|
|
233
252
|
|
|
234
253
|
local TUNNEL_PID_FILE="$PIDS_DIR/${DOMAIN}_tunnel.pid"
|
|
254
|
+
local TUNNEL_URL_FILE="$PIDS_DIR/${DOMAIN}_tunnel.url"
|
|
235
255
|
if [ -f "$TUNNEL_PID_FILE" ]; then
|
|
236
256
|
local TPID=$(cat "$TUNNEL_PID_FILE")
|
|
237
257
|
if ps -p $TPID > /dev/null; then
|
|
@@ -241,6 +261,7 @@ stop_all() {
|
|
|
241
261
|
echo "⚠️ Proceso de túnel para $DOMAIN no encontrado."
|
|
242
262
|
fi
|
|
243
263
|
rm "$TUNNEL_PID_FILE"
|
|
264
|
+
rm -f "$TUNNEL_URL_FILE"
|
|
244
265
|
fi
|
|
245
266
|
|
|
246
267
|
# Limpiar de /etc/hosts
|
|
@@ -280,10 +301,17 @@ status() {
|
|
|
280
301
|
fi
|
|
281
302
|
|
|
282
303
|
local TUNNEL_PID_FILE="$PIDS_DIR/${DOMAIN}_tunnel.pid"
|
|
304
|
+
local TUNNEL_URL_FILE="$PIDS_DIR/${DOMAIN}_tunnel.url"
|
|
283
305
|
if [ -f "$TUNNEL_PID_FILE" ]; then
|
|
284
306
|
local TPID=$(cat "$TUNNEL_PID_FILE")
|
|
285
307
|
if ps -p $TPID > /dev/null; then
|
|
286
|
-
|
|
308
|
+
local TURL=""
|
|
309
|
+
[ -f "$TUNNEL_URL_FILE" ] && TURL=$(cat "$TUNNEL_URL_FILE")
|
|
310
|
+
if [ -n "$TURL" ]; then
|
|
311
|
+
echo " ↳ 🚇 Túnel activo (PID: $TPID) → 🌐 $TURL"
|
|
312
|
+
else
|
|
313
|
+
echo " ↳ 🚇 Túnel activo (PID: $TPID)"
|
|
314
|
+
fi
|
|
287
315
|
else
|
|
288
316
|
echo " ↳ 🔴 Túnel: Archivo PID existe pero no está corriendo"
|
|
289
317
|
fi
|