v-add-domain 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. #!/bin/bash
  2. # info: add web/dns/mail domain
  3. # options: USER DOMAIN [IP]
  4. #
  5. # The function adds web/dns/mail domain to a server.
  6. #----------------------------------------------------------#
  7. # Variable&Function #
  8. #----------------------------------------------------------#
  9. # Argument defenition
  10. user=$1
  11. domain=$2
  12. ip=$3
  13. # Includes
  14. source $VESTA/conf/vesta.conf
  15. source $VESTA/func/main.sh
  16. source $VESTA/func/ip.sh
  17. #----------------------------------------------------------#
  18. # Verifications #
  19. #----------------------------------------------------------#
  20. check_args '2' "$#" 'USER DOMAIN [IP]'
  21. validate_format 'user' 'domain'
  22. if [ ! -z "$ip" ]; then
  23. validate_format 'ip'
  24. fi
  25. is_object_valid 'user' 'USER' "$user"
  26. is_object_unsuspended 'user' 'USER' "$user"
  27. #----------------------------------------------------------#
  28. # Action #
  29. #----------------------------------------------------------#
  30. # Get ip if it wasn't defined
  31. if [ -z "$ip" ]; then
  32. ip=$(get_user_ip $user)
  33. if [ -z "$ip" ]; then
  34. echo "Error: no avaiable IP address"
  35. log_event "$E_NOTEXIST" "$EVENT"
  36. exit $E_NOTEXIST
  37. fi
  38. fi
  39. # Web dmain
  40. if [ ! -z "$WEB_SYSTEM" ] && [ "$WEB_SYSTEM" != 'no' ]; then
  41. $BIN/v-add-web-domain $user $domain $ip
  42. retun_code=$?
  43. fi
  44. # Proxy support
  45. if [ ! -z "$PROXY_SYSTEM" ] && [ "$retun_code" -eq 0 ]; then
  46. $BIN/v-add-web-domain-proxy $user $domain
  47. fi
  48. # DNS domain
  49. if [ ! -z "$DNS_SYSTEM" ] && [ "$DNS_SYSTEM" != 'no' ]; then
  50. if [ "$retun_code" -eq 0 ]; then
  51. $BIN/v-add-dns-domain $user $domain $ip
  52. retun_code=$?
  53. fi
  54. fi
  55. # Mail domain
  56. if [ ! -z "$MAIL_SYSTEM" ] && [ "$MAIL_SYSTEM" != 'no' ]; then
  57. if [ "$retun_code" -eq 0 ]; then
  58. $BIN/v-add-mail-domain $user $domain
  59. retun_code=$?
  60. fi
  61. fi
  62. #----------------------------------------------------------#
  63. # Vesta #
  64. #----------------------------------------------------------#
  65. exit $retun_code