Add --noclean option to avoid cleaning build root.

The --noclean option is useful for testing changes in a chroot without
blowing away local changes.

BUG=chromium-os:17659
TEST=Test that my changes aren't blown away when I use --noclean.

Change-Id: I2968de0e252bf10b2af7c71574b4d734e2ca3a19
Reviewed-on: http://gerrit.chromium.org/gerrit/4207
Reviewed-by: David James <davidjames@chromium.org>
Tested-by: David James <davidjames@chromium.org>
diff --git a/buildbot/cbuildbot.py b/buildbot/cbuildbot.py
index 14f1c44..972f953 100755
--- a/buildbot/cbuildbot.py
+++ b/buildbot/cbuildbot.py
@@ -195,7 +195,8 @@
 
   if _IsIncrementalBuild(options.buildroot, options.clobber):
     _CheckBuildRootBranch(options.buildroot, tracking_branch)
-    commands.PreFlightRinse(options.buildroot)
+    if options.clean:
+      commands.PreFlightRinse(options.buildroot)
 
   build_success = False
   build_and_test_success = False
@@ -517,6 +518,9 @@
   group.add_option('--nobuild', action='store_false', dest='build',
                     default=True,
                     help="Don't actually build (for cbuildbot dev")
+  group.add_option('--noclean', action='store_false', dest='clean',
+                    default=True,
+                    help="Don't clean the buildroot")
   group.add_option('--noprebuilts', action='store_false', dest='prebuilts',
                     default=True,
                     help="Don't upload prebuilts.")