Déployer sur Vercel
À chaque publication, Menestrel appelle le Deploy Hook de ton projet Vercel : Vercel relance le build depuis le dépôt Git et le site reflète le contenu publié. Le hook suffit pour déclencher. Pour suivre le déploiement en vrai (en construction, en ligne, échec), il faut en plus un token API et l’id du projet Vercel.
Prérequis : un projet Vercel relié à un dépôt Git (les Deploy Hooks n’existent que pour ces projets), et un site branché sur le loader Menestrel.
-
Créer le Deploy Hook côté Vercel
Dans le projet Vercel, ouvre Settings > Git > Deploy Hooks. Donne un nom (par exemple
menestrel) et choisis la branche de production, souventmain. Vercel génère une URL de la formehttps://api.vercel.com/v1/integrations/deploy/prj_xxx/yyy. -
Connecter l’hébergeur dans Menestrel
Dans l’admin, ouvre « Réglages du site », onglet « Déploiement », puis « Connecter un hébergeur ». Choisis le fournisseur Vercel, donne un nom (par exemple
Production) et colle l’URL dans « URL du deploy hook ». Les autres champs sont facultatifs : tu peux déjà valider avec « Connecter ». -
Activer le suivi réel du statut (recommandé)
Sans rien de plus, Menestrel sait seulement qu’il a joint Vercel : le déploiement reste « Déclenché », même si le build échoue ensuite. Un site qui ne se reconstruit pas en silence est pire qu’un build rouge. Pour voir « En construction », « En ligne » ou « Échec », remplis les champs facultatifs de la cible :
- « Token API (facultatif, pour le suivi) » : crée un token dans Vercel (Account Settings > Tokens). Menestrel ne s’en sert que pour lire la liste des déploiements du projet, jamais pour agir dessus. Donne-lui la portée la plus étroite possible et une date d’expiration.
- « Id de projet (facultatif) » : dans Settings > General du projet Vercel, la valeur
prj_.... - « Id d’équipe (facultatif) » : seulement si le projet appartient à une équipe, la valeur
team_....
Le suivi ne démarre que si le token API et l’id de projet sont tous les deux renseignés.
-
Tester la cible
Le bouton « Tester » de la cible déclenche un vrai build chez Vercel, sans rien publier de nouveau : Vercel reconstruit le site depuis le dépôt Git, avec le contenu déjà publié. Ce n’est pas une simulation : un test qui ne construit rien ne prouverait rien. Le résultat s’affiche aussitôt : « Hébergeur joint, déploiement déclenché. » si le hook a répondu, « Échec du test » avec le détail sinon.
-
Poser les variables d’environnement côté Vercel
Dans Settings > Environment Variables du projet Vercel, ajoute :
Fenêtre de terminal MENESTREL_CONTENT_URL=https://content.menestrel.dev/p/prj_xxx/pk_xxxLe loader lit alors le snapshot publié directement sur le CDN : le build passe même si l’application Menestrel est éteinte ou en maintenance. C’est le chemin nominal en production, pas un mode dégradé.
MENESTREL_TOKENexiste en secours : le loader découvre le dernier snapshot via l’API. Mais un build qui dépend d’un service en ligne peut casser au pire moment, réserve-le au développement. Détail des priorités dans Variables d’environnement.
Lire les états dans « Déploiements récents »
Section intitulée « Lire les états dans « Déploiements récents » »Chaque publication y laisse une ligne par cible. Avec le suivi activé, le nom de la cible devient un lien vers le déploiement chez Vercel.
| État | Sens |
|---|---|
| En file | Menestrel a mis le déclenchement en file d’attente. |
| Déclenché | Le hook a répondu. Sans suivi, l’état s’arrête là. |
| En construction | Vercel construit le site (suivi activé). |
| En ligne | Le déploiement est servi. |
| Échec | Le build Vercel a échoué, ou le hook est resté injoignable. |
| Annulé | Déploiement annulé côté Vercel, cible indisponible au déclenchement, ou déclenchement en file dépassé par une publication plus récente. |
En cas d’échecs répétés
Section intitulée « En cas d’échecs répétés »Après 3 échecs consécutifs, Menestrel met la cible « En pause » et cesse de la déclencher : marteler un hook cassé ne répare rien et noie l’historique. Corrige la cause (hook supprimé côté Vercel, URL erronée, token expiré), puis clique « Reprendre ». Le compteur d’échecs repart à zéro et la publication reconstruit à nouveau le site.