#!/bin/bash

set -e

unset BUNDLE_PATH BUNDLE_WITHOUT

if [[ "${WITH_LOAD_BALANCER}" == "true" ]]; then
  gdk config set postgresql.replica.enabled true
  gdk config set postgresql.replica_2.enabled true
  gdk config set load_balancing.enabled true
  gdk reconfigure
fi

gdk start

# Split logs in to multiple files when running in CI
if [ -z "$CI" ]; then
  exec "$@" | tee -a ${HOME}/gitlab-development-kit/gitlab/log/gdk-container.log
else
  logs=("gitaly" "gitlab-workhorse" "postgresql" "rails-background-jobs" "redis" "sshd" "vite" "rails-web" "webpack")
  for log in "${logs[@]}"; do
    gdk tail $log &>${CI_BUILDS_DIR}/gdk.${log}.log &
  done

  # TODO: Check if we can reconfigure gitlab to write logs directly to `BUILDS_DIR`
  for logfile in ${HOME}/gitlab-development-kit/gitlab/log/*.log; do
    tail -f $logfile &>${CI_BUILDS_DIR}/$(basename $logfile) &
  done

  exec "$@"
fi
