Thibaut Barrère wrote:
...
We have some third party library (namely, Syncfusion Essential Suite)
which is massively used in our components (here the CCNet+NAnt setup
drives 60+ solutions). A new release came out with a change in the
licensing strategy (the content of the .licx file had to be updated),
and also with a breaking change of assembly names (such as : each
previous dependency was split in two, plus another 'Core' dll had to
be referenced).
With NAnt I was able to :
- determine the project files where a change was required (thanks to
fileset + patterns + recursivity + small c# custom task)
find . -name "*proj" | xargs grep Syncfusion (or whatever the right
search term is to identify the files)
The power of the find utility is one of the things I miss most when
working with NAnt.
...The whole operation took me one day (alone, and working in
isolation from the team).
The other ways would have been to use the GUI-only tools provided and
let people do their changes (= chaos, most likely!), or use a make /
bash / batch script, but in my case I dare say I would have been much
slower, and much more likely to cause errors.
Without all the details, I don't know how long it would have taken me,
though I'm pretty sure the first two tasks in your list would have been
quite quick. Line-oriented files like .licx files are snack food for
sed and grep. For XML, I'd probably use NAnt for tiny updates and other
tools if it were more complicated.
But this is where the first value of the Agile Manifesto shows itself:
"Individuals and Interactions over processes and tools." It really
doesn't matter that you would do it with one set of tools, and I'd use a
different set. What matters is doing it the way that feels best for us,
while always striving to learn more.
The things I especially like about NAnt/Ant for such operations is the
error handling (by default, it fails fast, where a script usually does
not fail so quickly by default - it requires more care to achieve
this), the tasks which are provided (such as interacting with VSS),
and the cheap extensibility (custom tasks, or scripts, comes very handy).
One of the things I dislike most about NAnt/Ant is the ugly and
expensive extensibility, but see my previous paragraph.
Gary
-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server.
Download it for free - -and be entered to win a 42" plasma tv or your very
own Sony(tm)PSP. Click here to play: http://sourceforge.net/geronimo.php
_______________________________________________
Nant-users mailing list
Nant-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-users