Commit 91ad21d
Changed files (6)
app
assets
javascripts
models
views
layouts
config
app/assets/javascripts/models/startup.js.coffee
@@ -0,0 +1,7 @@
+class Stronglifters.Startup
+ start: ->
+ $(document).on 'page:fetch', ->
+ $(".loading-indicator").show()
+ $(document).on 'page:change', ->
+ $(".loading-indicator").hide()
+ $(document).foundation()
app/assets/javascripts/application.js
@@ -19,10 +19,7 @@
//= require_tree .
//= require turbolinks
-$(document).on('page:fetch', function() {
- $(".loading-indicator").show();
-});
-$(document).on('page:change', function() {
- $(".loading-indicator").hide();
-});
var Stronglifters = Stronglifters || {};
+$(function(){
+ new Stronglifters.Startup().start();
+});
app/views/layouts/application.html.erb
@@ -10,10 +10,6 @@
<%= javascript_include_tag "//www.google.com/jsapi", "chartkick" %>
<%= javascript_include_tag "//apis.google.com/js/api.js" %>
<%= javascript_include_tag "//apis.google.com/js/client.js" %>
- <script type="text/javascript" charset="utf-8">
- $(function(){
- $(document).foundation();
- });
</script>
<%= csrf_meta_tags %>
</head>
app/views/layouts/public.html.erb
@@ -8,9 +8,6 @@
<%= javascript_include_tag "vendor/modernizr" %>
<%= javascript_include_tag "application" %>
<%= javascript_include_tag "//www.google.com/jsapi", "chartkick" %>
- <script type="text/javascript" charset="utf-8">
- $(function(){ $(document).foundation(); });
- </script>
<%= csrf_meta_tags %>
</head>
<body class="<%= controller_name %> <%= action_name %>">
config/chef_apply.rb
@@ -1,25 +1,33 @@
-execute "apt-get_update" do
- command "apt-get update -y"
-end
-
-execute "apt-get_upgrade" do
- command "apt-get upgrade -y"
-end
+execute "apt-get update -y"
+execute "apt-get upgrade -y"
packages = %w{
+ bison
build-essential
curl
exuberant-ctags
+ flex
+ g++
git-core
+ gperf
libcurl4-openssl-dev
libffi-dev
+ libfontconfig1-dev
+ libfreetype6
+ libicu-dev
+ libjpeg-dev
+ libpng-dev
libreadline-dev
libsqlite3-dev
libssl-dev
+ libx11-dev
+ libxext-dev
libxml2-dev
libxslt1-dev
libyaml-dev
memcached
+ perl
+ python
python-software-properties
redis-server
software-properties-common
@@ -28,9 +36,7 @@ packages = %w{
zlib1g-dev
}
-package packages do
- action :install
-end
+package packages
phantomjs = "phantomjs-1.9.8-linux-x86_64"
remote_file "/tmp/#{phantomjs}.tar.bz2" do
@@ -39,7 +45,6 @@ remote_file "/tmp/#{phantomjs}.tar.bz2" do
end
bash "install_phantomjs" do
- user "root"
cwd "/tmp"
not_if { ::Dir.exist?("/usr/local/share/#{phantomjs}") }
code <<-SCRIPT
@@ -65,85 +70,61 @@ bash "install postgres" do
SCRIPT
end
-execute "install_node" do
- command "curl -sL https://deb.nodesource.com/setup | bash -"
-end
+execute "curl -sL https://deb.nodesource.com/setup | bash -"
+package "nodejs"
-package ["nodejs"] do
- action :install
-end
-
-bash "create_postgres_user" do
+execute "psql postgres -tAc \"SELECT 1 FROM pg_roles WHERE rolname='vagrant'\" | grep -q 1 || createuser -s -e -w vagrant" do
user "postgres"
- code <<-SCRIPT
- psql postgres -tAc "SELECT 1 FROM pg_roles WHERE rolname='vagrant'" | grep -q 1 || createuser -s -e -w vagrant
- SCRIPT
end
-bash "create_vagrant_db" do
+execute "createdb" do
user "vagrant"
not_if { "psql postgres -tAc \"SELECT 1 FROM pg_roles WHERE rolname='vagrant'\" | grep -q 1" }
- code <<-SCRIPT
- createdb
- SCRIPT
end
git "/usr/local/rbenv" do
repository "https://github.com/sstephenson/rbenv.git"
- action :sync
-end
-
-bash "install_rbenv" do
- user "root"
- cwd "/tmp"
- not_if { ::File.exist?("/etc/profile.d/rbenv.sh") }
- code <<-EOH
- echo 'export RBENV_ROOT="/usr/local/rbenv"' >> /etc/profile.d/rbenv.sh
- echo 'export PATH="/usr/local/rbenv/bin:$PATH"' >> /etc/profile.d/rbenv.sh
- echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh
- EOH
end
-directory "/usr/local/rbenv/plugins" do
- action :create
+file "/etc/profile.d/rbenv.sh" do
+ content <<-CONTENT
+export RBENV_ROOT="/usr/local/rbenv"
+export PATH="/usr/local/rbenv/bin:$PATH"
+eval "$(rbenv init -)"
+CONTENT
end
+directory "/usr/local/rbenv/plugins"
git "/usr/local/rbenv/plugins/ruby-build" do
repository "https://github.com/sstephenson/ruby-build.git"
- action :sync
end
bash "install_ruby" do
user "root"
not_if { ::File.exist?("/usr/local/rbenv/shims/ruby") }
code <<-EOH
- source /etc/profile.d/rbenv.sh
- rbenv install 2.2.3
- rbenv global 2.2.3
- EOH
+source /etc/profile.d/rbenv.sh
+rbenv install 2.2.3
+rbenv global 2.2.3
+EOH
end
bash "install_bundler" do
user "root"
code <<-EOH
- source /etc/profile.d/rbenv.sh
- gem install bundler --no-ri --no-rdoc
- EOH
+source /etc/profile.d/rbenv.sh
+gem install bundler --no-ri --no-rdoc
+EOH
end
-bash "copy_env_local" do
+execute "cp .env.example .env.local" do
user "vagrant"
cwd "/vagrant"
not_if { ::File.exist?("/vagrant/.env.local") }
- code <<-EOH
- cp .env.example .env.local
- EOH
-end
-
-service "redis-server" do
- action [:enable, :start]
end
-service "postgresql" do
- action [:enable, :start]
+[ "redis-server", "postgresql" ].each do |service_name|
+ service service_name do
+ action [:enable, :start]
+ end
end
Vagrantfile
@@ -1,21 +1,26 @@
# -*- mode: ruby -*-
# vi: set ft=ruby :
+# https://docs.vagrantup.com/v2/vmware/kernel-upgrade.html
+$fix_vmware_tools_script = <<SCRIPT
+sed -i.bak 's/answer AUTO_KMODS_ENABLED_ANSWER no/answer AUTO_KMODS_ENABLED_ANSWER yes/g' /etc/vmware-tools/locations
+sed -i 's/answer AUTO_KMODS_ENABLED no/answer AUTO_KMODS_ENABLED yes/g' /etc/vmware-tools/locations
+SCRIPT
+
Vagrant.configure("2") do |config|
config.vm.box = "phusion/ubuntu-14.04-amd64"
config.vm.network :forwarded_port, guest: 3000, host: 3000
+ config.vm.provision :shell, inline: $fix_vmware_tools_script
config.vm.provision :chef_apply do |chef|
chef.recipe = File.read("config/chef_apply.rb")
- chef.version = 'latest'
end
config.vm.provider :vmware_workstation do |vm|
- vm.gui = false
- vm.vmx["displayname"] = "stronglifters"
+ vm.vmx["memsize"] = "2048"
+ vm.vmx["numvcpus"] = "2"
end
- config.vm.provider :vmware_fusion do |v|
- v.vmx["memsize"] = "2048"
- v.vmx["numvcpus"] = "2"
+ config.vm.provider :vmware_fusion do |vm|
+ vm.vmx["memsize"] = "2048"
+ vm.vmx["numvcpus"] = "2"
end
- config.omnibus.chef_version = :latest
config.ssh.forward_agent = true
end