[yocto] [AB PATCH 21/22] buildslave-janitor: Add in try/except handling to make calls robust against failure
Elizabeth Flanagan
elizabeth.flanagan at intel.com
Wed Mar 19 13:51:19 PDT 2014
From: Richard Purdie <richard.purdie at linuxfoundation.org>
There is a suspicion that the command can fail causing the janitor trash
removal process to exit. This adds in some exception handling to deal
with this. It include a timeout to stop it entering nasty loops.
This combined with the previous patch should let us figure out what
error conditions its hitting.
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
bin/buildslave-janitor | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
diff --git a/bin/buildslave-janitor b/bin/buildslave-janitor
index 153f18d..7495ce9 100755
--- a/bin/buildslave-janitor
+++ b/bin/buildslave-janitor
@@ -66,11 +66,16 @@ def trash_processor(trashdir):
print("Not prepared to use a trashdir of /")
return
while True:
- files = os.listdir(trashdir)
- if files:
- os.system("ionice -c 3 rm %s -rf" % trashdir)
- else:
- time.sleep(30*60) # 30 minutes
+ try:
+ files = os.listdir(trashdir)
+ if files:
+ os.system("ionice -c 3 rm %s -rf" % trashdir)
+ else:
+ time.sleep(30*60) # 30 minutes
+ except Exception as e:
+ print("Exception %s in trash cleaner" % str(e))
+ time.sleep(60) # 1 minute timeout to prevent crazy looping
+ pass
return
def mirror_processor(mirrordir):
--
1.8.1.2
More information about the yocto
mailing list