X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fbacula%2Ffiles%2Fvolumes-delete-old;h=e533e71b8b32ec24dd13922d8edc19c34f9fadc1;hb=236683276e8f41dc54f2347d4eb85ba2ca74c5ee;hp=e7e9ce235a346d5aa533fe7483a3a8d91ffd485b;hpb=aa5033873a02c14d0086b1a70111f28c92cd1afc;p=mirror%2Fdsa-puppet.git diff --git a/modules/bacula/files/volumes-delete-old b/modules/bacula/files/volumes-delete-old index e7e9ce235..e533e71b8 100755 --- a/modules/bacula/files/volumes-delete-old +++ b/modules/bacula/files/volumes-delete-old @@ -56,6 +56,7 @@ else: conn = psycopg2.connect(args.db) cursor = conn.cursor(cursor_factory=psycopg2.extras.DictCursor) +cmd = [] # Error volumes cursor.execute(""" SELECT volumename @@ -67,7 +68,8 @@ cursor.execute(""" (lastwritten IS NULL OR lastwritten < current_date - interval '6 weeks') """, {}) for r in cursor.fetchall(): - print("delete volume=%s yes"%(r['volumename'],)) + c = "delete volume=%s yes"%(r['volumename'],) + cmd.append(c) # Append volumes - we should not have any of these cursor.execute(""" @@ -85,7 +87,8 @@ cursor.execute(""" volwrites = 0 """, {}) for r in cursor.fetchall(): - print("delete volume=%s yes"%(r['volumename'],)) + c = "delete volume=%s yes"%(r['volumename'],) + cmd.append(c) cursor.execute(""" SELECT volumename @@ -100,7 +103,6 @@ cursor.execute(""" recycle=1 """, {}) -cmd = [] for r in cursor.fetchall(): c = "delete volume=%s yes"%(r['volumename'],) cmd.append(c) @@ -113,14 +115,18 @@ if args.verbose: for c in cmd: print("Will run: %s"%(c,)) -p = subprocess.Popen(['bconsole'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) +p = subprocess.Popen(['/usr/sbin/bconsole'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) (out, err) = p.communicate("\n".join(cmd).encode()) if p.returncode != 0: raise Exception("bconsole failed. stdout:\n%s\nstderr:%s\n"%(out, err)) if args.verbose: - print("stdout:\n%s"%(out,)) - -if err != "": - print("bconsole said on stderr:\n%s\n"%(err,), file=sys.stderr) + print("stdout:\n") + sys.stdout.buffer.write(out) + print("\n") + +if err != b"": + print("bconsole said on stderr:\n", file=sys.stderr) + sys.stderr.buffer.write(out) + print("", file=sys.stderr) sys.exit(1)