Project UppercuT
UppercuT is automated .NET build framework that is templated NAnt with conventions. UppercuT is the insanely easy to use build framework.
It seeks to solve both maintenance concerns and ease of build to help you concentrate on what you really want to do: write code. Upgrading the build should take seconds, not hours. And that is where UppercuT will beat any other automated build system hands down.
UppercuT uses conventions and has a simple configuration file for you to edit. Getting from zero to build takes literally less than five minutes. If you are still writing your own build scripts, you are working too hard.
UppercuT is extremely powerful because it is customizable and extendable. Every step of the build process is customizable with a pre, post and replace hook.
UppercuT is not a build server, but it integrates nicely with CruiseControl.NET, TeamCity, Hudson, etc.
Core build process provided by UppercuT (in order):
- Checking policies are met
- Versioning DLLs based on build number and source control revisions
- Compile activities - F5 or Ctrl + Shift + B
- Code Testing and Analysis
- Testing
- NUnit
- MbUnit v2
- Gallio
- xUnit (FUTURE ENHANCEMENT)
- NCover
- NDepend
- Mono Migration Analyzer
- Others (FUTURE ENHANCMENTS)
- Environment Templating and Building (ConfigBuilder, DocBuilder, SQLBuilder, DeploymentBuilder)
- Packaging output to prepare for deployment
- Zipping up output
UppercuT keeps a wiki at http://uppercut.pbwiki.com
Roadmap
v1
- Lots of other tasks - DONE
- Custom Pre Hooks - DONE
- Custom Replacement Task Hooks - DONE
- UppercuT version is reported with build - DONE
- Documentation on PBWiki needs a facelift
- Docs need updated
- NDepend Helper
- Auto Resolver for external libraries
v2
- Other Analyzers
- CopyPasteKiller
- Nitriq
- Support for other Test Frameworks
- Gallio - DONE
- xUnit
- ??
- .NET Framework 4.0
- GUI for configuring build
- VersionBuilder Support for other Source Control Systems
- TFS
- Git
- Vault
- VSS?
Future version (someday)
- Remove dependencies on NAnt
