Devserver: make touch provision_failed as the first action in provision

This CL make 'touch /var/tmp/provision_failed' as the first action in CrOS
Auto-Update flow.

BUG=chromium:653368
TEST=Run repair in local autotest.

Change-Id: I29a47ac4735ad559f1fff5133d1efabe9aa5e435
Reviewed-on: https://chromium-review.googlesource.com/394888
Commit-Ready: Aviv Keshet <akeshet@chromium.org>
Tested-by: Aviv Keshet <akeshet@chromium.org>
Reviewed-by: Aviv Keshet <akeshet@chromium.org>
diff --git a/cros_update.py b/cros_update.py
index 6bf3e3f..d969220 100644
--- a/cros_update.py
+++ b/cros_update.py
@@ -175,13 +175,14 @@
             yes=True)
         chromeos_AU.CheckPayloads()
 
+        version_match = chromeos_AU.PreSetupCrOSUpdate()
         self._WriteAUStatus('Transfer Devserver/Stateful Update Package')
         chromeos_AU.TransferDevServerPackage()
         chromeos_AU.TransferStatefulUpdate()
 
         restore_stateful = chromeos_AU.CheckRestoreStateful()
         do_stateful_update = (not self.full_update) and (
-            chromeos_AU.PreSetupCrOSUpdate() and self.force_update)
+            version_match and self.force_update)
         stateful_update_complete = False
         logging.debug('Start CrOS update process...')
         try: