netlify-deploy

Déployez des projets web sur Netlify à l'aide du CLI Netlify (`npx netlify`). À utiliser lorsque l'utilisateur demande de déployer, héberger, publier ou lier un site/dépôt sur Netlify, y compris pour les déploiements de prévisualisation et de production.

npx skills add https://github.com/openai/skills --skill netlify-deploy

Skill de déploiement Netlify

Déployez des projets web sur Netlify en utilisant la CLI Netlify avec détection intelligente de la configuration du projet et du contexte de déploiement.

Aperçu

Ce skill automatise les déploiements Netlify en :

  • Vérifiant l'authentification de la CLI Netlify
  • Détectant la configuration et le framework du projet
  • Créant un lien vers des sites existants ou en créant de nouveaux
  • Déployant vers des environnements de production ou d'aperçu

Prérequis

  • CLI Netlify : Installée via npx (aucune installation globale requise)
  • Authentification : Compte Netlify avec session de connexion active
  • Projet : Projet web valide dans le répertoire courant
  • Quand le sandboxing bloque les appels réseau de déploiement, réexécutez avec sandbox_permissions=require_escalated.
  • Le déploiement peut prendre quelques minutes. Utilisez des valeurs de timeout appropriées.

Modèle d'authentification

Le skill utilise l'approche de CLI Netlify pré-authentifiée :

  1. Vérifier le statut d'authentification avec npx netlify status
  2. Si non authentifié, guider l'utilisateur via npx netlify login
  3. Échouer gracieusement si l'authentification ne peut pas être établie

L'authentification utilise soit :

  • OAuth basée sur le navigateur (primaire) : netlify login ouvre le navigateur pour l'authentification
  • Clé API (alternative) : Définir la variable d'environnement NETLIFY_AUTH_TOKEN

Flux de travail

1. Vérifier l'authentification de la CLI Netlify

Vérifiez si l'utilisateur est connecté à Netlify :

npx netlify status

Motifs de sortie attendus :

  • ✅ Authentifié : Affiche l'email de l'utilisateur connecté et l'état du lien du site
  • ❌ Non authentifié : « Not logged into any site » ou erreur d'authentification

Si non authentifié, guider l'utilisateur :

npx netlify login

Cela ouvre une fenêtre de navigateur pour l'authentification OAuth. Attendez que l'utilisateur termine la connexion, puis vérifiez à nouveau avec netlify status.

Alternative : Authentification par clé API

Si l'authentification par navigateur n'est pas disponible, les utilisateurs peuvent définir :

export NETLIFY_AUTH_TOKEN=your_token_here

Les tokens peuvent être générés sur : https://app.netlify.com/user/applications#personal-access-tokens

2. Détecter le statut de lien du site

À partir de la sortie netlify status, déterminer :

  • Lié : Site déjà connecté à Netlify (affiche le nom/URL du site)
  • Non lié : Besoin de créer un lien ou un nouveau site

3. Créer un lien vers un site existant ou en créer un nouveau

Si déjà lié → Passer à l'étape 4

Si non lié, tentez de créer un lien via la remote Git :

# Vérifier si le projet est basé sur Git
git remote show origin

# Si basé sur Git, extraire l'URL de la remote
# Format: https://github.com/username/repo ou git@github.com:username/repo.git

# Tenter de créer un lien via la remote Git
npx netlify link --git-remote-url <REMOTE_URL>

