BooBS Sample

time to read 3 min | 540 words

Here is the first such script that I am going to use:

import Boobs.IO.Extensions
import Boobs.Compiler.Extensions

Task
"default", ["build"]

Task
"build", ["clean"]:
      MsBuild("MyApp.sln").Execute()

Task "clean":
      MsBuild("MyApp.sln", "/target:clean").Execute()

Svn "ContiniousIntegration":
      SvnUpdate
      Execute("default")

Note that this is probably incredibly primitive consider what rake can do, but it amuses me to be able to do this.

The commands are probably even more fun:

Tools\BooBuildSystem\boobs -f:default.boobs -t:ContiniousIntegration

The Svn task will only be run if the repository is more recent than the working copy, so this is something that makes it very easy to build CI scripts. In this case I need to do something a distributed deployment on commit, and while I can probably do this using CC.Net, I am not really fond of the anticipated pain (configuring permissions alone would be a PITA, I imagine) and the executable XML.

This is far simpler, if more primitive.

As an aside, I am getting addicted to parenthesis-less method calls.