-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
split setup to setup and deps, bump rubocop channel to 0-74
- Loading branch information
Showing
3 changed files
with
64 additions
and
50 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
#!/usr/bin/env ruby | ||
require 'pathname' | ||
require 'fileutils' | ||
|
||
# path to your application root. | ||
APP_ROOT = Pathname.new File.expand_path('../../', __FILE__) | ||
|
||
|
||
def system!(*args) | ||
system(*args) || abort("\n== Command #{args} failed ==") | ||
end | ||
|
||
def get_uid() | ||
uid = `id -u` | ||
uid.delete!("\n") | ||
end | ||
|
||
Dir.chdir APP_ROOT do | ||
puts '== Installing application build deps ==' | ||
sudo_prefix = '' | ||
sudo_prefix = "sudo" unless get_uid == '0' | ||
system! "#{sudo_prefix} apt-get update && #{sudo_prefix} apt-get -y --no-install-recommends install libxml2 libxml2-dev postgresql-client postgresql-client-common libpq-dev" | ||
|
||
puts "== Installing rbenv ruby manager to #{ENV['HOME']} ==" | ||
unless Dir.exist?("#{ENV['HOME']}/.rbenv/") | ||
system! 'git clone https://github.com/sstephenson/rbenv.git $HOME/.rbenv' | ||
system! 'echo export PATH="$HOME/.rbenv/bin:$PATH" >> ~/.bashrc' | ||
system! "echo 'eval $(rbenv init -)' >> ~/.bashrc" | ||
end | ||
|
||
unless Dir.exist?("#{ENV['HOME']}/.rbenv/plugins/ruby-build/") | ||
system! 'git clone https://github.com/sstephenson/ruby-build.git $HOME/.rbenv/plugins/ruby-build' | ||
system! 'echo export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH" >> ~/.bashrc' | ||
end | ||
unless Dir.exist?("#{ENV['HOME']}/.rbenv/plugins/rbenv-default-gems/") | ||
system! 'git clone https://github.com/rbenv/rbenv-default-gems.git $HOME/.rbenv/plugins/rbenv-default-gems' | ||
unless File.exist?("#{ENV['HOME']}/.rbenv/default-gems") | ||
system! 'echo "bundler" > ~/.rbenv/default-gems' | ||
end | ||
end | ||
|
||
# Include RBENV in path | ||
ENV['PATH'] = ENV['HOME'] + "/.rbenv/bin:" + ENV['HOME'] + "/.rbenv/plugins/ruby-build/bin:" + ENV['PATH'] | ||
NEEDED_RUBY = `cat .ruby-version`.freeze | ||
|
||
if '!bundle check' == false | ||
system! "#{SUDO_PREFIX} apt-get -y --no-install-recommends install libreadline-dev" | ||
puts 'Installing Ruby: ' + NEEDED_RUBY | ||
system!('rbenv install ' + NEEDED_RUBY) | ||
system!('rbenv rehash') | ||
else | ||
puts 'Ruby ' + NEEDED_RUBY + 'already installed' | ||
end | ||
puts 'Now running setup' | ||
exec('./bin/setup') | ||
end |