Reland "cbuildbot_launch: Exclude cache option from being passed to branches"

This is a reland of f29163eebc54e56fef9bf2feeae3f324842ad5d8

Original change's description:
> cbuildbot_launch: Exclude cache option from being passed to branches
>
> All builds execute cbuildbot_launch from ToT before reexecuting
> cbuildbot at the branch level.  Currently we are using a source_cache
> option to indicate whether to skip steps related to preload, allowing
> for a transition to source cache snapshots.  Once source cache mounts
> are validated across all branches, we can remove the logic from
> cbuildbot_launch and not require the flag in recipes.
>
> BUG=b:197678613
> TEST='local tryjob'
>
> Change-Id: I8d77cefb7c4b407a33557abcefa607816d0d9ef4
> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/3201485
> Reviewed-by: Dhanya Ganesh <dhanyaganesh@chromium.org>
> Commit-Queue: Mike Nichols <mikenichols@chromium.org>
> Tested-by: Mike Nichols <mikenichols@chromium.org>

Bug: b:197678613
Change-Id: I2d4dbaf652c1f5bb03231985c0706f4d4e3cd07f
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/3206390
Reviewed-by: Dhanya Ganesh <dhanyaganesh@chromium.org>
Commit-Queue: Mike Nichols <mikenichols@chromium.org>
Tested-by: Mike Nichols <mikenichols@chromium.org>
diff --git a/scripts/cbuildbot_launch.py b/scripts/cbuildbot_launch.py
index 76bf076..aa3f8db 100644
--- a/scripts/cbuildbot_launch.py
+++ b/scripts/cbuildbot_launch.py
@@ -280,7 +280,7 @@
   if not source_cache:
     if previous_state.buildroot_layout != BUILDROOT_BUILDROOT_LAYOUT:
       cbuildbot_alerts.PrintBuildbotStepText(
-        'Unknown layout: Wiping buildroot.')
+          'Unknown layout: Wiping buildroot.')
       metrics.Counter(METRIC_CLOBBER).increment(
           fields=field({}, reason='layout_change'))
       chroot_dir = os.path.join(root, constants.DEFAULT_CHROOT_DIR)
@@ -293,7 +293,7 @@
         cbuildbot_alerts.PrintBuildbotStepText(
             'Branch change: Cleaning buildroot.')
         logging.info('Unmatched branch: %s -> %s', previous_state.branch,
-                    repo.branch)
+                     repo.branch)
         metrics.Counter(METRIC_BRANCH_CLEANUP).increment(
             fields=field({}, old_branch=previous_state.branch))
 
@@ -430,6 +430,11 @@
     if arg in ('-r', '--buildroot'):
       argv[i + 1] = buildroot
 
+  # Source_cache flag is only used to indicate a transition to cache disks
+  # and doesn't need to be passed back to Cbuildbot.
+  if '--source_cache' in argv:
+    argv.remove('--source_cache')
+
   # This filters out command line arguments not supported by older versions
   # of cbuildbot.
   parser = cbuildbot.CreateParser()