Aller au contenu

Tape un mot pour chercher dans les pages.

↑↓ Choisir↵ OuvrirÉchap Fermer

Guides

Déploie une app qui vit dans un sous-dossier, et plusieurs sites d'un même dépôt.

Ton site peut vivre dans un sous-dossier, comme apps/web ou site/, dans un dépôt qui contient d’autres applications. Indique à Host le dossier racine du projet : c’est là que le build s’exécute.

Résultat attendu : le build s’exécute depuis le dossier de ton app, et seule cette app est publiée.

Détection à l’import

À l’import GitHub, Host lit tout le dépôt et cherche les dossiers qui contiennent un package.json, jusqu’à quatre niveaux de profondeur. Il préfère, dans l’ordre :

  1. un framework reconnu ;
  2. un dossier qui a un script build ;
  3. un nom usuel : web, site, www, frontend, app, landing, marketing ;
  4. le dossier le moins profond.

La racine d’un monorepo, avec un champ workspaces, un pnpm-workspace.yaml, un turbo.json ou un nx.json, n’est jamais choisie seule. Si le dépôt contient plusieurs applications, choisis celle à déployer. Les dossiers node_modules, dist, build et les caches sont ignorés.

Pour changer le dossier après l’import, modifie le dossier racine dans les réglages du projet.

Le fichier de verrouillage

Dans un monorepo, le fichier de verrouillage, comme pnpm-lock.yaml ou bun.lock, est souvent à la racine. Il compte pour toutes les applications : la commande d’installation suit le gestionnaire qu’il désigne.

Plusieurs sites dans un dépôt

Importe le dépôt une fois par site, en choisissant à chaque fois un dossier différent. Chaque projet a ses domaines, ses variables et son historique.

Avec la CLI

Lance la CLI depuis le dossier de l’app :

cd apps/web
vercel --api https://api.host.hgdc.ch deploy

Avec vercel build et --prebuilt, la même règle s’applique : construis depuis le dossier de l’app. Voir Déployer un framework.

Si ça ne marche pas

  • Le build ne trouve pas tes dépendances : ton dossier est sans doute le mauvais. Vérifie que le dossier racine contient le package.json de l’app, et que le fichier de verrouillage est bien à la racine du dépôt.
  • Host propose la racine du monorepo : choisis le dossier de l’application, pas la racine.