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