#!/bin/bash
# Builds and uploads a debian package with configuration files for nginx.
APPNAME=skfe-config
SETUP_APPNAME="setup-${APPNAME}"
LOGROTATE_APPNAME="rotate_nginx_logs"
CERTPOLLER_APPNAME="certpoller"
SYSTEMD="nginx.service google-fluentd.service"
SYSTEMD_TIMER="${SETUP_APPNAME}.service ${LOGROTATE_APPNAME}.timer"
DESCRIPTION="The local config files for nginx serving *.skia.org"

set -x -e

# nginx is installed by the setup script.
#TODO(kjlubick) Figure out why this is doesn't work anymore.
#DEPENDS=nginx

# Copy files into the right locations in ${ROOT}.
copy_release_files()
{
INSTALL="sudo install -D --verbose --backup=none --group=root --owner=root"
INSTALL_DIR="sudo install -d --verbose --backup=none --group=root --owner=root"
SOFTLINK="sudo ln -s"
${INSTALL} --mode=644 -T ./sys/nginx.conf                       ${ROOT}/etc/nginx/nginx.conf
# Configs for the sites we are hosting.
${INSTALL} --mode=644 -T ./sys/skia_org_nginx                   ${ROOT}/etc/nginx/sites-available/skia_org
sudo mkdir                                                      ${ROOT}/etc/nginx/sites-enabled
${SOFTLINK} ../sites-available/skia_org                         ${ROOT}/etc/nginx/sites-enabled/skia_org
${INSTALL_DIR} --mode=700                                       ${ROOT}/etc/nginx/ssl
${INSTALL} --mode=644 -T ./sys/${SETUP_APPNAME}.service         ${ROOT}/etc/systemd/system/${SETUP_APPNAME}.service
${INSTALL} --mode=644 -T ./sys/${LOGROTATE_APPNAME}.service     ${ROOT}/etc/systemd/system/${LOGROTATE_APPNAME}.service
${INSTALL} --mode=644 -T ./sys/${LOGROTATE_APPNAME}.timer       ${ROOT}/etc/systemd/system/${LOGROTATE_APPNAME}.timer
${INSTALL} --mode=644 -T ./sys/skia-fluentd.conf                ${ROOT}/etc/google-fluentd/config.d/skia-fluentd.conf
${INSTALL} --mode=755 -T ${GOPATH}/bin/${CERTPOLLER_APPNAME}    ${ROOT}/usr/local/bin/${CERTPOLLER_APPNAME}
${INSTALL} --mode=755 -T ./sys/${SETUP_APPNAME}.sh              ${ROOT}/usr/local/bin/${SETUP_APPNAME}.sh
${INSTALL} --mode=755 -T ./sys/${LOGROTATE_APPNAME}.sh          ${ROOT}/usr/local/bin/${LOGROTATE_APPNAME}.sh
}

source ../bash/release.sh
