Par exemple, j'ai trois tâches: task1, task2, task3. Comment écrire un fichier de configuration CruiseControl.NET qui exécute la tâche 3 mais seulement après que la tâche 2 se termine avec succès?Comment exécuter la tâche CruiseControl.NET mais seulement après la fin d'une tâche spécifique?
Répondre
CruiseControl.NET v1.5 améliore l'exécution des tâches à l'aide de leurs nouvelles tâches séquentielles et parallèles ...
http://confluence.public.thoughtworks.org/display/CCNET/Sequential+Task
<sequential continueOnFailure="false">
<description>Example of how to run multiple tasks in sequence.</description>
<tasks>
<!-- Tasks defined here -->
</tasks>
</sequential>
Je vous suggère de le faire dans votre tâche NAnt ou MSBuild à la place, et de le sortir de votre configuration CruiseControl.NET.
Que faites-vous? Quelle est la raison pour laquelle vous ne pouvez pas les déplacer dans votre script NAnt ou MSBuild?
Je recommanderais un fichier de script (bat, PowerShell) où vous exécutez les tâches et vérifiez le succès.
Selon ce que vous essayez d'accomplir, cela peut être fait assez facilement de 2 façons:
A) CruiseControl.NET prend en charge ce qui est appelé projectTriggers:
Pour utiliser cette approche, chaque tâche doit être isolée dans sa propre configuration de projet. Fondamentalement, le projet task3 surveille l'état de construction du projet task2. Lorsque le projet task2 se termine avec succès, le projet task3 déclenche une génération. Pour configurer un projectTrigger, modifier votre projet TASK3 définition ccnet.config et créer un bloc de déclenchement comme suit:
<triggers>
<multiTrigger>
<triggers>
<intervalTrigger seconds="30" />
<projectTrigger project="task2">
<triggerStatus>Success</triggerStatus>
</projectTrigger>
</triggers>
</multiTrigger>
</triggers>
B) Configuration de l'ordre de vos tâches à l'aide des cibles au lieu Nant:
Comme indiqué par Wim, vous pouvez envisager de séparer les tâches en cibles Nant au lieu d'essayer de le faire dans ccnet.config. Personnellement, je trouve cette approche plus confortable seulement parce que je sais que Nant est bon à faire ce genre de chose.
- 1. Comment exécuter une tâche pour une période spécifique en Java.
- 2. Comment afficher les heures de la tâche cible dans CruiseControl.NET?
- 3. Exécuter myVBS Tâche planifiée
- 4. Exécuter la tâche de coupe de crontab
- 5. Fin de la tâche planifiée en arrière-plan
- 6. NCover Nunit CruiseControl.NET tâche avec NCover Addin
- 7. Exécuteurs Java: attente de la fin de la tâche.
- 8. Faire CruiseControl.NET MSBuild travail Tâche Identique à VS 2008 Construire
- 9. Comment exécuter périodiquement une tâche dans emacs?
- 10. Planification d'une tâche à exécuter à la fin de chaque mois. (Windows Server 2003 - Tâches planifiées)
- 11. Céleri - Obtenir l'ID de tâche pour la tâche en cours
- 12. Comment exécuter une tâche de rake juste après l'initialisation de la base de données par rspec
- 13. Exécuter inconditionnellement une tâche dans Ant?
- 14. jQuery .post ne pas exécuter la tâche dans l'URL
- 15. Comment exécuter le script Apple après la fin du précédent
- 16. Echec de la tâche SSIS, mais échec de l'agent SQL
- 17. exécuter la tâche planifiée avec les privilèges les plus élevés
- 18. Comment exécuter une tâche Rake Task après toutes les autres tâches? (c'est-à-dire une tâche Rake AfterBuild)
- 19. Exécuter une tâche Ant avec Maven
- 20. Exécuter la tâche de coupe à l'extérieur RAILS_ROOT
- 21. Exécuter une tâche d'arrière-plan en Javascript
- 22. CruiseControl.net soumet un fichier à SVN après qu'une tâche l'ait changé
- 23. La construction de CruiseControl.net échoue même si la tâche MSBuild réussit
- 24. Comment coder une tâche râteau pour déclencher une tâche BackgrounDRb?
- 25. jQuery: attente pour effectuer une tâche jusqu'à la fin d'une animation
- 26. Comment exécuter une tâche Rake en tant que "tâche planifiée" Windows?
- 27. La tâche de minuterie ne s'exécute pas
- 28. ejb avec la tâche ANT
- 29. Comment parcourir la tâche de boucle foreach?
- 30. Comment remplacer la tâche fourmi csc dépréciée
+1 Je ne savais pas cette fonctionnalité a été ajoutée. Bonne réponse aussi longtemps que @dario ne dérange pas d'utiliser la version 1.5 CTP pour l'instant –
Oui, c'est la mise en garde. C'est toujours un CTP. Je le testerais avant de migrer vers la nouvelle version. – George
Super d'entendre à ce sujet, mais toujours en utilisant 1.4 ver. – Dariusz