def handle_checkout_needs_update(cls, tool, state, options, error): message = "Tests passed, but commit failed (checkout out of date). Updating, then landing without building or re-running tests." tool.status_server.update_status(cls.name, message, state["patch"]) # The only time when we find out that out checkout needs update is # when we were ready to actually pull the trigger and land the patch. # Rather than spinning in the master process, we retry without # building or testing, which is much faster. options.build = False options.test = False options.update = True raise TryAgain()
def execute(self, options, args, tool): self.execute_count += 1 if self.execute_count < 2: raise TryAgain()