diff --git a/environment/0_env/install.sh b/environment/0_env/install.sh index b644bed7..46fee668 100644 --- a/environment/0_env/install.sh +++ b/environment/0_env/install.sh @@ -32,7 +32,7 @@ touch_env_rpms() { elif [ -f /etc/anolis-release ]; then sed -i '/epel\/8\/Everything/{n;s/enabled=0/enabled=1/;}' /etc/yum.repos.d/AnolisOS-DDE.repo fi - rpm -q --quiet python3 || yum install -y python3 + command -v python3 || rpm -q --quiet python3 || yum install -y python3 rpm -q --quiet wget || yum install -y wget rpm -q --quiet cronie || yum install -y cronie } @@ -67,6 +67,7 @@ touch_virtualenv() { cp .pydistutils.cfg ~/.pydistutils.cfg python3 -m venv ${VIRTUALENV_HOME} if [ "$?" != 0 ]; then + pip3 install virtualenv python3 -m virtualenv ${VIRTUALENV_HOME} fi if [ "$?" = 0 ]; then diff --git a/script/sysom.sh b/script/sysom.sh index c33908b2..d94544bc 100755 --- a/script/sysom.sh +++ b/script/sysom.sh @@ -53,41 +53,41 @@ if [ "$CONF_HOME" == "" ]; then fi mkdir -p $CONF_HOME -if [ "$DB_MYSQL_HOST" == "" ]; then - export DB_MYSQL_HOST=localhost -fi +# if [ "$DB_MYSQL_HOST" == "" ]; then +# export DB_MYSQL_HOST=localhost +# fi -if [ "$DB_MYSQL_PORT" == "" ]; then - export DB_MYSQL_PORT=3306 -fi +# if [ "$DB_MYSQL_PORT" == "" ]; then +# export DB_MYSQL_PORT=3306 +# fi -if [ "$DB_MYSQL_USERNAME" == "" ]; then - export DB_MYSQL_USERNAME=sysom -fi +# if [ "$DB_MYSQL_USERNAME" == "" ]; then +# export DB_MYSQL_USERNAME=sysom +# fi -if [ "$DB_MYSQL_PASSWORD" == "" ]; then - export DB_MYSQL_PASSWORD=sysom_admin -fi +# if [ "$DB_MYSQL_PASSWORD" == "" ]; then +# export DB_MYSQL_PASSWORD=sysom_admin +# fi -if [ "$DB_MYSQL_DATABASE" == "" ]; then - export DB_MYSQL_DATABASE=sysom -fi +# if [ "$DB_MYSQL_DATABASE" == "" ]; then +# export DB_MYSQL_DATABASE=sysom +# fi -if [ "$REDIS_HOST" == "" ]; then - export REDIS_HOST=localhost -fi +# if [ "$REDIS_HOST" == "" ]; then +# export REDIS_HOST=localhost +# fi -if [ "$REDIS_PORT" == "" ]; then - export REDIS_PORT=6379 -fi +# if [ "$REDIS_PORT" == "" ]; then +# export REDIS_PORT=6379 +# fi -if [ "$REDIS_USERNAME" == "" ]; then - export REDIS_USERNAME="" -fi +# if [ "$REDIS_USERNAME" == "" ]; then +# export REDIS_USERNAME="" +# fi -if [ "$REDIS_PASSWORD" == "" ]; then - export REDIS_PASSWORD="" -fi +# if [ "$REDIS_PASSWORD" == "" ]; then +# export REDIS_PASSWORD="" +# fi # Deploy env list if [ "$DEPLOY_ENV_LIST" == "" ]; then diff --git a/script/sysom_dbmigrate.sh b/script/sysom_dbmigrate.sh index 978dac8a..4a8a8f0e 100755 --- a/script/sysom_dbmigrate.sh +++ b/script/sysom_dbmigrate.sh @@ -29,17 +29,35 @@ update_global_config() { sed "s/global_root_path \/usr\/local\/sysom/global_root_path $APP_HOME/g" -i ${SYSOM_CONF} # MySQL - sed "/mysql/,/host/s/host: localhost/host: $DB_MYSQL_HOST/g" -i ${SYSOM_CONF} - sed "/mysql/,/port/s/port: 3306/port: $DB_MYSQL_PORT/g" -i ${SYSOM_CONF} - sed "/mysql/,/user/s/user: sysom/user: $DB_MYSQL_USERNAME/g" -i ${SYSOM_CONF} - sed "/mysql/,/password/s/password: sysom_admin/password: $DB_MYSQL_PASSWORD/g" -i ${SYSOM_CONF} - sed "/mysql/,/database/s/database: sysom/database: $DB_MYSQL_DATABASE/g" -i ${SYSOM_CONF} + if [ $DB_MYSQL_HOST ]; then + sed "/mysql/,/host/s/host: localhost/host: $DB_MYSQL_HOST/g" -i ${SYSOM_CONF} + fi + if [ $DB_MYSQL_PORT ]; then + sed "/mysql/,/port/s/port: 3306/port: $DB_MYSQL_PORT/g" -i ${SYSOM_CONF} + fi + if [ $DB_MYSQL_USERNAME ]; then + sed "/mysql/,/user/s/user: sysom/user: $DB_MYSQL_USERNAME/g" -i ${SYSOM_CONF} + fi + if [ $DB_MYSQL_PASSWORD ]; then + sed "/mysql/,/password/s/password: sysom_admin/password: $DB_MYSQL_PASSWORD/g" -i ${SYSOM_CONF} + fi + if [ $DB_MYSQL_DATABASE ]; then + sed "/mysql/,/database/s/database: sysom/database: $DB_MYSQL_DATABASE/g" -i ${SYSOM_CONF} + fi # Redis - sed "/redis:/,/host/s/host: localhost/host: $REDIS_HOST/g" -i ${SYSOM_CONF} - sed "/redis:/,/port/s/port: 6379/port: $REDIS_PORT/g" -i ${SYSOM_CONF} - sed "/redis:/,/username/s/username:/username: $REDIS_USERNAME/g" -i ${SYSOM_CONF} - sed "/redis:/,/password/s/password:/password: $REDIS_PASSWORD/g" -i ${SYSOM_CONF} + if [ $REDIS_HOST ]; then + sed "/redis:/,/host/s/host: localhost/host: $REDIS_HOST/g" -i ${SYSOM_CONF} + fi + if [ $REDIS_PORT ]; then + sed "/redis:/,/port/s/port: 6379/port: $REDIS_PORT/g" -i ${SYSOM_CONF} + fi + if [ $REDIS_USERNAME ]; then + sed "/redis:/,/username/s/username:/username: $REDIS_USERNAME/g" -i ${SYSOM_CONF} + fi + if [ $REDIS_PASSWORD ]; then + sed "/redis:/,/password/s/password:/password: $REDIS_PASSWORD/g" -i ${SYSOM_CONF} + fi ###update local timezone### local_timezone=`timedatectl status | grep "Time zone" | awk '{print $3}'` diff --git a/script/sysom_init.sh b/script/sysom_init.sh index b2882aa7..3e349cca 100755 --- a/script/sysom_init.sh +++ b/script/sysom_init.sh @@ -3,7 +3,7 @@ set -x ProgName=$(basename $0) BaseDir=$(dirname $(readlink -f "$0")) LocalAppHome=$(dirname $BaseDir) -SYSOM_DEPLOY_LOG=$LOG_HOME/sysom_deploy.log +SYSOM_INIT_LOG=$LOG_HOME/sysom_init.log #################################################################################################################### # Helper functions @@ -234,7 +234,7 @@ case $subcommand in ensure_supervisor_active check_config_exist shift - sub_${subcommand} $@ + sub_${subcommand} $@ | tee -a ${SYSOM_INIT_LOG} || exit 1 if [ $? = 127 ]; then echo "Error: '$subcommand' is not a known subcommand." >&2 echo " Run '$ProgName --help' for a list of known subcommands." >&2 diff --git a/script/sysom_install.sh b/script/sysom_install.sh index b6e16b7f..e97f64a4 100755 --- a/script/sysom_install.sh +++ b/script/sysom_install.sh @@ -32,17 +32,35 @@ update_global_config() { sed "s/global_root_path \/usr\/local\/sysom/global_root_path $APP_HOME/g" -i ${SYSOM_CONF} # MySQL - sed "/mysql/,/host/s/host: localhost/host: $DB_MYSQL_HOST/g" -i ${SYSOM_CONF} - sed "/mysql/,/port/s/port: 3306/port: $DB_MYSQL_PORT/g" -i ${SYSOM_CONF} - sed "/mysql/,/user/s/user: sysom/user: $DB_MYSQL_USERNAME/g" -i ${SYSOM_CONF} - sed "/mysql/,/password/s/password: sysom_admin/password: $DB_MYSQL_PASSWORD/g" -i ${SYSOM_CONF} - sed "/mysql/,/database/s/database: sysom/database: $DB_MYSQL_DATABASE/g" -i ${SYSOM_CONF} + if [ $DB_MYSQL_HOST ]; then + sed "/mysql/,/host/s/host: localhost/host: $DB_MYSQL_HOST/g" -i ${SYSOM_CONF} + fi + if [ $DB_MYSQL_PORT ]; then + sed "/mysql/,/port/s/port: 3306/port: $DB_MYSQL_PORT/g" -i ${SYSOM_CONF} + fi + if [ $DB_MYSQL_USERNAME ]; then + sed "/mysql/,/user/s/user: sysom/user: $DB_MYSQL_USERNAME/g" -i ${SYSOM_CONF} + fi + if [ $DB_MYSQL_PASSWORD ]; then + sed "/mysql/,/password/s/password: sysom_admin/password: $DB_MYSQL_PASSWORD/g" -i ${SYSOM_CONF} + fi + if [ $DB_MYSQL_DATABASE ]; then + sed "/mysql/,/database/s/database: sysom/database: $DB_MYSQL_DATABASE/g" -i ${SYSOM_CONF} + fi # Redis - sed "/redis:/,/host/s/host: localhost/host: $REDIS_HOST/g" -i ${SYSOM_CONF} - sed "/redis:/,/port/s/port: 6379/port: $REDIS_PORT/g" -i ${SYSOM_CONF} - sed "/redis:/,/username/s/username:/username: $REDIS_USERNAME/g" -i ${SYSOM_CONF} - sed "/redis:/,/password/s/password:/password: $REDIS_PASSWORD/g" -i ${SYSOM_CONF} + if [ $REDIS_HOST ]; then + sed "/redis:/,/host/s/host: localhost/host: $REDIS_HOST/g" -i ${SYSOM_CONF} + fi + if [ $REDIS_PORT ]; then + sed "/redis:/,/port/s/port: 6379/port: $REDIS_PORT/g" -i ${SYSOM_CONF} + fi + if [ $REDIS_USERNAME ]; then + sed "/redis:/,/username/s/username:/username: $REDIS_USERNAME/g" -i ${SYSOM_CONF} + fi + if [ $REDIS_PASSWORD ]; then + sed "/redis:/,/password/s/password:/password: $REDIS_PASSWORD/g" -i ${SYSOM_CONF} + fi ###update local timezone### local_timezone=$(timedatectl status | grep "Time zone" | awk '{print $3}') @@ -304,7 +322,7 @@ case $subcommand in install_new_scripts ensure_config_exist shift - sub_${subcommand} $@ | tee ${SYSOM_INSTALL_LOG} + sub_${subcommand} $@ | tee -a ${SYSOM_INSTALL_LOG} || exit 1 if [ $? = 127 ]; then echo "Error: '$subcommand' is not a known subcommand." >&2 echo " Run '$ProgName --help' for a list of known subcommands." >&2