catstodon/bin/setup
Joël Quenneville 23eea5c5ae Install Yarn dependencies during setup (#1169)
Previously the `bin/setup` script only installed the Ruby dependencies
via Bundler. This is not sufficient to get the test suite to pass. We
also need the JavaScript dependencies.

This commit installs the JavaScript dependencies as part of the
`bin/setup` script via Yarn.

This allows for a successful

    bin/setup && bundle exec rake

on a fresh clone of the repo.
2017-04-19 14:29:23 +02:00

35 lines
946 B
Ruby
Executable file

#!/usr/bin/env ruby
require 'pathname'
require 'fileutils'
include 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
chdir APP_ROOT do
# This script is a starting point to setup your application.
# Add necessary setup steps to this file.
puts '== Installing dependencies =='
system! 'gem install bundler --conservative'
system('bundle check') || system!('bundle install')
system!('yarn install')
# puts "\n== Copying sample files =="
# unless File.exist?('config/database.yml')
# cp 'config/database.yml.sample', 'config/database.yml'
# end
puts "\n== Preparing database =="
system! 'bin/rails db:setup'
puts "\n== Removing old logs and tempfiles =="
system! 'bin/rails log:clear tmp:clear'
puts "\n== Restarting application server =="
system! 'bin/rails restart'
end