Déploiement CLI
Découvrez comment la commande CLI jamdesk deploy empaquette, uploade et build votre documentation, avec flags, phases de build et codes d'erreur.
La commande deploy empaquète votre documentation, l'uploade vers Jamdesk, et déclenche un build depuis le terminal. Utilisez-la pour des itérations rapides, tester des modifications, ou pour des projets non connectés à un dépôt GitHub.
Démarrage rapide
jamdesk login # First time only
jamdesk deploy # From your project directory
Options
| Flag | Description |
|---|---|
--detach | Met le build en file d'attente et quitte immédiatement (affiche un lien vers le dashboard) |
--full-rebuild | Force un rebuild complet en contournant le cache de build |
--project <id> | Déploie vers un ID de projet spécifique (ignore la sélection interactive) |
--allow-empty | Autorise le déploiement sans aucune page de contenu .mdx. Par défaut, le CLI refuse de déployer un projet vide afin qu'un mauvais répertoire de travail ne publie pas accidentellement un site vide (les snippets ne comptent pas comme pages de contenu) |
jamdesk push est un alias de jamdesk deploy.
Fonctionnement
Vérifie que votre session est valide. Si votre token a expiré, vous serez invité à exécuter jamdesk login.
Lit et valide docs.json depuis le répertoire courant.
Lit le projectId depuis docs.json. S'il est absent (premier déploiement), le CLI vous invite à sélectionner parmi vos projets. Votre choix est enregistré dans docs.json afin que le déploiement suivant ignore cette étape.
Utilisez --project <id> pour forcer un projet.
Crée une archive compressée de votre documentation, en respectant le .gitignore. Si certains fichiers semblent contenir des secrets, le CLI affiche un avertissement (sans bloquer l'upload).
Envoie l'archive vers Jamdesk via une URL présignée. La taille maximale d'upload est de 100 Mo.
Met un build en file d'attente et interroge le statut en affichant chaque phase au fur et à mesure. Appuyez sur Ctrl+C pour arrêter l'interrogation ; le build continue en arrière-plan.
Affiche l'URL en ligne lorsque le build est terminé.
Phases du build
Pendant l'interrogation, vous verrez chaque phase se terminer dans l'ordre :
| Phase | Description |
|---|---|
| Extraction des fichiers | Décompression de l'archive uploadée |
| Validation de la configuration | Vérification du schéma et du contenu de docs.json |
| Préparation du contenu | Traitement des fichiers MDX et des ressources |
| Construction de la documentation | Compilation des pages et génération des artefacts statiques |
| Upload vers le CDN | Envoi du résultat compilé vers le réseau edge |
| Rafraîchissement du cache | Purge du contenu périmé du CDN |
Exclusions de fichiers
Les éléments suivants sont toujours exclus des uploads, quel que soit votre .gitignore :
.git, node_modules, .next, .env, .env.*, *.pem, *.key, credentials.json, .gcloud, .DS_Store, Thumbs.db
Tout ce qui figure dans votre .gitignore est également exclu.
Avertissements relatifs aux fichiers secrets
Le CLI avertit (sans bloquer) lorsqu'il détecte des fichiers susceptibles de contenir des secrets :
- Fichiers
.envet.env.* - Fichiers
*.pemet*.key credentials.jsonservice_account*.json- Fichiers dont le nom commence par
secret
Ajoutez-les à .gitignore pour supprimer l'avertissement et les exclure des uploads.
Référence des erreurs
| Erreur | Code | Cause | Correction |
|---|---|---|---|
| Non connecté | AUTH_REQUIRED | Aucun identifiant enregistré | jamdesk login |
| Session expirée | AUTH_EXPIRED | Échec du renouvellement du token | jamdesk login |
| Accès refusé | FORBIDDEN | Vous n'êtes pas membre de ce projet | Vérifiez l'appartenance au projet dans le dashboard |
| Projet introuvable | NOT_FOUND | ID de projet invalide | Vérifiez l'ID ou supprimez projectId de docs.json |
| Build en cours | BUILD_IN_PROGRESS | Un autre build est en cours d'exécution | Attendez ou consultez le dashboard |
| Upload trop volumineux | TOO_LARGE | Upload rejeté par le serveur (limite de 100 Mo) | Excluez les fichiers volumineux via .gitignore |
| Projet trop volumineux | PROJECT_TOO_LARGE | L'archive dépasse 100 Mo lors de l'empaquetage | Excluez les fichiers volumineux via .gitignore |
| Aucun projet | NO_PROJECTS | Aucun projet dans votre compte | Créez d'abord un projet dans le dashboard |
| Aucun fichier | EMPTY_PROJECT | Tous les fichiers sont exclus | Vérifiez votre .gitignore |
| Aucune page de contenu | NO_CONTENT | Aucune page de contenu .mdx trouvée (les snippets ne comptent pas) | Exécutez la commande depuis votre répertoire de documentation, ou passez --allow-empty si la publication vide est intentionnelle |
| Configuration invalide | CONFIG_NOT_FOUND | docs.json manquant ou invalide | Exécutez depuis la racine du projet, vérifiez la configuration |
| Échec de l'upload | UPLOAD_FAILED | Problème réseau lors de l'upload | Vérifiez votre connexion, réessayez |
| Échec du build | BUILD_FAILED | Erreur du service de build | Consultez les logs de build dans le dashboard |
Dépannage
Un seul build s'exécute à la fois par projet. Attendez que le build en cours se termine ; vérifiez le statut dans le dashboard sous Déploiements.
Assurez-vous d'exécuter la commande depuis le répertoire contenant docs.json. Exécutez jamdesk validate pour vérifier les erreurs de configuration.
La limite de 100 Mo s'applique à l'archive compressée de tous les fichiers non exclus. Vérifiez ce qui est inclus. Les images volumineuses, vidéos ou fichiers de données sont des causes fréquentes ; ajoutez-les à .gitignore pour les exclure.
Appuyez sur Ctrl+C pour quitter ; le build continue en arrière-plan. Consultez le dashboard pour connaître le statut. Si cela se produit régulièrement, votre réseau abandonne peut-être les requêtes d'interrogation.
Vous avez besoin d'au moins un projet dans votre compte Jamdesk. Créez-en un sur dashboard.jamdesk.com.
Pour plus d'informations sur le dépannage CLI, consultez le guide CLI du Centre d'aide.
