11#! /usr/bin/env bash
22
3- set -exuo pipefail
3+ set -Eexuo pipefail # https://vaneyckt.io/posts/safer_bash_scripts_with_set_euxo_pipefail
44# "NS" # DO NOT DELETE THIS
55# "SOA" # CAN ONLY DELETE BY ID
66types=(" A" " AAAA" " ALIAS" " CNAME" " MX" " PTR" " TXT" )
@@ -9,7 +9,7 @@ subdomains=("www" "blog" "mail")
99echo " \$ 0=$0 "
1010script_name=" $0 "
1111while [[ " $script_name " == -* ]]; do
12- script_name=" ${script_name# -} "
12+ script_name=" ${script_name# -} "
1313done
1414
1515dir=" $( dirname -- " $( which -- " $script_name " 2> /dev/null || realpath -- " $script_name " ) " ) "
@@ -37,7 +37,7 @@ if [ ! -f "$sops_file" ]; then
3737 exit 1
3838fi
3939
40- if ! command -v sops & > /dev/null; then
40+ if ! command -v sops & > /dev/null; then
4141 echo " sops not found"
4242 exit 1
4343fi
@@ -46,13 +46,13 @@ set +x
4646
4747sops_yaml=$( sops -d " $sops_file " )
4848
49- if ! command -v yq & > /dev/null; then
49+ if ! command -v yq & > /dev/null; then
5050 echo " yq not found"
5151 exit 1
5252fi
5353
54- porkbun_api_key=$( yq -r ' .porkbun_api_key' <<< " $sops_yaml" )
55- porkbun_secret_key=$( yq -r ' .porkbun_secret_key' <<< " $sops_yaml" )
54+ porkbun_api_key=$( yq -r ' .porkbun_api_key' <<< " $sops_yaml" )
55+ porkbun_secret_key=$( yq -r ' .porkbun_secret_key' <<< " $sops_yaml" )
5656
5757if [ -z " $porkbun_api_key " ]; then
5858 echo " porkbun_api_key not found"
@@ -64,7 +64,7 @@ if [ -z "$porkbun_secret_key" ]; then
6464 exit 1
6565fi
6666
67- set -x
67+ set -Eeuxo pipefail # https://vaneyckt.io/posts/safer_bash_scripts_with_set_euxo_pipefail
6868
6969# Retrieve DNS Records by Domain
7070# URI Endpoint: https://api.porkbun.com/api/json/v3/dns/retrieve/DOMAIN
@@ -119,21 +119,21 @@ for domain in $domains; do
119119 retrieve_response=$( curl -X POST " https://api.porkbun.com/api/json/v3/dns/retrieve/$domain " \
120120 -H " Content-Type: application/json" \
121121 -d " {\" secretapikey\" :\" $porkbun_secret_key \" ,\" apikey\" :\" $porkbun_api_key \" }" )
122- echo " retrieve_response:\n$( jq . <<< " $retrieve_response" ) "
123- jq . <<< " $retrieve_response" >> " $run_dir /$run_id .$inner_run_id .retrieve.$domain .json"
122+ echo " retrieve_response:\n$( jq . <<< " $retrieve_response" ) "
123+ jq . <<< " $retrieve_response" >> " $run_dir /$run_id .$inner_run_id .retrieve.$domain .json"
124124 sleep 2
125125done
126126for domain in $domains ; do
127127 echo " domain: $domain "
128128 for type in " ${types[@]} " ; do
129- echo " domain: $domain "
130- echo " type: $type "
129+ echo " domain: $domain "
130+ echo " type: $type "
131131 inner_run_id=$( date +%s)
132132 delete_response=$( curl -X POST " https://api.porkbun.com/api/json/v3/dns/deleteByNameType/$domain /$type " \
133133 -H " Content-Type: application/json" \
134134 -d " {\" secretapikey\" :\" $porkbun_secret_key \" ,\" apikey\" :\" $porkbun_api_key \" }" )
135- echo " delete_response:\n$( jq . <<< " $delete_response" ) "
136- jq . <<< " $delete_response" >> " $run_dir /$run_id .$inner_run_id .delete.$domain .$type .json"
135+ echo " delete_response:\n$( jq . <<< " $delete_response" ) "
136+ jq . <<< " $delete_response" >> " $run_dir /$run_id .$inner_run_id .delete.$domain .$type .json"
137137 sleep 2
138138 done
139139
@@ -148,8 +148,8 @@ for domain in $domains; do
148148 delete_response=$( curl -X POST " https://api.porkbun.com/api/json/v3/dns/deleteByNameType/$domain /$type /$subdomain " \
149149 -H " Content-Type: application/json" \
150150 -d " {\" secretapikey\" :\" $porkbun_secret_key \" ,\" apikey\" :\" $porkbun_api_key \" }" )
151- echo " delete_response:\n$( jq . <<< " $delete_response" ) "
152- jq . <<< " $delete_response" >> " $run_dir /$run_id .$inner_run_id .delete.$domain .$type .$subdomain .json"
151+ echo " delete_response:\n$( jq . <<< " $delete_response" ) "
152+ jq . <<< " $delete_response" >> " $run_dir /$run_id .$inner_run_id .delete.$domain .$type .$subdomain .json"
153153 sleep 2
154154 done
155155 sleep 2
0 commit comments