diff --git a/.gitignore b/.gitignore index 6b31a59..a4eed78 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ node_modules bower_components +.vagrant results/* \ No newline at end of file diff --git a/Vagrantfile b/Vagrantfile new file mode 100644 index 0000000..b8c467b --- /dev/null +++ b/Vagrantfile @@ -0,0 +1,17 @@ +Vagrant.configure("2") do |config| + + config.vm.box = "precise64" + config.vm.box_url = "http://files.vagrantup.com/precise64.box" + + config.vm.network :private_network, ip: "10.10.10.10" + config.ssh.forward_agent = true + + config.vm.provider :virtualbox do |vb| + vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] + vb.customize ["modifyvm", :id, "--memory", 512] + vb.customize ["modifyvm", :id, "--cpus", 2] + end + + config.vm.provision :shell, :path => "server_config/server_install.sh" + +end \ No newline at end of file diff --git a/package.json b/package.json index 4ec1c20..f93e35c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,10 @@ { - "name": "jsspaghettiprofiler", + "name": "yellowlabtools", "version": "0.0.0", + "repository": { + "type": "git", + "url": "git://github.com/gmetais/YellowLabTools.git" + }, "dependencies": { "phantomas": "git+https://git@github.com/gmetais/phantomas.git#jquery-profiler", "express": "^4.6.1", @@ -9,8 +13,5 @@ "body-parser": "^1.5.0" }, "devDependencies": {}, - "engines": { - "node": ">=0.10.0" - }, "scripts": {} } diff --git a/server.js b/server.js index 9d5aa80..1ef6c5b 100644 --- a/server.js +++ b/server.js @@ -1,3 +1,4 @@ +var settings = require('./server_config/settings.json'); var fs = require('fs'); var async = require('async'); var express = require('express'); @@ -195,6 +196,6 @@ var taskQueue = async.queue(function queueWorker(task, callback) { // Launch the server -server.listen(8383, function() { +server.listen(settings.serverPort, function() { console.log('Listening on port %d', server.address().port); }); \ No newline at end of file diff --git a/server_config/server_install.sh b/server_config/server_install.sh new file mode 100644 index 0000000..9a16300 --- /dev/null +++ b/server_config/server_install.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env bash + +# APT-GET +sudo apt-get update +sudo apt-get install lsb-release -y --force-yes +sudo apt-get install curl git -y --force-yes + +# Installation of NodeJS +curl https://raw.githubusercontent.com/creationix/nvm/v0.12.2/install.sh | bash +source ~/.profile +nvm install v0.10.30 +nvm use v0.10.30 + +# Installation of some packages globally +npm install bower -g +npm install forever -g + +# Installation of YellowLabTools +sudo mkdir /space +sudo chown $USER /space +cd /space +git clone https://github.com/gmetais/YellowLabTools.git --branch master +cd YellowLabTools +npm install +bower install --config.interactive=false + +# Start the server +rm server_config/settings.json +cp server_config/settings-prod.json server_config/settings.json +forever start server.js \ No newline at end of file diff --git a/server_config/settings-prod.json b/server_config/settings-prod.json new file mode 100644 index 0000000..93f88bf --- /dev/null +++ b/server_config/settings-prod.json @@ -0,0 +1,3 @@ +{ + "serverPort": 80 +} \ No newline at end of file diff --git a/server_config/settings.json b/server_config/settings.json new file mode 100644 index 0000000..7a5bc34 --- /dev/null +++ b/server_config/settings.json @@ -0,0 +1,3 @@ +{ + "serverPort": 8383 +} \ No newline at end of file