Turbulences Admin
Turbulences Admin
Agile
25 March 2014

NuGet – La suite

Finalement, la solution que j’avais trouvé pour fabriquer les packages NuGet à chaque build ne fait plus l’affaire. En fait, dès que j’ai archivé les fichiers dans TFS, je me suis mis à avoir des problèmes avec le code de page; on dirait que TFS changeait quelque chose pis j’ai pas trouvé quoi. Pis de toute façon, je trouvais ça un peu extrême de produire le package NuGet à chaque buid. J’ai donc cherché une autre solution et j’ai trouvé NuGetter. C’est en fait un template de build TFS et une activité custom qui permet de produire le paquet NuGet et de le publier optionnellement. Au début, je suis tombé sur la version de CodePlex, la 2.1. J’ai installé le template et l’activité dans notre TF as a Service et évidemment, ça n’a pas fonctionné. La génération du package est basé sur le répertoire de “drop location” mais bien sûr, avec TF as a Service, la seule “drop location” possible, c’est dans le gestionnaire de source, l’agent de build étant partagé. J’ai fouillé un peu mais j’ai pas trouvé comment l’arranger, j’ai donc mis ça sur la glace. Quelques temps plus tard, j’ai trouvé que la version 2.2 existait en beta et qu’elle avait été faite pour TF as a Service; je l’ai donc installé mais sans succès encore. Mais bon, étant donné que la version était fait pour ça, je me suis dit que ça ne devait pas être grand chose qui l’empêchait de fonctionner. J’ai donc “forké” le projet github et j’ai cherché ce qui n’allait pas; finalement, c’est juste un argument qui n’avait pas le bon nom et qui n’était pas propagé vers les activités enfant, donc les branches qui ajustaient le comportement en fonction de TF as a Service n’étaient jamais invoquées. Avec la correction, on peut maintenant intégrer l’étape de création du package NuGet dans le build. On peut même publier le package dans le feed NuGet. C’est là que je me suis cogné le nez avec notre feed NuGet privé. La suite dans un prochain billet!