From f3e4a5ad2481c6f0313b7e9362611fa27a07eb71 Mon Sep 17 00:00:00 2001 From: Cold-Egg Date: Wed, 11 Mar 2020 15:38:39 -0400 Subject: [PATCH] demo sh update --- bin/database.sh | 17 +++++++++++------ bin/demosite.sh | 37 +++++++++++++++++++++++++------------ 2 files changed, 36 insertions(+), 18 deletions(-) diff --git a/bin/database.sh b/bin/database.sh index 1d08a1c..bbd20dd 100755 --- a/bin/database.sh +++ b/bin/database.sh @@ -78,19 +78,22 @@ EOT fi } -add_sql_client(){ - docker-compose exec mysql su -c 'apk add mysql-client' -} - check_db_access(){ - #add_sql_client docker-compose exec mysql su -c "mysql -uroot -p${MYSQL_ROOT_PASSWORD} -e 'status'" >/dev/null 2>&1 if [ ${?} != 0 ]; then - echo "DB access failed, please check!" + echo '[X] DB access failed, please check!' exit 1 fi } +check_db_exist(){ + docker-compose exec mysql su -c "test -e /var/lib/mysql/${1}" + if [ ${?} = 0 ]; then + echo "Database ${1} already exist, skip DB creation!" + exit 0 + fi +} + db_setup(){ docker-compose exec mysql su -c 'mysql -uroot -p${MYSQL_ROOT_PASSWORD} \ -e "CREATE DATABASE '${SQL_DB}';" \ @@ -104,6 +107,7 @@ auto_setup_main(){ gen_pass trans_name ${DOMAIN} auto_name + check_db_exist ${SQL_DB} check_db_access db_setup display_credential @@ -112,6 +116,7 @@ auto_setup_main(){ specify_setup_main(){ specify_name + check_db_exist ${SQL_DB} check_db_access db_setup display_credential diff --git a/bin/demosite.sh b/bin/demosite.sh index 63c222b..8e736c3 100755 --- a/bin/demosite.sh +++ b/bin/demosite.sh @@ -4,13 +4,20 @@ APP_NAME='wordpress' CONT_NAME='litespeed' DOC_FD='' +echow(){ + FLAG=${1} + shift + echo -e "\033[1m${EPACE}${FLAG}\033[0m${@}" +} + help_message(){ case ${1} in "1") - echo "Script will get 'DOMAIN' and 'database info'from .env file and install the wordpress site for you at the first time." + echow "Script will get 'DOMAIN' and 'database' info from .env file, then auto setup virtual host and the wordpress site for you." + exit 0 ;; "2") - echo 'Service finished, enjoy your accelarated LiteSpeed server!' + echow 'Service finished, enjoy your accelarated LiteSpeed server!' ;; esac } @@ -35,27 +42,32 @@ gen_root_fd(){ if [ -d "./sites/${1}" ]; then echo -e "[O] The root folder \033[32m${DOC_FD}\033[0m exist." else - echo "Creating document root..." + echo "Creating - document root." bash bin/domain.sh -add ${1} - echo "Finished document root." + echo "Finished - document root." fi } -store_credential(){ - if [ -f ${DOC_FD}/.db_pass ]; then - echo 'Back up old db file.' - mv ${DOC_FD}/.db_pass ${DOC_FD}/.db_pass.bk - fi +create_db(){ if [ ! -n "${MYSQL_DATABASE}" ] || [ ! -n "${MYSQL_USER}" ] || [ ! -n "${MYSQL_PASSWORD}" ]; then echo "Parameters not supplied, please check!" exit 1 - fi - echo 'Storing database parameter' - cat > "${DOC_FD}/.db_pass" << EOT + else + bash bin/database.sh -D ${1} -U ${MYSQL_USER} -P ${MYSQL_PASSWORD} -DB ${MYSQL_DATABASE} + fi +} + +store_credential(){ + if [ -f ${DOC_FD}/.db_pass ]; then + echo '[O] db file exist!' + else + echo 'Storing database parameter' + cat > "${DOC_FD}/.db_pass" << EOT "Database":"${MYSQL_DATABASE}" "Username":"${MYSQL_USER}" "Password":"$(echo ${MYSQL_PASSWORD} | tr -d "'")" EOT + fi } app_download(){ @@ -69,6 +81,7 @@ lsws_restart(){ main(){ domain_filter ${DOMAIN} gen_root_fd ${DOMAIN} + create_db ${DOMAIN} store_credential app_download ${APP_NAME} ${DOMAIN} lsws_restart