v-change-sys-config-value 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #!/bin/bash
  2. # info: change sysconfig value
  3. # options: KEY VALUE
  4. #
  5. # The function is for changing main config settings such as COMPANY_NAME or
  6. # COMPANY_EMAIL and so on.
  7. #----------------------------------------------------------#
  8. # Variable&Function #
  9. #----------------------------------------------------------#
  10. # Argument definition
  11. key=$(echo "$1" | tr '[:lower:]' '[:upper:]' )
  12. value=$2
  13. # Includes
  14. source $VESTA/func/main.sh
  15. source $VESTA/conf/vesta.conf
  16. #----------------------------------------------------------#
  17. # Verifications #
  18. #----------------------------------------------------------#
  19. check_args '2' "$#" 'KEY VALUE'
  20. validate_format 'key'
  21. #----------------------------------------------------------#
  22. # Action #
  23. #----------------------------------------------------------#
  24. # Updating conf
  25. check_ckey=$(grep "^$key='" $VESTA/conf/vesta.conf)
  26. if [ -z "$check_ckey" ]; then
  27. echo "$key='$value'" >> $VESTA/conf/vesta.conf
  28. else
  29. sed -i "s|$key=.*|$key='$value'|g" $VESTA/conf/vesta.conf
  30. fi
  31. if [ "$key" = "BACKUP" ] && [ "$value" != '/backup' ]; then
  32. rm /backup
  33. ln -s $value /backup
  34. fi
  35. #----------------------------------------------------------#
  36. # Vesta #
  37. #----------------------------------------------------------#
  38. # Logging
  39. log_event "$OK" "$EVENT"
  40. exit