FIX: Don't install test gems in production.
[discourse_docker.git] / image / discourse_fast_switch / create_switch.rb
1 require 'fileutils'
2
3 puts "-"*100,"creating switch","-"*100
4
5 system("cd /var/www/discourse && git pull")
6
7 ['24', '25'].each do |v|
8 bin = "/usr/local/bin/use_#{v}"
9
10 File.write(bin, <<RUBY
11 #!/usr/ruby_24/bin/ruby
12
13 Dir.glob('/usr/ruby_#{v}/bin/*').each do |file|
14 `rm -f /usr/local/bin/\#{File.basename(file)}`
15 `cd /usr/local/bin && ln -s \#{file}`
16 end
17
18 RUBY
19 )
20
21 system("chmod +x #{bin}")
22 system("use_#{v} && gem update --system && gem install bundler --force")
23 system("use_#{v} && cd /var/www/discourse && sudo -u discourse bundle install --deployment --jobs 4 --without test development")
24 end