ltcp/scripts/post-update-notify.rb

31 lines
705 B
Ruby
Raw Normal View History

2013-10-31 19:13:19 +00:00
#!/usr/bin/env ruby
require 'xmpp4r'
require 'xmpp4r/muc/helper/simplemucclient'
#refname = ARGV[0]
oldrev = ARGV[1]
newrev = ARGV[2]
user = ENV['GL_USER']
@jabber_id= "git@higgsboson.tk"
@password = "ZTA2NTlkMmNlYjNlZ"
robot = Jabber::Client::new(Jabber::JID::new(@jabber_id))
robot.connect
robot.auth(@password)
robot.send(Jabber::Presence.new.set_type(:available))
muc = Jabber::MUC::SimpleMUCClient.new(robot)
muc.join(Jabber::JID.new('lctp@muc.higgsboson.tk/git'))
revs = `git rev-list #{oldrev}..#{newrev}`.split("\n")
message = "#{user} has committed: "
revs.each do |rev|
commit = `git cat-file commit #{rev} | sed '1,/^$/d'`
message += "#{commit}\n"
end
sleep(2)
muc.say(message)