web-dev-qa-db-fra.com

Exécuter le script Gulp avec forever?

Est-il possible d'exécuter le script Gulp avec forever ?

J'ai un script Gulp qui voudrait être exécuté en tant que démon, je pourrais donc le démarrer/l'arrêter/le lister.

15
Boris Brdarić

D'accord, j'ai donc résolu le problème en liant le binaire gulp de/usr/bin à mon dossier local, puis en exécutant simplement la commande localement. Ainsi:

ln -s /usr/bin/gulp ./gulp
forever start gulp serve

Les commandes peuvent varier pour vous, mais j'espère que vous en aurez l'essentiel.

23
Theodore Yankov

si vous installez gulp dans votre projet de noeud, vous pouvez procéder comme suit:

forever start node_modules/gulp/bin/gulp.js [YOUR GULP TASK]

9
HaveF

Pour vous donner une réponse programmatique:

Vous utilisez le sous-jacent forever-monitor qui contient la fonctionnalité principale utilisée par le package CLI forever.

var forever = require('forever-monitor');

gulp.task('server', function () {
    new forever.Monitor('path/to/server-script.js').start();
});

Vous pouvez exécuter plusieurs tâches de ce type. Il n'est pas nécessaire d'utiliser des options de démon spéciales, car les tâches gulp utilisent orchestrator sous le capot qui les exécute simultanément.

Si l'utilisation de CMD + C dans la console ne convient pas pour arrêter vos tâches, vous pouvez le mettre dans une variable:

var child = new forever.Monitor('path/to/server-script.js');
child.on('event', cb) / child.start() / child.stop()
4
Dominic

Installer pm2

$ npm install pm2 -g

Maintenant, commencez gulp

pm2 start gulp serve

Vous pouvez afficher les services en cours d'exécution à l'aide de pm2 l et Remarque: vous pouvez parfois voir vos services s'exécuter à côté du port que vous avez spécifié, par exemple: http: // localhost: 3001 au lieu de http: // localhost : 3000

1
Thamaraiselvam

Essaye ça:

forever start -c "gulp" serve

L'option -c vous permet d'utiliser n'importe quelle commande.

0
Sterex