From 61b250be259c386aa88cbfb4fd211afb4430698f Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Fri, 18 Sep 2026 12:28:51 +0000
Subject: [PATCH 1/2] Initial plan
From 470b17db8cbbf83b015861bc45016e1f00bbd6e7 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Fri, 18 Sep 2026 12:31:42 +0000
Subject: [PATCH 2/2] Stabilize published-site verification with retries
Co-authored-by: RobinHil <83064113+RobinHil@users.noreply.github.com>
---
.github/workflows/pages.yml | 55 +++++++++++++++++++------------------
1 file changed, 28 insertions(+), 27 deletions(-)
diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml
index 7165444..576b0ce 100644
--- a/.github/workflows/pages.yml
+++ b/.github/workflows/pages.yml
@@ -206,35 +206,36 @@ jobs:
echo "site: $site"
# Pages sert la nouvelle version en quelques secondes d'ordinaire,
- # mais pas toujours instantanement.
- for attempt in 1 2 3 4 5; do
- if curl -fsS "$site/" -o /tmp/index.html; then break; fi
- echo "attempt $attempt failed, waiting"
- sleep 10
- done
-
- curl -fsS "$site/a-propos" -o /tmp/about.html
- curl -fsS "$site/projets" -o /tmp/projects.html
- curl -fsS "$site/contact" -o /dev/null
- curl -fsS "$site/robots.txt" -o /tmp/robots.txt
- curl -fsS "$site/sitemap.xml" -o /tmp/sitemap.xml
- curl -fsS "$site/site.webmanifest" -o /dev/null
- curl -fsS "$site/favicon.svg" -o /dev/null
-
- grep -q "Robin HILAIRE" /tmp/index.html
- grep -q "rel=\"canonical\" href=\"$site/a-propos\"" /tmp/about.html
- grep -q "images/projects/lifeglobe-hologramme.jpg" /tmp/projects.html
- grep -q "$site/sitemap.xml" /tmp/robots.txt
- grep -qE "$site/projets/?" /tmp/sitemap.xml
-
+ # mais pas toujours instantanement : tant que le CDN bascule, il peut
+ # encore repondre avec l'ancienne version.
# Une capture de projet et le CV, les deux fichiers dont le chemin est
# construit a l'execution : c'est ici qu'une base mal resolue se voit.
- curl -fsS -o /dev/null "$site/images/projects/lifeglobe-hologramme.jpg"
- curl -fsS "$site/cv.pdf" -o /tmp/cv.pdf
- head -c 5 /tmp/cv.pdf | grep -q "%PDF-"
-
# Une adresse qui n'existe pas recoit la page 404 du site, qui
# n'existe que parce que le prerendu en ecrit une.
- curl -sS "$site/rien-ici" | grep -qi "introuvable\|404"
+ for attempt in 1 2 3 4 5 6 7 8; do
+ if curl -fsS "$site/" -o /tmp/index.html \
+ && curl -fsS "$site/a-propos" -o /tmp/about.html \
+ && curl -fsS "$site/projets" -o /tmp/projects.html \
+ && curl -fsS "$site/contact" -o /dev/null \
+ && curl -fsS "$site/robots.txt" -o /tmp/robots.txt \
+ && curl -fsS "$site/sitemap.xml" -o /tmp/sitemap.xml \
+ && curl -fsS "$site/site.webmanifest" -o /dev/null \
+ && curl -fsS "$site/favicon.svg" -o /dev/null \
+ && grep -q "Robin HILAIRE" /tmp/index.html \
+ && grep -q "rel=\"canonical\" href=\"$site/a-propos\"" /tmp/about.html \
+ && grep -q "images/projects/lifeglobe-hologramme.jpg" /tmp/projects.html \
+ && grep -q "$site/sitemap.xml" /tmp/robots.txt \
+ && grep -qE "$site/projets/?" /tmp/sitemap.xml \
+ && curl -fsS -o /dev/null "$site/images/projects/lifeglobe-hologramme.jpg" \
+ && curl -fsS "$site/cv.pdf" -o /tmp/cv.pdf \
+ && head -c 5 /tmp/cv.pdf | grep -q "%PDF-" \
+ && curl -sS "$site/rien-ici" | grep -qi "introuvable\|404"; then
+ echo "verified $site"
+ exit 0
+ fi
+ echo "attempt $attempt failed, waiting"
+ sleep 10
+ done
- echo "verified $site"
+ echo "verification failed for $site after retries"
+ exit 1