Question

J'utilise actuellement subversion pour mon contrôle de version via AhnkSVN et Visual Studio.J'ai récemment commencé à utiliser Arboriculteur pour monter mes projets.Il crée automatiquement un script de construction en utilisant NANT.J'aimerais pouvoir automatiser régulièrement les builds de projets au sein de SVN.J'aime l'idée de faire une build à chaque enregistrement, mais les builds nocturnes fonctionneraient également.Je donnerais plus d'informations ou plus de mes réflexions, mais j'ai pensé que je laisserais cela ouvert et verrais ce que la communauté SO a à dire.

Était-ce utile?

La solution

Vous pourriez utiliser CruiseControl.Net, qui peut effectuer une compilation à chaque enregistrement, des builds nocturnes ou comme vous le souhaitez.Une recherche rapide sur Google suggère que CC.Net en propose intégration avec NAnt déjà.

Autres conseils

Comme d'autres l'ont mentionné, nous utilisons CCNET ici, sur lequel nous ne travaillons généralement pas sur une version nocturne, mais optons plutôt pour une stratégie d'intégration continue (à chaque enregistrement).

Je conseillerais de faire de même, que ce soit par vous-même ou au sein d'une équipe, car vous pouvez très facilement configurer des tests unitaires pour qu'ils s'exécutent également à chaque enregistrement, des tests FXCop et une multitude d'autres produits.

S'il n'y a que vous dans une équipe composée d'un seul homme et que vous n'avez pas trop de projets en cours, je vous conseillerais également de consulter Équipe Ville en option, car il existe une version gratuite, et les rapports et la configuration seraient beaucoup plus simples (cela me semble sympa).

Cela dit, nous avons commencé avec CCNET et avons développé plusieurs produits trop volumineux pour regarder Team City sur la version gratuite et nous sommes très satisfaits de ce que nous avons.

Les fonctionnalités qui aident avec CCNET incluent :

  • Configuration basée sur XML - vous pouvez généralement copier et coller la plupart de ce dont vous avez besoin.
  • Plus ou moins, vous pourrez brancher votre script Treesurgeon en tant que script de construction et pointer CCNET vers celui-ci comme une tâche exécutable pour exécuter la compilation.
  • Beaucoup de documentation et très facile à mettre en place nunit, ncover, fxcop, etc.
  • Application de barre des tâches qui vous permettra de connaître l'état de vos projets à tout moment, et elle peut également envoyer un e-mail ou conserver un flux RSS avec les mêmes informations.

Mais j'opterais certainement pour l'exécution d'une version CI à chaque enregistrement - pour la plupart, j'exécuterai les tests unitaires avant l'enregistrement, mais je laisserai le serveur CCNET gérer toutes les applications/assemblys qui auraient des dépendances sur l'assembly que nous avons. re-enregistrement, et ils sont reconstruits et re-testés à chaque enregistrement.

Étant donné que c'est gratuit et que sa configuration prend très peu de temps, je vous recommande fortement d'y aller.

CruiseControl.NET est votre meilleure option, à mon avis.Il est assez facile d'étendre avec des tâches personnalisées si nécessaire, fonctionne à la fois avec NAnt et MSBuild prêts à l'emploi et est très activement maintenu.

Il y a aussi Draco.NET, qui s'inspire de CruiseControl.NET et est un peu plus léger.Regarde ça article pour plus d’informations sur les deux solutions d’intégration continue.

je suggère ÉquipeCité. :)

j'aime beaucoup robot de construction.Il est open source, écrit en python et très simple à déployer, développer et maintenir.Il s'intègre facilement à SVN et à la majorité des autres systèmes de contrôle de code source.Tous vos scripts de build sont du code python, vous disposez donc d'une grande flexibilité en termes de ce que vos scripts Build Master principaux peuvent faire.Vous pouvez bien sûr également l'utiliser pour lancer tout autre type de script ou de fichier batch.

Vous pouvez consulter quelques exemples de buildbot en action :

Vous voudrez peut-être envisager CI-Factory.Il s'agit d'un générateur d'environnement d'intégration continue qui utilise CruiseControl.NET et une douzaine d'autres outils.Il y a un excellent screencast ici : http://www.dnrtv.com/default.aspx?showID=64

Nous utilisons CruiseControl.NET avec NAnt et MsBuild pour notre serveur de build.Nous l'avons configuré pour qu'il ait des builds à chaque fois que nous archivons du code, ainsi que des builds nocturnes.

Cascade prend en charge la création d'une compilation sur chaque modification apportée au référentiel.

J'utilise FinalBuilder depuis quelques années maintenant.L’avantage de FinalBuilder est qu’il fait bien plus que simplement construire.Je l'ai configuré pour faire une analyse des résultats, créer des archives des builds, envoyer des journaux d'erreurs, etc.La dernière version dispose d'une interface Web qui permet aux non-experts de lancer des builds en un clic.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top