74 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						|
 | 
						|
if [ "$#" -gt 1 ]; then
 | 
						|
    exit 1
 | 
						|
elif [ "$#" -eq 1 ]; then
 | 
						|
    BUILD_ARG="--build-arg VERSION=$1"
 | 
						|
else
 | 
						|
    BUILD_ARG=""
 | 
						|
fi
 | 
						|
 | 
						|
TMP_INIT_STORE_PY_SCRIPT="init_store_for_fast_start.tmp.py"
 | 
						|
ACTUAL_INIT_STORE_PY_SCRIPT="init_store_for_fast_start.py"
 | 
						|
 | 
						|
CWD=$(cd `dirname $0`;pwd)
 | 
						|
cd "${CWD}"
 | 
						|
 | 
						|
function fast_boot_docker_build() {
 | 
						|
    rm -rf boot
 | 
						|
    cp -r step_1_boot boot
 | 
						|
    docker build $BUILD_ARG --build-arg STEP=1 -t raw_observer .
 | 
						|
    if [ $? == 0 ]; then
 | 
						|
        echo "================== build prepare docker ok ==============="
 | 
						|
    else
 | 
						|
        echo "================== build prepare docker failed ==============="
 | 
						|
        exit -1
 | 
						|
    fi
 | 
						|
    rm -rf boot
 | 
						|
 | 
						|
    cd "${CWD}" && mkdir -p ${CWD}/boot/etc
 | 
						|
    docker run -it -v ${CWD}/boot:/root/dest raw_observer
 | 
						|
    if [ $? == 0 ]; then
 | 
						|
        echo "================== prepare docker run ok ==============="
 | 
						|
    else
 | 
						|
        echo "================== prepare docker run failed ==============="
 | 
						|
        rm -rf ${CWD}/boot/etc
 | 
						|
        rm -rf ${CWD}/boot/store.tar.gz
 | 
						|
        exit -1
 | 
						|
    fi
 | 
						|
 | 
						|
    cd "${CWD}"
 | 
						|
    cp -r step_2_boot/* boot
 | 
						|
    docker build $BUILD_ARG --build-arg STEP=2 -t oceanbase-ce .
 | 
						|
    if [ $? == 0 ]; then
 | 
						|
        echo "================== docker build ok ==============="
 | 
						|
    else
 | 
						|
        echo "================== docker build failed ==============="
 | 
						|
        exit -1
 | 
						|
    fi
 | 
						|
}
 | 
						|
 | 
						|
source ./step_2_boot/_env
 | 
						|
OS=`uname`
 | 
						|
cp ${TMP_INIT_STORE_PY_SCRIPT} ${ACTUAL_INIT_STORE_PY_SCRIPT}
 | 
						|
 | 
						|
if [ "$OS" == 'Darwin' ]; then
 | 
						|
    sed -i '' -e "s/@OB_SERVER_IP@/${OB_SERVER_IP}/g" ${ACTUAL_INIT_STORE_PY_SCRIPT}
 | 
						|
    sed -i '' -e "s/@OB_MYSQL_PORT@/${OB_MYSQL_PORT}/g" ${ACTUAL_INIT_STORE_PY_SCRIPT}
 | 
						|
    sed -i '' -e "s/@OB_RPC_PORT@/${OB_RPC_PORT}/g" ${ACTUAL_INIT_STORE_PY_SCRIPT}
 | 
						|
    sed -i '' -e "s/@OB_TENANT_NAME@/${OB_TENANT_NAME}/g" ${ACTUAL_INIT_STORE_PY_SCRIPT}
 | 
						|
    sed -i '' -e "s/@OB_TENANT_LOWER_CASE_TABLE_NAMES@/${OB_TENANT_LOWER_CASE_TABLE_NAMES}/g" ${ACTUAL_INIT_STORE_PY_SCRIPT}
 | 
						|
else
 | 
						|
    sed -i'' -e "s/@OB_SERVER_IP@/${OB_SERVER_IP}/g" ${ACTUAL_INIT_STORE_PY_SCRIPT}
 | 
						|
    sed -i'' -e "s/@OB_MYSQL_PORT@/${OB_MYSQL_PORT}/g" ${ACTUAL_INIT_STORE_PY_SCRIPT}
 | 
						|
    sed -i'' -e "s/@OB_RPC_PORT@/${OB_RPC_PORT}/g" ${ACTUAL_INIT_STORE_PY_SCRIPT}
 | 
						|
    sed -i'' -e "s/@OB_TENANT_NAME@/${OB_TENANT_NAME}/g" ${ACTUAL_INIT_STORE_PY_SCRIPT}
 | 
						|
    sed -i'' -e "s/@OB_TENANT_LOWER_CASE_TABLE_NAMES@/${OB_TENANT_LOWER_CASE_TABLE_NAMES}/g" ${ACTUAL_INIT_STORE_PY_SCRIPT}
 | 
						|
fi
 | 
						|
 | 
						|
fast_boot_docker_build
 | 
						|
if [ $? != 0 ]; then
 | 
						|
    echo "use local rpm build docker failed"
 | 
						|
    exit -1
 | 
						|
fi
 |