You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
#!/usr/bin/env sh
# This API is a wrapper for other API so that you # are able to put your TXT record to multiple providers. # The functionality is in the responsibility of the respective API # therefore please check if your used APIs work. # e.g. for using NS1 and AWS Route53, use: # OCTODNS_PROVIDERS=nsone_aws # --dns octodns # # Author: Josef Vogt # ######## Public functions ##################### dns_octodns_add() { fulldomain=$1 txtvalue=$2 _info "Creating DNS entries via octoDNS" _debug fulldomain "$fulldomain" _debug txtvalue "$txtvalue" if [ -z "$OCTODNS_PROVIDERS" ]; then OCTODNS_PROVIDERS="" _err "You didn't specify OCTODNS_PROVIDERS yet." _err "Please specifiy your providers and try again." return 1 fi
#save the providers list to the account conf file. _saveaccountconf OCTODNS_PROVIDERS "$OCTODNS_PROVIDERS" return 1
IFS='_' read -r -a used_providers <<< "$OCTODNS_PROVIDERS" for element in "${used_providers[@]}" do _debug element "$element" sourcecommand="$_SUB_FOLDER_DNSAPI/dns_${element}.sh"
if ! . "$sourcecommand"; then _err "Load file $sourcecommand error. Please check your api file and try again." return 1 fi
addcommand="dns_${element}_add" _debug addcommand "$addcommand" $addcommand "$fulldomain" "$txtvalue" done
_info "Finished adding records via octoDNS" return 0 }
#Remove the txt record after validation. dns_octodns_rm() { fulldomain=$1 txtvalue=$2 _info "Removing DNS entries via octoDNS" _debug fulldomain "$fulldomain" _debug txtvalue "$txtvalue"
if [ -z "$OCTODNS_PROVIDERS" ]; then OCTODNS_PROVIDERS="" _err "You didn't specify OCTODNS_PROVIDERS yet." _err "Please specifiy your providers and try again." return 1 fi
IFS='_' read -r -a used_providers <<< "$OCTODNS_PROVIDERS" for element in "${used_providers[@]}" do _debug element "$element" sourcecommand="$_SUB_FOLDER_DNSAPI/dns_${element}.sh"
if ! . "$sourcecommand"; then _err "Load file $sourcecommand error. Please check your api file and try again." return 1 fi
rmcommand="dns_${element}_rm" _debug rmcommand "$rmcommand" $rmcommand "$fulldomain" "$txtvalue" done
_info "Finished deleting records via octoDNS" return 0 }
|