# # Modules: server_build/ubuntu # Adds tasks for building Ubuntu Servers
namespace :build_ubuntu do
desc "Update APT Software Cache" task :apt_update do queue "sudo apt-get -y update" end desc "Upgrade Installed Packages" task :apt_upgrade do queue "sudo apt-get -y upgrade" end desc "Upgrade Distribution" task :apt_distupgrade do queue "sudo apt-get -y dist-upgrade" end desc "Install Essential Packages" task :apt_install_essential do queue "sudo apt-get -y install wget curl git-core python-software-properties build-essential" end desc "Remove Unreferenced Packages" task :apt_autoremove do queue "sudo apt-get -y autoremove" end desc "Install PostgreSQL Database" task :apt_install_postgresql do queue "wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -" queue "sudo apt-add-repository -y \"deb http://apt.postgresql.org/pub/repos/apt/ #{platform_codename}-pgdg main\" " queue "sudo apt-get -y update" queue "sudo apt-get install -y postgresql-9.3 pgadmin3 libpq-dev" end desc "Install NodeJS" task :apt_install_nodejs do queue "sudo add-apt-repository -y ppa:chris-lea/node.js" queue "sudo apt-get -y update" queue "sudo apt-get -y install nodejs" end desc "Install NGINX" task :apt_install_nginx do queue "sudo add-apt-repository -y ppa:nginx/stable" queue "sudo apt-get -y update" queue "sudo apt-get -y install nginx" end desc "Install Apache 2" task :apt_install_apache2 do queue "sudo apt-get install apache2" end desc "Install RBENV Ruby Manager" task :build_rbenv do queue "if [ ! -d ~/.rbenv ]; then" queue "curl https://raw.githubusercontent.com/fesplugas/rbenv-installer/master/bin/rbenv-installer | bash" queue "fi" queue "cat /dev/null > ~/.bash_profile.saved" queue "cat ~/.bash_profile ~/.bash_profile.saved" queue "echo \"# ~/.bash_profile:\" > ~/.bash_profile" queue "echo \"export RBENV_ROOT=\"${HOME}/.rbenv\"\" >> ~/.bash_profile" queue "echo \"if [ -d \"${HOME}/.rbenv\" ]; then\" >> ~/.bash_profile" queue "echo \"export PATH=\"${HOME}/.rbenv/bin:${PATH}\"\" >> ~/.bash_profile" queue "echo 'eval \"\$\(rbenv init -\)\"' >> ~/.bash_profile" queue "echo \"fi\" >> ~/.bash_profile" queue "cat ~/.bash_profile.saved >> ~/.bash_profile" if "#{platform_codename}".strip == "precise" queue ". ~/.bash_profile; rbenv bootstrap-ubuntu-12-04" end if "#{platform_codename}".strip == "trusty" queue "sudo apt-get -y install tklib zlib1g-dev libssl-dev libreadline-gplv2-dev" queue "sudo apt-get -y install libxml2 libxml2-dev libxslt1-dev" end queue ". ~/.bash_profile; rbenv install #{ruby_version}" queue ". ~/.bash_profile; rbenv global #{ruby_version}" end
end