Fix project lookup in post receive

This commit is contained in:
Dmitriy Zaporozhets 2012-12-08 20:48:33 +02:00
parent db7e0bf88d
commit 80e984ee5e
2 changed files with 8 additions and 6 deletions

View file

@ -1,8 +1,11 @@
class PostReceive
@queue = :post_receive
def self.perform(reponame, oldrev, newrev, ref, identifier)
project = Project.find_by_path(reponame)
def self.perform(repo_path, oldrev, newrev, ref, identifier)
repo_path = repo_path.gsub(Gitlab.config.git_base_path, "")
repo_path = repo_path.gsub(/.git$/, "")
project = Project.find_with_namespace(repo_path)
return false if project.nil?
# Ignore push from non-gitlab users

View file

@ -6,7 +6,6 @@
while read oldrev newrev ref
do
# For every branch or tag that was pushed, create a Resque job in redis.
pwd=`pwd`
reponame=`basename "$pwd" | sed s/\.git$//`
env -i redis-cli rpush "resque:gitlab:queue:post_receive" "{\"class\":\"PostReceive\",\"args\":[\"$reponame\",\"$oldrev\",\"$newrev\",\"$ref\",\"$GL_USER\"]}" > /dev/null 2>&1
repo_path=`pwd`
env -i redis-cli rpush "resque:gitlab:queue:post_receive" "{\"class\":\"PostReceive\",\"args\":[\"$repo_path\",\"$oldrev\",\"$newrev\",\"$ref\",\"$GL_USER\"]}" > /dev/null 2>&1
done