#!/bin/sh

set -ex

export DEBIAN_FRONTEND=noninteractive

# enable backports
if [ ! -f /etc/apt/sources.list.d/backports.list ]; then
  sed -e 's/\bjessie\b/jessie-backports/' /etc/apt/sources.list > \
    /etc/apt/sources.list.d/backports.list
fi

# serve debci data
apt-get install -qy apache2
a2enmod headers
cat > /etc/apache2/sites-enabled/debci.conf <<EOF
<VirtualHost *:80>
  ServerName localhost
  ServerAlias debci.local
  DocumentRoot /usr/share/debci/public
  ErrorLog \${APACHE_LOG_DIR}/debci.error.log
  CustomLog \${APACHE_LOG_DIR}/debci.access.log combined
  <Directory /usr/share/debci/public>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
  </Directory>
  <IfModule mod_headers.c>
    <FilesMatch "log$">
      Header set Content-Type "text/plain; charset=utf-8"
    </FilesMatch>
    <FilesMatch "log\.gz$">
      # Serve correct encoding type.
      Header append Content-Encoding gzip
      Header set Content-Type "text/plain; charset=utf-8"
    </FilesMatch>
  </IfModule>
</VirtualHost>
EOF
service apache2 reload

# install AMQP server
apt-get install -qy rabbitmq-server

for base in /vagrant /debci; do
  if [ -d $base ]; then break; fi
done

# install debci from locally built packages
if test -d $base/tmp/deb; then
  dpkg --unpack $base/tmp/deb/*.deb
  apt-get install -qyf
else
  echo
  set +x
  echo "To install locally-built packages into the vagrant box for testing,"
  echo "run on the host:"
  echo
  echo '  $ make deb'
  echo '  $ vagrant provision'
fi
