#!/bin/sh
set -e

SOURCE_DIR=$(realpath $(dirname "${0}"))

# Install build scripts
ln -s ${SOURCE_DIR}/zz-extra/lxc-build /usr/bin/lxc-build
ln -s ${SOURCE_DIR}/zz-extra/fix-apk /usr/bin/fix-apk

# Build basic Alpine LXC image
mkdir -p /var/lib/lxc/shared/alpine
wget https://github.com/gliderlabs/docker-alpine/raw/2bfe6510ee31d86cfeb2f37587f4cf866f28ffbc/versions/library-3.8/x86_64/rootfs.tar.xz -O - | tar xJf - -C /var/lib/lxc/shared/alpine
chmod 755 /var/lib/lxc/shared/alpine
touch /var/lib/lxc/shared/alpine/etc/resolv.conf
lxc-build ${SOURCE_DIR}/basic-runtimes/alpine.lxcfile

# Build shared overlays
lxc-build ${SOURCE_DIR}/basic-runtimes/java.lxcfile
lxc-build ${SOURCE_DIR}/basic-runtimes/libxml.lxcfile
lxc-build ${SOURCE_DIR}/basic-runtimes/php.lxcfile
lxc-build ${SOURCE_DIR}/basic-runtimes/python2.lxcfile
lxc-build ${SOURCE_DIR}/basic-runtimes/python3.lxcfile
lxc-build ${SOURCE_DIR}/basic-runtimes/nodejs.lxcfile
lxc-build ${SOURCE_DIR}/basic-runtimes/ruby.lxcfile
lxc-build ${SOURCE_DIR}/basic-runtimes/tomcat.lxcfile

# Build applications
lxc-build ${SOURCE_DIR}/activemq
lxc-build ${SOURCE_DIR}/ckan
lxc-build ${SOURCE_DIR}/ckan-datapusher
lxc-build ${SOURCE_DIR}/crisiscleanup
lxc-build ${SOURCE_DIR}/cts
lxc-build ${SOURCE_DIR}/frontlinesms
lxc-build ${SOURCE_DIR}/gnuhealth
lxc-build ${SOURCE_DIR}/kanboard
lxc-build ${SOURCE_DIR}/mariadb
lxc-build ${SOURCE_DIR}/mifosx
lxc-build ${SOURCE_DIR}/motech
lxc-build ${SOURCE_DIR}/opendatakit
lxc-build ${SOURCE_DIR}/opendatakit-build
lxc-build ${SOURCE_DIR}/openmapkit
lxc-build ${SOURCE_DIR}/pandora
lxc-build ${SOURCE_DIR}/postgres
lxc-build ${SOURCE_DIR}/rabbitmq
lxc-build ${SOURCE_DIR}/redis
lxc-build ${SOURCE_DIR}/sahana
lxc-build ${SOURCE_DIR}/seeddms
lxc-build ${SOURCE_DIR}/sigmah
lxc-build ${SOURCE_DIR}/solr
lxc-build ${SOURCE_DIR}/ushahidi
