From 48159f005a0ad990d933c673759734a92149670c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20P=C3=B6hn?= Date: Thu, 13 Apr 2017 18:41:50 +0200 Subject: [PATCH] reset buildserver vm if vagrant uuid not present --- fdroidserver/build.py | 5 ++++- fdroidserver/vmtools.py | 6 ++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/fdroidserver/build.py b/fdroidserver/build.py index 06b93529..80af320c 100644 --- a/fdroidserver/build.py +++ b/fdroidserver/build.py @@ -242,8 +242,11 @@ def vm_new_get_clean_builder(serverdir, reset=False): vm = vmtools.get_build_vm(serverdir) if reset: logging.info('resetting buildserver by request') + elif not vm.vagrant_uuid_okay(): + logging.info('resetting buildserver, bceause vagrant vm is not okay.') + reset = True elif not vm.snapshot_exists('fdroidclean'): - logging.info("resetting buildserver, because snapshot 'fdroidclean' is not present") + logging.info("resetting buildserver, because snapshot 'fdroidclean' is not present.") reset = True if reset: diff --git a/fdroidserver/vmtools.py b/fdroidserver/vmtools.py index a47b4c9e..ec28ed48 100644 --- a/fdroidserver/vmtools.py +++ b/fdroidserver/vmtools.py @@ -184,6 +184,12 @@ class FDroidBuildVm(): def package(self, output=None, vagrantfile=None, keep_box_file=None): self.vgrnt.package(output=output, vagrantfile=vagrantfile) + def vagrant_uuid_okay(self): + '''Having an uuid means that vagrant up has run successfully.''' + if self.srvuuid is None: + return False + return True + def _vagrant_file_name(self, name): return name.replace('/', '-VAGRANTSLASH-')