Si le lien échoue (le site n'existe pas sur Netlify) :

# Créer un nouveau site interactivement
npx netlify init

Cela guide l'utilisateur à travers :

  1. Choisir une équipe/compte
  2. Définir le nom du site
  3. Configurer les paramètres de build
  4. Créer netlify.toml si nécessaire

4. Vérifier les dépendances

Avant de déployer, assurez-vous que les dépendances du projet sont installées :

# Pour les projets npm
npm install

# Pour les autres gestionnaires de paquets, détecter et utiliser la commande appropriée
# yarn install, pnpm install, etc.

5. Déployer sur Netlify

Choisissez le type de déploiement en fonction du contexte :

Déploiement d'aperçu/brouillon (par défaut pour les sites existants) :

npx netlify deploy

Cela crée un aperçu de déploiement avec une URL unique pour les tests.

Déploiement en production (pour les nouveaux sites ou les déploiements en production explicites) :

npx netlify deploy --prod

Cela déploie vers l'URL de production active.

Processus de déploiement :

  1. La CLI détecte les paramètres de build (à partir de netlify.toml ou demande à l'utilisateur)
  2. Construit le projet localement
  3. Télécharge les assets compilés vers Netlify
  4. Retourne l'URL de déploiement

6. Signaler les résultats

Après le déploiement, signalez à l'utilisateur :

  • URL de déploiement : URL unique pour ce déploiement
  • URL du site : URL de production (si déploiement en production)
  • Logs de déploiement : Lien vers le tableau de bord Netlify pour les logs
  • Étapes suivantes : Suggérer netlify open pour afficher le site ou le tableau de bord

Gestion de netlify.toml

Si un fichier netlify.toml existe, la CLI l'utilise automatiquement. Sinon, la CLI demandera :

  • Commande de build : par ex. npm run build, next build
  • Répertoire de publication : par ex. dist, build, .next

Défauts courants pour les frameworks :

  • Next.js : commande de build npm run build, publication .next
  • React (Vite) : commande de build npm run build, publication dist
  • HTML statique : pas de commande de build, publication du répertoire courant

Le skill devrait détecter le framework à partir de package.json si possible et suggérer les paramètres appropriés.

Exemple de flux complet

# 1. Vérifier l'authentification
npx netlify status

# Si non authentifié :
npx netlify login

# 2. Créer un lien vers le site (si nécessaire)
# Essayer d'abord le lien basé sur Git
git remote show origin
npx netlify link --git-remote-url https://github.com/user/repo

# Si aucun site n'existe, en créer un nouveau :
npx netlify init

# 3. Installer les dépendances
npm install

# 4. Déployer (aperçu pour les tests)
npx netlify deploy

# 5. Déployer en production (quand prêt)
npx netlify deploy --prod

Gestion des erreurs

Problèmes courants et solutions :

« Not logged in » → Exécutez npx netlify login

« No site linked » → Exécutez npx netlify link ou npx netlify init

« Build failed » → Vérifiez la commande de build et le répertoire de publication dans netlify.toml ou les invites CLI → Vérifiez que les dépendances sont installées → Consultez les logs de build pour les erreurs spécifiques

« Publish directory not found » → Vérifiez que la commande de build s'est exécutée avec succès → Vérifiez que le chemin du répertoire de publication est correct

Dépannage

Accès réseau escaladé

Si le déploiement échoue en raison de problèmes réseau (timeouts, erreurs DNS, réinitialisations de connexion), réexécutez le déploiement avec des permissions escaladées (utilisez sandbox_permissions=require_escalated). Le déploiement nécessite un accès réseau escaladé quand le réseau du sandbox bloque les requêtes sortantes.

Exemple de guidance pour l'utilisateur :

Le déploiement nécessite un accès réseau escaladé pour déployer sur Netlify. Je peux réexécuter la commande avec des permissions escaladées—voulez-vous continuer ?

Variables d'environnement

Pour les secrets et la configuration :

  1. Ne commettez jamais les secrets dans Git
  2. Définissez dans le tableau de bord Netlify : Paramètres du site → Variables d'environnement
  3. Accédez dans les builds via process.env.VARIABLE_NAME

Conseils

  • Utilisez netlify deploy (sans --prod) d'abord pour tester avant la production
  • Exécutez netlify open pour afficher le site dans le tableau de bord Netlify
  • Exécutez netlify logs pour afficher les logs des fonctions (si vous utilisez Netlify Functions)
  • Utilisez netlify dev pour le développement local avec Netlify Functions

Référence

Références groupées (à charger selon les besoins)

Skills similaires