From 7b1ee4a0ab9d9ae6d36d82cf3d8c451d00f28eb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABl?= Date: Mon, 8 Sep 2025 18:31:28 +0200 Subject: [PATCH] test --- update_and_run.sh | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/update_and_run.sh b/update_and_run.sh index 8118f94..eca19c5 100644 --- a/update_and_run.sh +++ b/update_and_run.sh @@ -1,14 +1,29 @@ -#!/bin/bash -set -euo pipefail +#!/bin/sh +set -eu -trap 'echo "[stop] shutting down..."; kill 0' SIGINT SIGTERM +# Arrêt propre: en sh, on utilise INT/TERM (sans "SIG") +stop() { + echo "[stop] shutting down..." + # Tuer proprement les 2 enfants si présents + [ -n "${PID1-}" ] && kill -TERM "$PID1" 2>/dev/null || true + [ -n "${PID2-}" ] && kill -TERM "$PID2" 2>/dev/null || true + wait || true + exit 0 +} +trap stop INT TERM -git fetch --all || true -git reset --hard origin/main || true +# (facultatif si tu fais un git pull ici) +# git fetch --all || true +# git reset --hard origin/main || true -# Lancer les 2 bots en parallèle +# Lancer les 2 bots en arrière-plan python -u post_rss_to_ghost.py & PID1=$! python -u presquegratos.py & PID2=$! -# Attendre que l'un des deux meure (et laisser l'autre se faire tuer par le trap) -wait -n "$PID1" "$PID2" || true \ No newline at end of file +# Attendre qu'un des deux termine; l'autre sera tué dans stop() +# /bin/sh n’a pas toujours wait -n, on fait un petit poll +while :; do + if ! kill -0 "$PID1" 2>/dev/null; then wait "$PID1" || true; break; fi + if ! kill -0 "$PID2" 2>/dev/null; then wait "$PID2" || true; break; fi + sleep 1 +done