Commit 12af1ba
Changed files (5)
bin/bootstrap-vagrant-user.sh
@@ -0,0 +1,20 @@
+git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
+echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
+echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
+source ~/.bash_profile
+git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
+git clone https://github.com/tpope/rbenv-ctags.git ~/.rbenv/plugins/rbenv-ctags
+git clone https://github.com/rkh/rbenv-update.git ~/.rbenv/plugins/rbenv-update
+git clone https://github.com/sstephenson/rbenv-gem-rehash.git ~/.rbenv/plugins/rbenv-gem-rehash
+rbenv update
+rbenv install 2.1.5
+rbenv global 2.1.5
+gem install bundler --no-ri --no-rdoc
+cd /vagrant
+bundle install -j 2
+if [ ! -f .env ]; then
+ ln -s .env.example .env
+fi
+createdb
+bundle exec rake db:create db:migrate db:seed
+RAILS_ENV=test bundle exec rake db:create db:migrate db:seed
bin/bootstrap.sh
@@ -0,0 +1,35 @@
+#!/usr/bin/env bash
+apt-get update -y
+apt-get upgrade -y
+apt-get -y install curl git-core python-software-properties imagemagick libmagickwand-dev memcached
+apt-get -y install build-essential
+apt-get -y install tklib
+apt-get -y install zlib1g-dev libssl-dev
+apt-get -y install libreadline-gplv2-dev
+apt-get -y install libxml2 libxml2-dev libxslt1-dev
+apt-get -y install gawk libreadline6-dev libyaml-dev libsqlite3-dev sqlite3 autoconf libgdbm-dev libncurses5-dev automake libtool bison pkg-config libffi-dev
+apt-get -y install build-essential
+apt-get -y install tklib
+apt-get -y install zlib1g-dev libssl-dev
+apt-get -y install libreadline-gplv2-dev
+apt-get -y install libxml2 libxml2-dev libxslt1-dev
+apt-get -y install curl libcurl3 libcurl3-gnutls libcurl4-openssl-dev
+apt-get -y install exuberant-ctags
+apt-get -y autoremove
+
+add-apt-repository -y ppa:nginx/stable
+apt-get -y update
+apt-get -y install nginx
+
+add-apt-repository -y ppa:pitti/postgresql
+apt-get -y update
+apt-get -y install postgresql-9.4 libpq-dev postgresql-contrib-9.4
+
+add-apt-repository -y ppa:chris-lea/node.js
+apt-get -y update
+apt-get -y install nodejs
+
+su postgres<<EOF
+createuser -s -e -w vagrant
+EOF
+su -c "source /vagrant/bin/bootstrap-vagrant-user.sh" vagrant
.env.example
Gemfile.lock
@@ -0,0 +1,164 @@
+GEM
+ remote: https://rubygems.org/
+ specs:
+ actionmailer (4.2.0)
+ actionpack (= 4.2.0)
+ actionview (= 4.2.0)
+ activejob (= 4.2.0)
+ mail (~> 2.5, >= 2.5.4)
+ rails-dom-testing (~> 1.0, >= 1.0.5)
+ actionpack (4.2.0)
+ actionview (= 4.2.0)
+ activesupport (= 4.2.0)
+ rack (~> 1.6.0)
+ rack-test (~> 0.6.2)
+ rails-dom-testing (~> 1.0, >= 1.0.5)
+ rails-html-sanitizer (~> 1.0, >= 1.0.1)
+ actionview (4.2.0)
+ activesupport (= 4.2.0)
+ builder (~> 3.1)
+ erubis (~> 2.7.0)
+ rails-dom-testing (~> 1.0, >= 1.0.5)
+ rails-html-sanitizer (~> 1.0, >= 1.0.1)
+ activejob (4.2.0)
+ activesupport (= 4.2.0)
+ globalid (>= 0.3.0)
+ activemodel (4.2.0)
+ activesupport (= 4.2.0)
+ builder (~> 3.1)
+ activerecord (4.2.0)
+ activemodel (= 4.2.0)
+ activesupport (= 4.2.0)
+ arel (~> 6.0)
+ activesupport (4.2.0)
+ i18n (~> 0.7)
+ json (~> 1.7, >= 1.7.7)
+ minitest (~> 5.1)
+ thread_safe (~> 0.3, >= 0.3.4)
+ tzinfo (~> 1.1)
+ arel (6.0.0)
+ binding_of_caller (0.7.2)
+ debug_inspector (>= 0.0.1)
+ builder (3.2.2)
+ byebug (3.5.1)
+ columnize (~> 0.8)
+ debugger-linecache (~> 1.2)
+ slop (~> 3.6)
+ coffee-rails (4.1.0)
+ coffee-script (>= 2.2.0)
+ railties (>= 4.0.0, < 5.0)
+ coffee-script (2.3.0)
+ coffee-script-source
+ execjs
+ coffee-script-source (1.8.0)
+ columnize (0.9.0)
+ debug_inspector (0.0.2)
+ debugger-linecache (1.2.0)
+ erubis (2.7.0)
+ execjs (2.2.2)
+ globalid (0.3.0)
+ activesupport (>= 4.1.0)
+ hike (1.2.3)
+ i18n (0.7.0)
+ jbuilder (2.2.6)
+ activesupport (>= 3.0.0, < 5)
+ multi_json (~> 1.2)
+ jquery-rails (4.0.2)
+ rails-dom-testing (~> 1.0)
+ railties (>= 4.2.0)
+ thor (>= 0.14, < 2.0)
+ json (1.8.1)
+ loofah (2.0.1)
+ nokogiri (>= 1.5.9)
+ mail (2.6.3)
+ mime-types (>= 1.16, < 3)
+ mime-types (2.4.3)
+ mini_portile (0.6.1)
+ minitest (5.5.0)
+ multi_json (1.10.1)
+ nokogiri (1.6.5)
+ mini_portile (~> 0.6.0)
+ pg (0.17.1)
+ rack (1.6.0)
+ rack-test (0.6.2)
+ rack (>= 1.0)
+ rails (4.2.0)
+ actionmailer (= 4.2.0)
+ actionpack (= 4.2.0)
+ actionview (= 4.2.0)
+ activejob (= 4.2.0)
+ activemodel (= 4.2.0)
+ activerecord (= 4.2.0)
+ activesupport (= 4.2.0)
+ bundler (>= 1.3.0, < 2.0)
+ railties (= 4.2.0)
+ sprockets-rails
+ rails-deprecated_sanitizer (1.0.3)
+ activesupport (>= 4.2.0.alpha)
+ rails-dom-testing (1.0.5)
+ activesupport (>= 4.2.0.beta, < 5.0)
+ nokogiri (~> 1.6.0)
+ rails-deprecated_sanitizer (>= 1.0.1)
+ rails-html-sanitizer (1.0.1)
+ loofah (~> 2.0)
+ railties (4.2.0)
+ actionpack (= 4.2.0)
+ activesupport (= 4.2.0)
+ rake (>= 0.8.7)
+ thor (>= 0.18.1, < 2.0)
+ rake (10.4.2)
+ rdoc (4.2.0)
+ json (~> 1.4)
+ sass (3.4.9)
+ sass-rails (5.0.0)
+ railties (>= 4.0.0, < 5.0)
+ sass (~> 3.1)
+ sprockets (>= 2.8, < 4.0)
+ sprockets-rails (>= 2.0, < 4.0)
+ tilt (~> 1.1)
+ sdoc (0.4.1)
+ json (~> 1.7, >= 1.7.7)
+ rdoc (~> 4.0)
+ slop (3.6.0)
+ spring (1.2.0)
+ sprockets (2.12.3)
+ hike (~> 1.2)
+ multi_json (~> 1.0)
+ rack (~> 1.0)
+ tilt (~> 1.1, != 1.3.0)
+ sprockets-rails (2.2.2)
+ actionpack (>= 3.0)
+ activesupport (>= 3.0)
+ sprockets (>= 2.8, < 4.0)
+ thor (0.19.1)
+ thread_safe (0.3.4)
+ tilt (1.4.1)
+ turbolinks (2.5.3)
+ coffee-rails
+ tzinfo (1.2.2)
+ thread_safe (~> 0.1)
+ uglifier (2.6.0)
+ execjs (>= 0.3.0)
+ json (>= 1.8.0)
+ web-console (2.0.0)
+ activemodel (~> 4.0)
+ binding_of_caller (>= 0.7.2)
+ railties (~> 4.0)
+ sprockets-rails (>= 2.0, < 4.0)
+
+PLATFORMS
+ ruby
+
+DEPENDENCIES
+ byebug
+ coffee-rails (~> 4.1.0)
+ jbuilder (~> 2.0)
+ jquery-rails
+ pg
+ rails (= 4.2.0)
+ sass-rails (~> 5.0)
+ sdoc (~> 0.4.0)
+ spring
+ turbolinks
+ uglifier (>= 1.3.0)
+ web-console (~> 2.0)
Vagrantfile
@@ -0,0 +1,45 @@
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+
+Vagrant.configure("2") do |config|
+ config.vm.box = "phusion/ubuntu-14.04-amd64"
+
+ # Create a forwarded port mapping which allows access to a specific port
+ # within the machine from a port on the host machine. In the example below,
+ # accessing "localhost:8080" will access port 80 on the guest machine.
+ #config.vm.network :forwarded_port, guest: 80, host: 8080
+ config.vm.network :forwarded_port, guest: 3000, host: 3000
+ config.vm.provision :shell, :path => 'bin/bootstrap.sh'
+ config.ssh.forward_agent = true
+
+ # Create a private network, which allows host-only access to the machine
+ # using a specific IP.
+ #config.vm.network :private_network, ip: "192.168.33.10"
+
+ # Create a public network, which generally matched to bridged network.
+ # Bridged networks make the machine appear as another physical device on
+ # your network.
+ # config.vm.network :public_network
+
+ # Share an additional folder to the guest VM. The first argument is
+ # the path on the host to the actual folder. The second argument is
+ # the path on the guest to mount the folder. And the optional third
+ # argument is a set of non-required options.
+ # config.vm.synced_folder "../data", "/vagrant_data"
+
+ # Provider-specific configuration so you can fine-tune various
+ # backing providers for Vagrant. These expose provider-specific options.
+ # Example for VirtualBox:
+ #
+ # config.vm.provider :virtualbox do |vb|
+ # # Don't boot with headless mode
+ # vb.gui = true
+ #
+ # # Use VBoxManage to customize the VM. For example to change memory:
+ # vb.customize ["modifyvm", :id, "--memory", "1024"]
+ # end
+ config.vm.provider :vmware_workstation do |vm|
+ vm.gui = false
+ vm.vmx["displayname"] = "app"
+ end
+end