40 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| CWD=$(cd `dirname $0`;pwd)
 | |
| cd "${CWD}"
 | |
| source _env
 | |
| 
 | |
| STAMP="$(date +%s)"
 | |
| 
 | |
| [[ -f boot.yaml ]] && echo "find boot.yaml, skip configuring..." || {
 | |
|   echo "generate boot.yaml ..."
 | |
|   TMPFILE="boot.${STAMP}.yaml"
 | |
|   cp -f boot-tmp.yaml $TMPFILE
 | |
|   sed -i "s|@OB_HOME_PATH@|${OB_HOME_PATH}|g" $TMPFILE
 | |
|   sed -i "s|@OB_MYSQL_PORT@|${OB_MYSQL_PORT}|g" $TMPFILE
 | |
|   sed -i "s|@OB_RPC_PORT@|${OB_RPC_PORT}|g" $TMPFILE
 | |
|   sed -i "s|@OB_ROOT_PASSWORD@|${OB_ROOT_PASSWORD}|g" $TMPFILE
 | |
|   echo "create boot dirs and deploy ob cluster ..."
 | |
|   mkdir -p $OB_HOME_PATH && obd cluster deploy "${OB_CLUSTER_NAME}" -c $TMPFILE && mv -f $TMPFILE boot.yaml
 | |
| }
 | |
| 
 | |
| [[ -f boot.yaml ]] && {
 | |
|   echo "start ob cluster ..."
 | |
|   obd cluster restart $OB_CLUSTER_NAME
 | |
| }
 | |
| 
 | |
| [[ -f init_tenant.sql ]] || {
 | |
|   echo "generate init_tenant.sql ..."
 | |
|   TMPSQL="init_tenant.${STAMP}.sql"
 | |
|   cp -f init_tenant-tmp.sql $TMPSQL
 | |
|   sed -i "s|@OB_TENANT_NAME@|${OB_TENANT_NAME}|g" $TMPSQL
 | |
| 
 | |
|   if [[ "${OB_ROOT_PASSWORD}x" != "x" ]]; then
 | |
|     PASSCMD=-p${OB_ROOT_PASSWORD}
 | |
|   fi
 | |
| 
 | |
|   echo "init tenant and sysbench database ..."
 | |
|   obclient -h127.1 -uroot@sys -A -Doceanbase -P${OB_MYSQL_PORT} ${PASSCMD} < $TMPSQL &&
 | |
|     obclient -h127.1 -uroot@${OB_TENANT_NAME} -A -P${OB_MYSQL_PORT} < init_tenant_user.sql &&
 | |
|     mv -f ${TMPSQL} init_tenant.sql
 | |
| } && echo "boot success!" && exec /sbin/init
 | 
