+# find obsolete pools, but only if we have a list of clients
+##
+if os.path.exists(args.clientlist):
+ clients = set(open(args.clientlist).read().split())
+
+ cursor.execute("""
+ SELECT name
+ FROM pool
+ WHERE
+ name != 'Scratch' AND
+ numvols = 0 AND
+ poolid NOT IN (SELECT recyclepoolid FROM media)
+ """, {})
+
+ for r in cursor.fetchall():
+ poolname = r['name']
+ match = re.match('pool[a-z]*-debian-(.*)', poolname)
+ if match is not None:
+ hostname = match.group(1)
+ if hostname not in clients:
+ c = "delete pool=%s"%(poolname,)
+ cmd.append(c)
+ cmd.append("yes")
+ elif args.verbose:
+ print("Not expiring empty pool %s because client still exists"%(poolname,))
+ elif args.verbose:
+ print("Could not extract client name from poolname %s"%(poolname,))
+