feat: add huaweicloud error handling

This commit is contained in:
Easton Man 2021-02-15 15:18:49 +08:00
parent b7c3e6099c
commit 86639dbc02
No known key found for this signature in database
GPG Key ID: 146EB8136EFBAEE6

View File

@ -5,7 +5,7 @@
# HUAWEICLOUD_ProjectID # HUAWEICLOUD_ProjectID
iam_api="https://iam.myhuaweicloud.com" iam_api="https://iam.myhuaweicloud.com"
dns_api="https://dns.ap-southeast-1.myhuaweicloud.com" dns_api="https://dns.ap-southeast-1.myhuaweicloud.com" # Should work
######## Public functions ##################### ######## Public functions #####################
@ -29,16 +29,27 @@ dns_huaweicloud_add() {
return 1 return 1
fi fi
unset token # Clear token
token="$(_get_token "${HUAWEICLOUD_Username}" "${HUAWEICLOUD_Password}" "${HUAWEICLOUD_ProjectID}")" token="$(_get_token "${HUAWEICLOUD_Username}" "${HUAWEICLOUD_Password}" "${HUAWEICLOUD_ProjectID}")"
_debug2 "${token}" if [ -z "${token}" ]; then # Check token
_err "dns_api(dns_huaweicloud): Error getting token."
return 1
fi
_debug "Access token is: ${token}"
unset zoneid
zoneid="$(_get_zoneid "${token}" "${fulldomain}")" zoneid="$(_get_zoneid "${token}" "${fulldomain}")"
_debug "${zoneid}" if [ -z "${zoneid}" ]; then
_err "dns_api(dns_huaweicloud): Error getting zone id."
return 1
fi
_debug "Zone ID is: ${zoneid}"
_debug "Adding Record" _debug "Adding Record"
_add_record "${token}" "${fulldomain}" "${txtvalue}" _add_record "${token}" "${fulldomain}" "${txtvalue}"
ret="$?" ret="$?"
if [ "${ret}" != "0" ]; then if [ "${ret}" != "0" ]; then
_err "dns_huaweicloud: Error adding record." _err "dns_api(dns_huaweicloud): Error adding record."
return 1 return 1
fi fi
@ -69,12 +80,21 @@ dns_huaweicloud_rm() {
return 1 return 1
fi fi
unset token # Clear token
token="$(_get_token "${HUAWEICLOUD_Username}" "${HUAWEICLOUD_Password}" "${HUAWEICLOUD_ProjectID}")" token="$(_get_token "${HUAWEICLOUD_Username}" "${HUAWEICLOUD_Password}" "${HUAWEICLOUD_ProjectID}")"
_debug2 "${token}" if [ -z "${token}" ]; then # Check token
_err "dns_api(dns_huaweicloud): Error getting token."
return 1
fi
_debug "Access token is: ${token}"
unset zoneid
zoneid="$(_get_zoneid "${token}" "${fulldomain}")" zoneid="$(_get_zoneid "${token}" "${fulldomain}")"
_debug "${zoneid}" if [ -z "${zoneid}" ]; then
record_id="$(_get_recordset_id "${token}" "${fulldomain}" "${zoneid}")" _err "dns_api(dns_huaweicloud): Error getting zone id."
_debug "Record Set ID is: ${record_id}" return 1
fi
_debug "Zone ID is: ${zoneid}"
# Remove all records # Remove all records
# Therotically HuaweiCloud does not allow more than one record set # Therotically HuaweiCloud does not allow more than one record set