Fix Satellite#lock
This commit is contained in:
parent
700a784bc9
commit
7192f86ed0
|
@ -25,16 +25,20 @@ module Gitlab
|
||||||
File.exists? path
|
File.exists? path
|
||||||
end
|
end
|
||||||
|
|
||||||
# Locks the satellite and yields
|
# * Locks the satellite
|
||||||
|
# * Changes the current directory to the satellite's working dir
|
||||||
|
# * Yields
|
||||||
def lock
|
def lock
|
||||||
raise "Satellite doesn't exist" unless exists?
|
raise "Satellite doesn't exist" unless exists?
|
||||||
|
|
||||||
File.open(lock_file, "w+") do |f|
|
File.open(lock_file, "w+") do |f|
|
||||||
f.flock(File::LOCK_EX)
|
f.flock(File::LOCK_EX)
|
||||||
|
|
||||||
|
Dir.chdir(path) do
|
||||||
return yield
|
return yield
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def lock_file
|
def lock_file
|
||||||
Rails.root.join("tmp", "#{project.path}.lock")
|
Rails.root.join("tmp", "#{project.path}.lock")
|
||||||
|
|
Loading…
Reference in a new issue