#!/usr/bin/env bash

# генератор конфига для its_client
# тэги itype, ctype, geo берет из переменных DEPLOY_NODE_DC и сплита по `_` из DEPLOY_STAGE_ID
# либо из параметров запуска `-i -e -g`

its_service_id=${DEPLOY_STAGE_ID//[-]/_}_$DEPLOY_NODE_DC
work_dir=app/its_client
conf_dir=app/config/its_client
geo=$DEPLOY_NODE_DC

logpath=app/log/its_client.log
loglevel=INFO

IFS=_ read prj itype env <<< ${DEPLOY_STAGE_ID//[-]/_}

while [[ "$#" -gt 0 ]]; do
    case $1 in
        -s|--its-service-id) its_service_id="$2"; shift ;;
        -w|--work-dir) work_dir="$2"; shift ;;
        -c|--conf-dir) conf_dir="$2"; shift ;;
        -i|--itype) itype="$2"; shift ;;
        -g|--geo) geo="$2"; shift ;;
        -e|--env) env="$2"; shift ;;
        -v|--loglevel) loglevel="$2"; shift ;;
        -l|--logpath) logpath="$2"; shift ;;
        -*|--*) echo "Unknown parameter passed: $1"; exit 1 ;;
    esac
    shift
done

mkdir -p $conf_dir
exec > $conf_dir/cfg.yaml

echo "
log:
  loglevel: $loglevel
  filepath: $logpath
its_client:
  url: http://its.yandex-team.ru/v1
  itags:
  - a_geo_$geo
  - a_ctype_$env
  - a_itype_$itype
  service_id: $its_service_id
  controls_dir: $work_dir/controls
  shared_dir: $work_dir/shared_controls
  refresh_flag: $work_dir/refresh.flag
  req_timeout: 5
  poll_timeout: 5
  max_poll_timeout: 10
  max_timeout_jitter: 0
"
