De CI mag de uitslag van --doctor wel degelijk toetsen
All checks were successful
Deploy server-up (dev) / deploy (push) Successful in 14m48s

Ik ging ervan uit dat de bereikbaarheidscontrole niet kon slagen omdat de
runner in een eigen container zit. De eerste run liet zien dat hij wél slaagt:
"Antwoordt op http://127.0.0.1:5000". De exitcode wordt nu meegenomen, dus een
echte fout in de deploy laat de CI vallen in plaats van alleen in het log te
belanden.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q9eqpADJSRs49SoGGr4NAy
This commit is contained in:
Ramon 2026-08-03 00:46:02 +02:00
parent f8274ebeff
commit f3ead0c526

View file

@ -243,19 +243,25 @@ jobs:
if: success() if: success()
run: | run: |
set -uo pipefail set -uo pipefail
uit="$(sh "$DEPLOY_DIR/install.sh" --doctor --dir "$DEPLOY_DIR" 2>&1 || true)" uit="$(sh "$DEPLOY_DIR/install.sh" --doctor --dir "$DEPLOY_DIR" 2>&1)"
code=$?
printf '%s\n' "$uit" printf '%s\n' "$uit"
# De exitcode toetsen we bewust niet: deze runner zit zelf in een
# container, dus de bereikbaarheidscontrole kan niet slagen — die # Alle secties moeten gedraaid hebben: een shell-fout halverwege zou
# kijkt naar 127.0.0.1 op de host. Of de deploy gezond is, is al # anders als "niets aan de hand" langskomen.
# vastgesteld door de healthcheck-stap hierboven. Wat hier wél moet for kop in "Installatie" "Docker" "Container" "Bereikbaarheid" \
# kloppen is dat het doorlichten van begin tot eind draait. "Account" "Mappen" "Bijwerken vanuit de interface"; do
for kop in "Installatie" "Docker" "Container" "Account" "Mappen" \
"Bijwerken vanuit de interface"; do
printf '%s\n' "$uit" | grep -q "^$kop$" || { printf '%s\n' "$uit" | grep -q "^$kop$" || {
echo "FOUT: --doctor kwam niet tot de sectie '$kop'"; exit 1; } echo "FOUT: --doctor kwam niet tot de sectie '$kop'"; exit 1; }
done done
echo "--doctor liep van begin tot eind"
# En de uitslag telt mee. Waarschuwingen mogen (deze deploy draait
# bewust nog als root), fouten niet.
if [ "$code" -ne 0 ]; then
echo "FOUT: --doctor meldt problemen met de deploy"
exit 1
fi
echo "--doctor liep van begin tot eind, zonder fouten"
- name: Oude images opruimen (behoud laatste 5) - name: Oude images opruimen (behoud laatste 5)
if: success() if: success()