diff --git a/scripts/builders/isbuilding b/scripts/builders/isbuilding new file mode 100755 index 0000000000..616ce73e20 --- /dev/null +++ b/scripts/builders/isbuilding @@ -0,0 +1,41 @@ +#!/usr/bin/python -tt + +import ansible +import ansible.runner +import sys + + + + +def isbuilding(res, host): + if res['contacted'][host]['stdout'].strip() == 'none': + return False + else: + return True + + +pattern = 'builders' +if len(sys.argv) > 1: + pattern=';'.join(sys.argv[1:]) + +conn = ansible.runner.Runner(pattern=pattern, timeout=20, forks=30, remote_user='root') +conn.module_name='shell' +# this checks koji building or anything running as mock or mockbuilder +# first part check if kojid has any child processes +# second part is our catch for failure +# third part is to see if anything is running as mock or mockbuilder +conn.module_args="ps -opid= --ppid $(pidof -s -x kojid) || echo -n none || ps -u mock -u mockbuilder -opid=" +res = conn.run() + +for host in sorted(res['dark'].keys() + res['contacted'].keys()): + print host, + if host in res['dark']: + print ' down' + else: + if isbuilding(res, host): + print ' yes' + else: + print ' no' + + + diff --git a/scripts/installedon b/scripts/installedon new file mode 100755 index 0000000000..ace4a9f093 --- /dev/null +++ b/scripts/installedon @@ -0,0 +1,37 @@ +#!/usr/bin/python -tt + +import ansible +import ansible.runner +import ansible.playbook +import sys +import os +import time + +if len(sys.argv) < 2: + print "installedon hostname or group" + sys.exit(1) + +pattern = '*' +if len(sys.argv) > 1: + pattern=';'.join(sys.argv[1:]) + + +conn = ansible.runner.Runner(pattern=pattern, timeout=20, forks=30, remote_user='root') +conn.module_name='shell' +conn.module_args='rpm -qa --qf "%{installtime}\n" | sort -rn| tail -n 1' + +res = conn.run() + + +for host in sorted(res['dark'].keys()): + print '%s is down' % host + +now = time.time() +for host in sorted(res['contacted'].keys()): + insttime = float(res['contacted'][host]['stdout']) + days = (now - insttime) / 86400 + + print '%s install is %d days old' % (host, days) + + +