cbuildbot: Set chrome version after sync stage.

This change sets the Chrome version run attribute
(run.attrs.chrome_version) after the SyncChrome stage in any flow, even
if no new Chrome version is synced (i.e. SyncChrome stage is skipped).

This also adds the SyncChrome stage to the CQ master flow.  The stage
will be skipped in that flow, but that will still set the Chrome version
run attribute.

BUG=chromium:347387
TEST=`buildbot/run_tests`
TEST=`cbuildbot --debug --buildbot --remote master-paladin` shows chrome
version in log.
TEST=`cbuildbot --remote lumpy-chrome-pfq`
still shows chrome version after SyncChrome stage.

Change-Id: Iaca6d47a7ed9f23e9f7193e1d8ee9c2b92ffd96e
Reviewed-on: https://chromium-review.googlesource.com/188421
Tested-by: Matt Tennant <mtennant@chromium.org>
Reviewed-by: Aviv Keshet <akeshet@chromium.org>
Commit-Queue: Matt Tennant <mtennant@chromium.org>
diff --git a/scripts/cbuildbot.py b/scripts/cbuildbot.py
index e45e0d4..75292b5 100644
--- a/scripts/cbuildbot.py
+++ b/scripts/cbuildbot.py
@@ -165,7 +165,7 @@
     return stage(builder_run, *args, **kwargs)
 
   def _SetReleaseTag(self):
-    """Sets the release tag from the manifest manager.
+    """Sets run.attrs.release_tag from the manifest manager used in sync.
 
     Must be run after sync stage as syncing enables us to have a release tag,
     and must be run before any usage of attrs.release_tag.
@@ -511,6 +511,9 @@
     """Runs through the stages of the paladin (commit queue) master build."""
     self._RunStage(stages.InitSDKStage)
     self._RunStage(stages.UprevStage)
+    # The CQ (paladin) master will not actually run the SyncChrome stage, but
+    # we want the logic that gets triggered when SyncChrome stage is skipped.
+    self._RunStage(stages.SyncChromeStage)
     self._RunStage(stages.MasterUploadPrebuiltsStage)
 
   def _RunDefaultTypeBuild(self):