#!/bin/bash

package=gerrit
gerrit_dir=/var/lib/gerrit
gerrit_site=${gerrit_dir}/review_site
gerrit_war=${gerrit_site}/bin/gerrit.war
PARAMS="--system"

if [ ! -d ${gerrit_dir} ]; then
  PARAMS="${PARAMS} --create-home"
fi
id gerrit >/dev/null 2>&1 || useradd --comment "Gerrit User" --home ${gerrit_dir} ${PARAMS} gerrit

if [ -x /etc/init.d/gerrit ]; then
  invoke-rc.d ${package} stop
fi

if [[ -f ${gerrit_dir}/review_site/etc/gerrit.config  &&  -f ${gerrit_dir}/review_site/etc/secure.config ]]; then
  chown -R gerrit:gerrit ${gerrit_dir}

  su -c "/usr/bin/java -jar ${gerrit_war} init -d ${gerrit_site} --batch --no-auto-start" -s /bin/bash gerrit
  /usr/bin/gerrit_reindex.sh

  ln -snf ${gerrit_site}/bin/gerrit.sh /etc/init.d/gerrit
  update-rc.d ${package} start 90 2 3 4 5 . stop  90 0 1 6 .
  invoke-rc.d ${package} start
else
  echo "Some of configuration files (gerrit.config or secure.config) is missinging in ${gerrit_dir}/review_site/etc/"
fi
