Skip to content

🐛 fix(ci): ssh-keyscan avec timeout et retry - #32

Merged
kbrdn1 merged 2 commits into
mainfrom
dev
Aug 14, 2026
Merged

🐛 fix(ci): ssh-keyscan avec timeout et retry#32
kbrdn1 merged 2 commits into
mainfrom
dev

Conversation

@kbrdn1

@kbrdn1 kbrdn1 commented Aug 14, 2026

Copy link
Copy Markdown
Owner

Summary

Promotion sur main du correctif ssh-keyscan (#31), nécessaire pour reprendre la release v1.0.0 : un workflow_dispatch utilise la version du workflow présente sur la ref visée.

Related Issue

Closes #26

Type of Change

  • 🐛 Bug fix (non-breaking change which fixes an issue)
  • ✨ New feature (non-breaking change which adds functionality)
  • 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • 📝 Documentation update
  • ♻️ Refactoring (no functional changes)
  • ⚡️ Performance improvement
  • 🎨 Style/UI update

Scope

  • Homepage
  • Blog
  • Projects
  • UI Components
  • i18n / Translations
  • SEO
  • Configuration

Changes

ssh-keyscan dans release.yml et deploy.yml : timeout explicite -T 10, 5 tentatives, vérification que known_hosts est non vide, échec lisible.

Tests

Checklist

  • My code follows the project's coding style
  • I have performed a self-review of my code
  • I have tested my changes locally
  • My changes generate no new warnings
  • I have updated the documentation if needed
  • TypeScript compiles without errors — CI verte
  • Linting passes — idem

Additional Notes

Le tag v1.0.0 reste sur 1e512ce et l'image :v1.0.0 reste celle déjà publiée : ce correctif touche l'outil, pas le produit. Le tag continue de désigner exactement l'artefact construit depuis lui — c'est pour ça qu'on ne le redéplace pas.

Ce merge redéclenche aussi deploy.yml vers prod, qui peut retomber sur le 404 fonts.gstatic.com du build. C'est indépendant de la reprise de la release, qui passe par workflow_dispatch et saute le build.

kbrdn1 and others added 2 commits August 14, 2026 19:29
Le premier déploiement prod de v1.0.0 est tombé sur `Setup ssh`, cinq
secondes après un « ssh key OK » : le timeout par défaut de ssh-keyscan. La
commande était la dernière du step, sans timeout explicite ni retry, et son
`2>/dev/null` masquait la raison — sous le `bash -e` qu'impose GitHub
Actions, son code de retour devenait celui du job.

Un keyscan qui n'aboutit pas est pourtant transitoire par nature : la cible
répondait avant et répond encore. Timeout porté à 10 s, cinq tentatives
espacées, vérification que known_hosts est non vide, et échec explicite avec
message si la clé hôte reste inaccessible.

Appliqué aux deux workflows : le bloc SSH y est dupliqué. C'était un choix
assumé — neuf inputs à déclarer puis repasser coûtaient plus que vingt lignes
de YAML — mais c'est la première fois qu'il faut corriger aux deux endroits.
S'il rebouge, il faudra l'extraire en action composite.

refs #26
🐛 fix(ci): ssh-keyscan avec timeout et retry, il tuait le déploiement
@kbrdn1
kbrdn1 merged commit 3ef37f9 into main Aug 14, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

🔖 [Release]: v1.0.0

1 participant