Gitlab cli for development need at first
This commit is contained in:
parent
4e47402852
commit
a6026c9c82
|
@ -0,0 +1,70 @@
|
|||
#!/usr/bin/env ruby
|
||||
|
||||
class GitlabCli
|
||||
def initialize
|
||||
@path = File.dirname(__FILE__)
|
||||
@command = ARGV.shift
|
||||
@mode = ARGV.shift
|
||||
end
|
||||
|
||||
def execute
|
||||
case @command
|
||||
when 'start' then start
|
||||
when 'stop' then stop
|
||||
else
|
||||
puts "-- Usage gitlab start production or gitlab stop development"
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def start
|
||||
case @mode
|
||||
when 'production';
|
||||
system(unicorn_start_cmd)
|
||||
else
|
||||
system(rails_start_cmd)
|
||||
end
|
||||
system(resque_start_cmd)
|
||||
end
|
||||
|
||||
def stop
|
||||
case @mode
|
||||
when 'production';
|
||||
system(unicorn_stop_cmd)
|
||||
else
|
||||
system(rails_stop_cmd)
|
||||
end
|
||||
system(resque_stop_cmd)
|
||||
end
|
||||
|
||||
def rails_start_cmd
|
||||
"bundle exec rails s -d"
|
||||
end
|
||||
|
||||
def rails_stop_cmd
|
||||
pid = File.join(@path, "tmp/pids/server.pid")
|
||||
"kill -QUIT `cat #{pid}`"
|
||||
end
|
||||
|
||||
def unicorn_start_cmd
|
||||
unicorn_conf = File.join(@path, "config/unicorn.rb")
|
||||
"bundle exec unicorn_rails -c #{unicorn_conf} -E production -D"
|
||||
end
|
||||
|
||||
def unicorn_stop_cmd
|
||||
pid = File.join(@path, "/tmp/pids/unicorn.pid")
|
||||
"kill -QUIT `cat #{pid}`"
|
||||
end
|
||||
|
||||
def resque_start_cmd
|
||||
"./resque.sh > /dev/null 2>&1"
|
||||
end
|
||||
|
||||
def resque_stop_cmd
|
||||
pid = File.join(@path, "tmp/pids/resque_worker.pid")
|
||||
"kill -QUIT `cat #{pid}`"
|
||||
end
|
||||
end
|
||||
|
||||
GitlabCli.new.execute
|
Loading…
Reference in New Issue