diff --git a/.gitignore b/.gitignore index 853dca44b..dc154815f 100644 --- a/.gitignore +++ b/.gitignore @@ -35,6 +35,9 @@ Thumbs.db node_modules/ bower_components/ +# Vagrant +.vagrant/ + # Some other random stuff always-ignore extensions *.diff diff --git a/.npmignore b/.npmignore index 8c3d2c8c5..810e48ef0 100644 --- a/.npmignore +++ b/.npmignore @@ -59,6 +59,9 @@ Thumbs.db # NPM packages folder. node_modules/ +# Vagrant +.vagrant/ + # Some other random stuff always-ignore extensions *.diff diff --git a/Vagrantfile b/Vagrantfile new file mode 100644 index 000000000..266553872 --- /dev/null +++ b/Vagrantfile @@ -0,0 +1,19 @@ +# -*- mode: ruby -*- +# vi: set ft=ruby : + +# Original content copyright (c) 2014 dpen2000 licensed under the MIT license + +VAGRANTFILE_API_VERSION = "2" + +Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| + config.vm.box = "hashicorp/precise64" + + config.vm.network "forwarded_port", guest: 3000, host: 3000 + + config.vm.provision "shell", path: "scripts/vagrant/provision.sh" + config.vm.provider "virtualbox" do |v| + v.memory = 2048 + v.cpus = 2 + end + +end diff --git a/scripts/vagrant/brunch.bat b/scripts/vagrant/brunch.bat new file mode 100644 index 000000000..0e19d96d8 --- /dev/null +++ b/scripts/vagrant/brunch.bat @@ -0,0 +1,3 @@ +@ECHO OFF +vagrant ssh -c "cd /vagrant && bin/coco-brunch" + diff --git a/scripts/vagrant/brunch.sh b/scripts/vagrant/brunch.sh new file mode 100755 index 000000000..97d23fbb5 --- /dev/null +++ b/scripts/vagrant/brunch.sh @@ -0,0 +1,3 @@ +#!/bin/sh +vagrant ssh -c "cd /vagrant && bin/coco-brunch" + diff --git a/scripts/vagrant/dev-server.bat b/scripts/vagrant/dev-server.bat new file mode 100644 index 000000000..18951a3c6 --- /dev/null +++ b/scripts/vagrant/dev-server.bat @@ -0,0 +1,3 @@ +@ECHO OFF +vagrant ssh -c "cd /vagrant && bin/coco-dev-server" + diff --git a/scripts/vagrant/dev-server.sh b/scripts/vagrant/dev-server.sh new file mode 100755 index 000000000..a130b6c21 --- /dev/null +++ b/scripts/vagrant/dev-server.sh @@ -0,0 +1,3 @@ +#!/bin/sh +vagrant ssh -c "cd /vagrant && bin/coco-dev-server" + diff --git a/scripts/vagrant/fillMongo.sh b/scripts/vagrant/fillMongo.sh new file mode 100644 index 000000000..477051129 --- /dev/null +++ b/scripts/vagrant/fillMongo.sh @@ -0,0 +1,9 @@ +#!/bin/bash +# Original content copyright (c) 2014 dpen2000 licensed under the MIT license +mkdir -p /vagrant/temp +cd /vagrant/temp +rm -f dump.tar.gz +rm -rf dump +wget http://analytics.codecombat.com:8080/dump.tar.gz +tar xzvf dump.tar.gz --no-same-owner +mongorestore diff --git a/scripts/vagrant/provision.sh b/scripts/vagrant/provision.sh new file mode 100644 index 000000000..604752fb8 --- /dev/null +++ b/scripts/vagrant/provision.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# Original content copyright (c) 2014 dpen2000 licensed under the MIT license +sudo apt-get -y update +sudo apt-get -y install python-software-properties git +sudo add-apt-repository -y ppa:chris-lea/node.js +sudo apt-get -y update +sudo apt-get -y install nodejs +sudo apt-get -y install g++ make coffeescript +cd /vagrant +sudo npm install +sudo npm install -g bower +sudo npm install -g brunch +sudo npm install -g geoip-lite +bower install --allow-root +sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 +echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list +sudo apt-get -y update +sudo apt-get -y install mongodb-org +sudo apt-get -y install ruby1.9.1 ruby1.9.1-dev +sudo gem install sass +npm install mongoose +bash /vagrant/scripts/vagrant/fillMongo.sh