I might be starting a new project in .NET soon, and would prefer not to use an XML-based build tool like Nant or MSBuild. I like Rake, but I'm thinking it may be better to have something based on a .NET dynamic language (such as Boo), similar in spirit to gant or BuildR for Java. Is there such a thing for .NET? If not, what do you recommend?
There is always the Boo Build System or "Boobs" for short (yes it's a silly name) and looks very similar to Rake.
Ayende has written about this previously in Introducing the Boobs Build System and shows a nice example of the syntax.
Boo is written in C# and has a really nifty compiler that can be modified at runtime for doing all sorts of domain specific language (DSL) tricks.
You should really check out FinalBuilder. I evaluated it quite a bit last year and really liked it although in the end we deployed TFS2008 and so we're using TeamBuild to get a lot of the integration goodness. But really FinalBuilder had TONs of prebuilt build activities, great support for lots of environments and tools, and a nice IDE for designing it all.
You could try FluentBuild.
For my money, using UppercuT (uses NAnt in the back end) is an optimal solution because of everything that it can do for me without much work to set it up.
http://code.google.com/p/uppercut/
Some good explanations here: UppercuT
You should try NUBuild.
I uses it on a regular basis and I work with around 75 projects that I need to build with every code change/release. NUBuild is extremely fast, easy to setup (you do it only once) and gives you the power of a complete build server at your fingertip by letting you do 'local builds'. It also has lots of other advance features and functionalities. You can find more detail on the project site (on codeplex):
I haven't heard of anything like that, but maybe you could port Rake to IronRuby, and then extend it to understand building C#/VB.NET and running other .NET tools.
Using a non-industry standard build system is something you should only really do if the industry standard build systems don't do something you need. Is there some functionality that Nant/Msbuild don't provide that you expect to need?
Since you mention it, I just got started with IronRuby and rake on a current project. Because I don't want my team to have to install MRI I decided to go with an xcopy deployment of IronRuby that I had preloaded with rake. Not sure if this is exactly what you're after but check out my blog post on the early findings.
http://dylandoesdigits.blogspot.com/2009/11/rake-for-net-projects.html
I think it meets your requirements. .NET based on the dynamic language runtime, no XML. As a current msbuild angle bracket co-sufferer, I'm pretty happy with how little work it's been thus far.
© 2022 - 2024 — McMap. All rights reserved.