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