#!/bin/bash
BASE=`cat  ../../../ai.config | grep BASE|awk -F"=" '{print $2}'`
EDITION=`cat $BASE/ai.config| grep EDITION  | awk -F"=" '{print $2}'`
if [ $EDITION = basic ];then
	        SYSTEM_LICENSE_TYPE=1
	else
		        SYSTEM_LICENSE_TYPE=0
fi
VERSION=`cat $BASE/ai.config| grep VERSION  | awk -F"=" '{print $2}'`
K8S_SERVER_URL=`cat /root/.kube/config  |grep server|awk -F"server: " '{print $2 }'`
K8S_SERVER_CAD=`cat /root/.kube/config  |grep certificate-authority-data |awk -F"certificate-authority-data: " '{print $2 }'`
K8S_SERVER_CCD=`cat /root/.kube/config  |grep client-certificate-data |awk -F"client-certificate-data: " '{print $2 }'`
K8S_SERVER_CKD=`cat /root/.kube/config  |grep client-key-data |awk -F"client-key-data: " '{print $2 }'`
HARBOR_EXTERNAL_DOMAIN=`cat $BASE/ai.config| grep HARBOR_EXTERNAL_DOMAIN| awk -F"=" '{print $2}'`:`cat $BASE/ai.config| grep HARBOR_NODE_PORT| awk -F"=" '{print $2}'`
HARBOR_SERVER_DOMAIN=`cat $BASE/ai.config| grep HARBOR_DOMAIN| awk -F"=" '{print $2}'`:`cat $BASE/ai.config| grep HARBOR_NODE_PORT| awk -F"=" '{print $2}'`
HARBOR_SERVER_URL=http://$HARBOR_SERVER_DOMAIN/api
HARBOR_SERVER_USERNAME=admin
HARBOR_SERVER_PASSWORD=`cat $BASE/ai.config| grep HARBOR_ADMIN_PASSWORD| awk -F"=" '{print $2}'`
MINIO_SERVER_URL=`cat $BASE/ai.config| grep AI_SERVICE_IP | awk -F"=" '{print $2}'`
MINIO_SERVER_ACCESSKEY=`cat $BASE/ai.config| grep MINIO_ACCESS_KEY | awk -F"=" '{print $2}'`
MINIO_SERVER_SECRETKEY=`cat $BASE/ai.config| grep MINIO_SECRET_KEY | awk -F"=" '{print $2}'`
AI_SERVER_ADDRESS=`cat $BASE/ai.config| grep AI_SERVICE_IP | awk -F"=" '{print $2}'`
PROTOCOL=`cat $BASE/ai.config| grep PROTOCOL | awk -F"=" '{print $2}'`
USER_PORT=`cat $BASE/ai.config| grep USER_PORT | awk -F"=" '{print $2}'`
MGR_PORT=`cat $BASE/ai.config| grep MGR_PORT | awk -F"=" '{print $2}'`
ANSIBLE_IP=`cat $BASE/ai.config| grep AI_SERVICE_IP | awk -F"=" '{print $2}'`
ANSIBLE_USERNAME=root
ANSIBLE_PASSWORD=`cat $BASE/ai.config| grep SERVER_PASSWORD`
ANSIBLE_PASSWORD=${ANSIBLE_PASSWORD#*=}
ANSIBLE_PORT=`cat $BASE/ai.config| grep SSH_PORT | awk -F"=" '{print $2}'`
AI_APP_K8S_ADDR=`cat $BASE/ai.config| grep MYSQL_NODE_IP  | awk -F"=" '{print $2}'`
MYSQL_SERVER_IP=`cat $BASE/ai.config| grep MYSQL_NODE_IP | awk -F"=" '{print $2}'`
MYSQL_SERVER_PASSWORD=`cat $BASE/ai.config| grep MYSQL_NODE_PASSWORD | awk -F"=" '{print $2}'`
HARBOR_NODE_IP=$(grep -r 'HARBOR_NODE_IP' $BASE/ai.config |cut -d'=' -f2|awk '{print $1}')
HARBOR_IP=$(grep -r 'HARBOR_DOMAIN' $BASE/ai.config |cut -d'=' -f2|awk '{print $1}')
HARBOR_PORT=$(grep -r 'HARBOR_NODE_PORT' $BASE/ai.config |cut -d'=' -f2|awk '{print $1}')
REGISTRY_LOCAL="$HARBOR_IP:$HARBOR_PORT"
AI_APP_NETWORK=$(grep -E 'AI_APP_NETWORK' $BASE/ai.config | awk -F "=" '{print $2}')
#SERVICE_INET_TUNL0=$(ip addr show tunl0|grep inet|awk '{print $2}')
SERVICE_INET_TUNL0=0.0.0.0/0

if [[ $PROTOCOL == https ]];then
  /bin/cp -rp $BASE/ai/ai-manifests/cert/mgr/* common/config/mgr-web/cert/
  /bin/cp -rp $BASE/ai/ai-manifests/cert/user/* common/config/user-web/cert/
  /bin/cp -rp templates/docker-compose.https.yml.template  docker-compose.yml
  /bin/cp -rp templates/user.default.conf.https.template common/config/user-web/default.conf
  /bin/cp -rp templates/mgr.default.conf.https.template  common/config/mgr-web/default.conf
else
  /bin/cp -rp templates/docker-compose.yml.template  docker-compose.yml
  /bin/cp -rp templates/user.default.conf.template common/config/user-web/default.conf
  /bin/cp -rp templates/mgr.default.conf.template  common/config/mgr-web/default.conf
fi
   /bin/cp -rp templates/initDomain.json.template   common/config/mgr/initDomain.json
   /bin/cp -rp templates/user.env.template  common/config/user/env
   /bin/cp -rp templates/mgr.env.template  common/config/mgr/env
   sed -i "s#{REGISTRY_LOCAL}#$REGISTRY_LOCAL#g"         docker-compose.yml
   sed -i "s#{VERSION}#$VERSION#g"         docker-compose.yml
   sed -i "s#HARBOR_DOMAIN#$HARBOR_IP#g"    docker-compose.yml
   sed -i "s#HARBOR_NODE_IP#$HARBOR_NODE_IP#g"   docker-compose.yml
   sed -i "s#AI_APP_NETWORK#$AI_APP_NETWORK#g"        docker-compose.yml
   sed -i "s#AI_APP_NETWORK#$AI_APP_NETWORK#g"        `grep -r AI_APP_NETWORK -rl common/`
   sed -i "s#USER_PORT#$USER_PORT#g" docker-compose.yml
   sed -i "s#MGR_PORT#$MGR_PORT#g" docker-compose.yml
   sed -i "s#MYSQL_SERVER_IP#$MYSQL_SERVER_IP#g" `grep -r MYSQL_SERVER_IP -rl common/`
   sed -i "s#SYSTEM_LICENSE_TYPE#$SYSTEM_LICENSE_TYPE#g" `grep -r SYSTEM_LICENSE_TYPE -rl common/`
   sed -i "s#MYSQL_SERVER_PASSWORD#$MYSQL_SERVER_PASSWORD#g" `grep -r MYSQL_SERVER_PASSWORD -rl common/`
   sed -i "s#AI_APP_K8S_ADDR#$AI_APP_K8S_ADDR#g" `grep -r AI_APP_K8S_ADDR -rl common/`
   sed -i "s#ANSIBLE_PORT#$ANSIBLE_PORT#g" `grep -r ANSIBLE_PORT -rl common/`
   sed -i "s#ANSIBLE_PASSWORD#$ANSIBLE_PASSWORD#g" `grep -r ANSIBLE_PASSWORD  -rl common/`
   sed -i "s#ANSIBLE_USERNAME#$ANSIBLE_USERNAME#g" `grep -r ANSIBLE_USERNAME -rl common/`
   sed -i "s#ANSIBLE_IP#$ANSIBLE_IP#g" `grep -r ANSIBLE_IP -rl common/`
   sed -i "s#AI_SERVER_ADDRESS#$AI_SERVER_ADDRESS#g" `grep -r AI_SERVER_ADDRESS -rl common/`
   sed -i "s#MINIO_SERVER_SECRETKEY#$MINIO_SERVER_SECRETKEY#g" `grep -r MINIO_SERVER_SECRETKEY -rl common/`
   sed -i "s#MINIO_SERVER_ACCESSKEY#$MINIO_SERVER_ACCESSKEY#g" `grep -r MINIO_SERVER_ACCESSKEY -rl common/`
   sed -i "s#MINIO_SERVER_URL#$MINIO_SERVER_URL#g" `grep -r MINIO_SERVER_URL -rl common/`
   sed -i "s#HARBOR_SERVER_PASSWORD#$HARBOR_SERVER_PASSWORD#g" `grep -r HARBOR_SERVER_PASSWORD -rl common/`
   sed -i "s#HARBOR_SERVER_USERNAME#$HARBOR_SERVER_USERNAME#g" `grep -r HARBOR_SERVER_USERNAME -rl common/`
   sed -i "s#HARBOR_SERVER_URL#$HARBOR_SERVER_URL#g" `grep -r HARBOR_SERVER_URL -rl common/`
   sed -i "s#HARBOR_SERVER_DOMAIN#$HARBOR_SERVER_DOMAIN#g" `grep -r HARBOR_SERVER_DOMAIN -rl common/`
   sed -i "s#HARBOR_EXTERNAL_DOMAIN#$HARBOR_EXTERNAL_DOMAIN#g" `grep -r HARBOR_EXTERNAL_DOMAIN -rl common/`
   sed -i "s#K8S_SERVER_CKD#$K8S_SERVER_CKD#g" `grep -r K8S_SERVER_CKD -rl common/`
   sed -i "s#K8S_SERVER_CCD#$K8S_SERVER_CCD#g" `grep -r K8S_SERVER_CCD -rl common/`
   sed -i "s#K8S_SERVER_CAD#$K8S_SERVER_CAD#g" `grep -r K8S_SERVER_CAD -rl common/`
   sed -i "s#K8S_SERVER_URL#$K8S_SERVER_URL#g" `grep -r K8S_SERVER_URL -rl common/`
   sed -i "s#TRANSFER_PROTOCOL#$PROTOCOL#g" `grep -r TRANSFER_PROTOCOL -rl common/`
   sed -i "s#SERVICE_INET_TUNL0#$SERVICE_INET_TUNL0#g" `grep -r SERVICE_INET_TUNL0 -rl common/`
