add !version and !source

closes #84
This commit is contained in:
jesopo 2019-08-12 17:29:01 +01:00
parent d9426abec1
commit fc5e3d3936

29
modules/info.py Normal file
View file

@ -0,0 +1,29 @@
import os
from src import IRCBot, ModuleManager, utils
class Module(ModuleManager.BaseModule):
@utils.hook("received.command.version")
def version(self, event):
commit_hash = None
git_dir = os.path.join(self.bot.directory, ".git")
head_filepath = os.path.join(git_dir, "HEAD")
print(head_filepath)
if os.path.isfile(head_filepath):
ref = None
with open(head_filepath, "r") as head_file:
ref = head_file.readline().split(" ", 1)[1].strip()
ref_filepath = os.path.join(git_dir, ref)
print(ref_filepath)
if os.path.isfile(ref_filepath):
with open(ref_filepath, "r") as ref_file:
commit_hash = ref_file.readline().strip()
out = "Version: BitBot %s" % IRCBot.VERSION
if not commit_hash == None:
out = "%s (%s)" % (out, commit_hash[:8])
event["stdout"].write(out)
@utils.hook("received.command.source")
def source(self, event):
event["stdout"].write("Source: %s" % IRCBot.SOURCE)