Râteau avant que la tâche crochet
Est-il un simple moyen de modifier une tâche Rake exécuter un morceau de code avant l'exécution de la tâche existante? Je suis à la recherche de quelque chose d'équivalent à améliorer, qui se déroule au début plutôt qu'à la fin de la tâche.
Rake::Task['lame'].enhance(['i_run_afterwards_ha_ha'])
- La tâche doit être appelé
lame
, il ne peut pas être appelénot_so_lame
et il suffit d'exécuter du code avant d'invoquerlame
?Rake::Task["lame"].invoke
- Je ne dois pas comprendre quelque chose dans votre réponse? De quoi êtes-vous ce qui implique qu'il "doit être appelée boiteux, il ne peut pas être appelé not_so_lame"?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser la dépendance de tâche Rake pour le faire, et le fait que le Râteau permet de redéfinir les tâches.
Rakefile
Comme résultat
-n
dry-run râteau drapeau qui imprime l'ordre. Dans mon cas, j'ai voulu mettre une chose avant de larake release
, mais il semble être composé de plusieurs tâches et mon crochet a été placé au milieu. Au lieu de cela, j'ai dû ajouter lebuild
tâche, et cela n'est pas évident et fonctionnerait pas correctement si je n'étais pas assez attentif pour vérifier l'exécution de la sec. C'est peut-être parce que ces sous-tâches sont déjà attachés àrelease
de la même manière, idk.Ou vous pouvez utiliser le râteau-crochets gem à faire avant et après les crochets:
https://github.com/guillermo/rake-hooks