2015-04-25 14:24:13 +02:00
|
|
|
# Description:
|
|
|
|
# interazioni tra asjon e github
|
|
|
|
|
|
|
|
module.exports = (robot) ->
|
2015-04-25 15:21:57 +02:00
|
|
|
robot.router.post '/hubot/githubhook/:room/:name', (req, res) ->
|
2015-04-25 14:39:57 +02:00
|
|
|
res.send 200
|
2015-04-25 14:58:20 +02:00
|
|
|
if !process.env.GITHUB_API_SECRET
|
|
|
|
console.log 'non sono configurato per GITHUB API WEBHOOKS!'
|
|
|
|
return
|
2015-04-25 15:21:57 +02:00
|
|
|
else if "sha1="+process.env.GITHUB_API_SECRET isnt req.headers["x-hub-signature"]
|
2015-04-25 14:58:20 +02:00
|
|
|
console.log 'MALFORMED GITHUB API SECRET: was',
|
2015-04-25 15:21:57 +02:00
|
|
|
req.headers["x-hub-signature"], 'but expected', "sha1="+process.env.GITHUB_API_SECRET
|
2015-04-25 14:58:20 +02:00
|
|
|
return
|
2015-04-25 15:26:59 +02:00
|
|
|
dest = name: req.params.name, room: req.params.room.replace(':','#')
|
2015-04-25 15:24:46 +02:00
|
|
|
if req.body.ref is 'refs/heads/master'
|
2015-04-25 14:39:57 +02:00
|
|
|
s = 'Sono stato aggiornato!\n'
|
|
|
|
cm = req.body.commits.map (c) ->
|
|
|
|
[c.committer.username,c.message].join ' -> '
|
|
|
|
commits = cm.join '\n'
|
2015-04-25 15:21:57 +02:00
|
|
|
robot.send dest, s+commits
|