feat: upgrade process
This commit is contained in:
@@ -161,14 +161,24 @@ case "$1" in
|
|||||||
# upgrade database
|
# upgrade database
|
||||||
cd ${docker_work_dir}
|
cd ${docker_work_dir}
|
||||||
docker-compose up -d wfc-mysql
|
docker-compose up -d wfc-mysql
|
||||||
sleep 10
|
|
||||||
if docker ps --filter "name=$CONTAINER_NAME" --format "{{.Names}}" | grep -q "$CONTAINER_NAME"; then
|
# 检查容器健康状态
|
||||||
echo "Upgrade database: "
|
timeout=30
|
||||||
${wfc_work_dir}/bin/wfcupgdb.sh all
|
interval=2
|
||||||
else
|
elapsed=0
|
||||||
echo "Contaier $CONTAINER_NAME not run, please run first..."
|
while [ $elapsed -lt $timeout ]; do
|
||||||
fi
|
health_status=$(docker inspect --format='{{.State.Health.Status}}' $CONTAINER_NAME)
|
||||||
;;
|
if [ "$health_status" == "healthy" ]; then
|
||||||
|
echo "Upgrade database: "
|
||||||
|
${wfc_work_dir}/bin/wfcupgdb.sh all
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
sleep $interval
|
||||||
|
elapsed=$((elapsed + interval))
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "Container $CONTAINER_NAME is not healthy after $timeout seconds, please check the container status."
|
||||||
|
;;
|
||||||
base)
|
base)
|
||||||
# build docker compose
|
# build docker compose
|
||||||
cd ${docker_work_dir}
|
cd ${docker_work_dir}
|
||||||
|
|||||||
@@ -6,6 +6,14 @@ mysql_sql_dir=${docker_work_dir}/mysql/db
|
|||||||
docker_sql_dir=/docker-entrypoint-initdb.d
|
docker_sql_dir=/docker-entrypoint-initdb.d
|
||||||
docker_mysql_conf_d=/etc/mysql/conf.d
|
docker_mysql_conf_d=/etc/mysql/conf.d
|
||||||
docker_my_conf_file=${docker_mysql_conf_d}/my.cnf
|
docker_my_conf_file=${docker_mysql_conf_d}/my.cnf
|
||||||
|
mysql_ocker_name=wfc-mysql
|
||||||
|
|
||||||
|
# 在容器内生成 my.cnf 文件
|
||||||
|
docker exec ${mysql_ocker_name} bash -c "cat <<EOF > ${docker_my_conf_file}
|
||||||
|
[client]
|
||||||
|
user=root
|
||||||
|
password=\${MYSQL_ROOT_PASSWORD}
|
||||||
|
EOF"
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
system)
|
system)
|
||||||
@@ -14,8 +22,8 @@ case "$1" in
|
|||||||
for sql in ./upgrade/${db_name}/*.sql; do
|
for sql in ./upgrade/${db_name}/*.sql; do
|
||||||
if [ -f "$sql" ]; then
|
if [ -f "$sql" ]; then
|
||||||
echo -n "Execute SQL script: ${sql} ... "
|
echo -n "Execute SQL script: ${sql} ... "
|
||||||
# docker exec -i wfc-mysql mysql -u ${db_name} < ${sql};
|
# docker exec -i ${mysql_ocker_name} mysql -u ${db_name} < ${sql};
|
||||||
docker exec -i wfc-mysql mysql --defaults-extra-file=${docker_my_conf_file} ${db_name} < ${sql}
|
docker exec -i ${mysql_ocker_name} mysql --defaults-extra-file=${docker_my_conf_file} ${db_name} < ${sql}
|
||||||
if [ $? = 0 ]; then
|
if [ $? = 0 ]; then
|
||||||
echo "done"
|
echo "done"
|
||||||
fi
|
fi
|
||||||
@@ -30,7 +38,7 @@ case "$1" in
|
|||||||
for sql in ./upgrade/${db_name}/*.sql; do
|
for sql in ./upgrade/${db_name}/*.sql; do
|
||||||
if [ -f "$sql" ]; then
|
if [ -f "$sql" ]; then
|
||||||
echo -n "Execute SQL script: ${sql} ... "
|
echo -n "Execute SQL script: ${sql} ... "
|
||||||
docker exec -i wfc-mysql mysql --defaults-extra-file=${docker_my_conf_file} ${db_name} < ${sql}
|
docker exec -i ${mysql_ocker_name} mysql --defaults-extra-file=${docker_my_conf_file} ${db_name} < ${sql}
|
||||||
if [ $? = 0 ]; then
|
if [ $? = 0 ]; then
|
||||||
echo "done"
|
echo "done"
|
||||||
fi
|
fi
|
||||||
@@ -45,7 +53,7 @@ case "$1" in
|
|||||||
for sql in ./upgrade/${db_name}/*.sql; do
|
for sql in ./upgrade/${db_name}/*.sql; do
|
||||||
if [ -f "$sql" ]; then
|
if [ -f "$sql" ]; then
|
||||||
echo -n "Execute SQL script: ${sql} ... "
|
echo -n "Execute SQL script: ${sql} ... "
|
||||||
docker exec -i wfc-mysql mysql --defaults-extra-file=${docker_my_conf_file} ${db_name} < ${sql}
|
docker exec -i ${mysql_ocker_name} mysql --defaults-extra-file=${docker_my_conf_file} ${db_name} < ${sql}
|
||||||
if [ $? = 0 ]; then
|
if [ $? = 0 ]; then
|
||||||
echo "done"
|
echo "done"
|
||||||
fi
|
fi
|
||||||
@@ -55,13 +63,13 @@ case "$1" in
|
|||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
all)
|
all)
|
||||||
|
$0 config
|
||||||
$0 system
|
$0 system
|
||||||
$0 user
|
$0 user
|
||||||
$0 config
|
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "WANFi Control and Billing System Upgrade Database ..."
|
echo "WANFi Control and Billing System Upgrade Database ..."
|
||||||
echo "Usage: $0 system|user|config|all"
|
echo "Usage: $0 config|system|user|all"
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
Reference in New Issue
Block a user