Avancé
Pipeline CI/CD avec GitHub Actions
Configuration d'un workflow de déploiement continu pour une application Node.js.
📝 Contenu du Prompt
Je suis ingénieur DevOps et je souhaite mettre en place un pipeline CI/CD complet pour une application Node.js sur GitHub.
Rédige le fichier de configuration YAML (.github/workflows/deploy.yml) qui répond aux exigences suivantes :
1. Se déclenche sur tout push vers la branche 'main' et sur toute Pull Request.
2. Exécute les tests unitaires avec 'npm test'.
3. Construit l'application avec 'npm run build'.
4. Connecte un conteneur Docker et pousse l'image vers Docker Hub.
5. Déploie automatiquement l'image sur un serveur de production (simulé via une commande SSH) uniquement si le build et les tests réussissent.
Assure-toi d'inclure des variables d'environnement sécurisées (secrets) pour les identifiants Docker et SSH. Explique chaque étape du processus.