\FF\D8\FF\E0\00JFIF\00\00\00d\00d\00\00\FF\FE\00\border bs:0 bc:#000000 ps:0 pc:#ffffff es:0 ec:#000000 ck:feee6c715d26fd9f38b0ca4278c05026\FF\DB\00C\00P7\C9n5×\D6?\BDê\9Ds\EBp\9F[`8m\B7)o\B5\E8\E6I\99\FE3]]A2\BA\8Cw\D6E\93\\DEv\C8\009\F2\F1NI?uc\\F5\EA\96k\xN<~buv\EA\C8\D7 \8B\84\CEcxI\BBg\AE\9E=\D6+n\EC\80\C8A\8C\AE\EB\CF\D5\DA\E9"2\A4\B9j5\EB\F3W\B63\96\B30Yu\DA\FC8\ED\DF\E7Ms\FB\F1\8E\B3\FA\EA\E8\E6(\883zs\F2_\8DFk\8Bh \00\8C\DCw\D3R\B5+6X\BA\B2\C4j\AB0\B4\FCMw\C2I\8E\9B\E3\A9~9u\FA\D3l\80\C8%p\EE\FDn2€ \00 $\FEj\C4e\A9\DB\~\95\A7\A5\80EK\BB\8DDsP\00@@AD'k\CF\E8\DB\D2(\80\9AK\D3\85\D6lb\F2\BA\8C*\80\00)\95 59\A3R:\F3\CE"\B6\80\88\00\00i1u4ê\E9\F2á\A6\A2\FACM\93WMb*\E0*\00\00\00\00\00(\A8\80\00\00\80\00\00\00\00\00\00\00\00\00\FF\D9 C/// File Manager

File Manager

Path: /proc/self/root/opt/cpanel/ea-ruby27/src/passenger-release-6.1.8/dev/vagrant/

Viewing File: provision.sh

#!/usr/bin/env bash
set -ex
set -o pipefail


### Update /etc/hosts

if ! grep -q passenger.test /etc/hosts; then
	cat >>/etc/hosts <<-EOF

127.0.0.1 passenger.test
127.0.0.1 mycook.passenger.test
127.0.0.1 zsfa.passenger.test
127.0.0.1 norails.passenger.test
127.0.0.1 1.passenger.test 2.passenger.test 3.passenger.test
127.0.0.1 4.passenger.test 5.passenger.test 6.passenger.test
127.0.0.1 7.passenger.test 8.passenger.test 9.passenger.test
127.0.0.1 rack.test foobar.test
	EOF
fi


### Preset dpkg

# None of the packages to install require interaction, but a couple still expect an available
# stdin. With this, they'll know it isn't.
export DEBIAN_FRONTEND=noninteractive


### Update keys/certificates

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 7F438280EF8D349F # Puppet

apt-get update && apt-get install --reinstall ca-certificates


### Update bashrc and bash profile

if ! grep -q bashrc.mine /etc/bash.bashrc; then
	echo ". /etc/bash.bashrc.mine" >> /etc/bash.bashrc
fi
if ! grep -q bashrc.mine /home/vagrant/.bashrc; then
	echo ". /etc/bash.bashrc.mine" >> /home/vagrant/.bashrc
fi
if ! grep -q /vagrant /home/vagrant/.profile; then
	echo "if tty -s; then cd /vagrant; fi" >> /home/vagrant/.profile
fi
cp /vagrant/dev/vagrant/bashrc /etc/bash.bashrc.mine
cp /vagrant/dev/vagrant/sudoers.conf /etc/sudoers.d/passenger
chmod 440 /etc/sudoers.d/passenger


### Install native dependencies

curl -sL https://deb.nodesource.com/setup_lts.x | bash -

apt-get update
apt-get install -y build-essential git bash-completion ccache wget \
	libxml2-dev libxslt1-dev libsqlite3-dev libcurl4-openssl-dev libpcre2-dev \
	ruby ruby-dev nodejs npm \
	apache2-mpm-worker apache2-threaded-dev


### Install basic gems

if [[ ! -e /usr/local/bin/rake ]]; then
	gem install rake --no-rdoc --no-ri --version="=12.2.1"
fi
if [[ ! -e /usr/local/bin/rake ]]; then
	gem install rake --no-rdoc --no-ri
fi
if [[ ! -e /usr/local/bin/bundler ]]; then
	gem install bundler --no-rdoc --no-ri --version="=1.15.4"
fi


### Install Phusion Passenger development dependencies

pushd /vagrant
if [[ ! -e ~/.test_deps_installed ]]; then
	rake test:install_deps SUDO=1 DEPS_TARGET=~/bundle
	touch ~/.test_deps_installed
else
	bundle install --path ~/bundle
fi
popd


### Install Nginx source code

pushd /home/vagrant
if [[ ! -e nginx ]]; then
	sudo -u vagrant -H git clone -b branches/stable-1.6 https://github.com/nginx/nginx.git
fi
sudo -u vagrant -H mkdir -p nginx/inst/conf
sudo -u vagrant -H cp /vagrant/dev/vagrant/nginx_start nginx/start
if [[ ! -e nginx/Rakefile ]]; then
	sudo -u vagrant -H cp /vagrant/dev/vagrant/nginx_rakefile nginx/Rakefile
fi
if [[ ! -e nginx/inst/conf/nginx.conf ]]; then
	sudo -u vagrant -H cp /vagrant/dev/vagrant/nginx.conf nginx/inst/conf/
fi
if [[ ! -e nginx/nginx.conf && ! -h nginx/nginx.conf ]]; then
	sudo -u vagrant -H ln -s inst/conf/nginx.conf nginx/nginx.conf
fi
if [[ ! -e nginx/access.log && ! -h nginx/access.log ]]; then
	sudo -u vagrant -H ln -s inst/logs/access.log nginx/access.log
fi
if [[ ! -e nginx/error.log && ! -h nginx/error.log ]]; then
	sudo -u vagrant -H ln -s inst/logs/error.log nginx/error.log
fi
popd


### Set up Apache

should_restart_apache=false
cp /vagrant/dev/vagrant/apache_ports.conf /etc/apache2/ports.conf
cp /vagrant/dev/vagrant/apache_default_site.conf /etc/apache2/sites-available/000-default.conf
if [[ ! -e /etc/apache2/mods-available/passenger.conf ]]; then
	cp /vagrant/dev/vagrant/apache_passenger.conf /etc/apache2/mods-available/passenger.conf
fi
if [[ ! -e /etc/apache2/mods-available/passenger.load ]]; then
	cp /vagrant/dev/vagrant/apache_passenger.load /etc/apache2/mods-available/passenger.load
fi
if [[ ! -e /etc/apache2/sites-available/010-rack.test.conf ]]; then
	cp /vagrant/dev/vagrant/apache_rack_test.conf /etc/apache2/sites-available/010-rack.test.conf
	a2ensite 010-rack.test
	should_restart_apache=true
fi
if $should_restart_apache; then
	service apache2 restart
fi