diff options
author | James Meyer <james.meyer@operamail.com> | 2008-11-09 02:33:48 (GMT) |
---|---|---|
committer | James Meyer <james.meyer@operamail.com> | 2008-11-09 02:33:48 (GMT) |
commit | 7cd3835eeb8d64936731b10395836be332705fb8 (patch) | |
tree | aab766a765784c2e5d71c0f4f902e35e08b4c51f /abs/mv-core/hobbitmon/hobbitadd.py | |
parent | 1ba69cc033dfbd0a6c4c29c6d877c7e753f96e8e (diff) | |
download | linhes_pkgbuild-7cd3835eeb8d64936731b10395836be332705fb8.zip linhes_pkgbuild-7cd3835eeb8d64936731b10395836be332705fb8.tar.gz linhes_pkgbuild-7cd3835eeb8d64936731b10395836be332705fb8.tar.bz2 |
hobbit server
Diffstat (limited to 'abs/mv-core/hobbitmon/hobbitadd.py')
-rwxr-xr-x | abs/mv-core/hobbitmon/hobbitadd.py | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/abs/mv-core/hobbitmon/hobbitadd.py b/abs/mv-core/hobbitmon/hobbitadd.py new file mode 100755 index 0000000..b8ae15d --- /dev/null +++ b/abs/mv-core/hobbitmon/hobbitadd.py @@ -0,0 +1,87 @@ +#!/usr/bin/python +#polls the hobbit server for ghost clients. If it finds ghosts it will make a new bb-hosts file +#with the new clients. +#Will not add duplicate clients +#return code of 0 means a new file was written, anything else is an error or no inserts occured +import urllib2 +import string +import sys + + +def readbb(): + global bblist + try: + infile = open('/data/srv/hobbit/etc/bb-hosts', 'r') + except(IOError), e: + print "couldn't open bb-hosts file" + sys.exit(1) + else: + bblist = infile.readlines() + infile.close() + + +def findghosts(): + global infile + global bblist + global ghostitems + global numberitems + try: + f = urllib2.urlopen("http://localhost/hobbit/hobbit-cgi/hobbit-ghosts.sh?SORT=name&MAXAGE=300&TEXT") + except urllib2.HTTPError, e: + if e.code != 200: + print 'error find ghost list' + sys.exit(1) + else: + ghostitems = f.readlines() + f.close() + numberitems = len(ghostitems) + + +def makenewbb(): + global bblist + global ghostitems + global numberitems + global numinserts + numinserts=0 + outlist = [] + for item in bblist: + if item not in outlist: + outlist.append(item) + + for item in ghostitems: + line = item.rstrip() + nline = "%s #func" % (line) + nline = nline + '\n' + if nline not in outlist: + outlist.append(nline) + print "adding: " + nline + numinserts = numinserts + 1 + if numinserts > 0: + outfile = open("/data/srv/hobbit/etc/bb-hosts","w") + #outfile = open("/tmp/new-bb","w") + for i in outlist: + outfile.write(i + '\n' ) + outfile.close + + +global infile +global bblist +global ghostitems +global numberitems +global numinserts + +readbb() +findghosts() +print numberitems +if numberitems > 0: + makenewbb() +else: + print "nothing to add" + + +if numinserts < 1: + sys.exit(1) +else: + sys.exit(0) + + |