added working version of scripts
This commit is contained in:
Executable
+47
@@ -0,0 +1,47 @@
|
||||
#! /bin/bash
|
||||
SCRIPT="${BASH_SOURCE[0]}"
|
||||
SCRIPT_DIR=${SCRIPT%/*}
|
||||
|
||||
DIGITALOCEAN_DOMAIN=$1
|
||||
IP=$2
|
||||
|
||||
DIGITALOCEAN_TOKEN=`cat $SCRIPT_DIR/DO_TOKEN`
|
||||
|
||||
get_a_record_ids() {
|
||||
curl -X GET \
|
||||
-H "Content-Type: application/json" \
|
||||
-H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
|
||||
"https://api.digitalocean.com/v2/domains/$DIGITALOCEAN_DOMAIN/records" 2> /dev/null | jq '.domain_records | map(select(.type == "A" and .name == "@")) | map(.id) | .[]'
|
||||
}
|
||||
|
||||
add_a_record() {
|
||||
echo adding new A record for $DIGITALOCEAN_DOMAIN with value : $IP
|
||||
curl -X POST \
|
||||
-H "Content-Type: application/json" \
|
||||
-H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
|
||||
-d "{\"type\":\"A\" \
|
||||
,\"name\":\"@\" \
|
||||
,\"data\":\"$IP\" \
|
||||
,\"priority\":null \
|
||||
,\"port\":null \
|
||||
,\"ttl\":1800 \
|
||||
,\"weight\":null \
|
||||
,\"flags\":null \
|
||||
,\"tag\":null \
|
||||
}" \
|
||||
"https://api.digitalocean.com/v2/domains/$DIGITALOCEAN_DOMAIN/records" > /dev/null 2>&1
|
||||
}
|
||||
|
||||
delete_record_by_id() {
|
||||
echo deleting existing A record for $DIGITALOCEAN_DOMAIN
|
||||
curl -X DELETE \
|
||||
-H "Content-Type: application/json" \
|
||||
-H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
|
||||
"https://api.digitalocean.com/v2/domains/$DIGITALOCEAN_DOMAIN/records/$1" > /dev/null 2>&1
|
||||
}
|
||||
|
||||
for s in `get_a_record_ids`; do
|
||||
delete_record_by_id $s
|
||||
done
|
||||
|
||||
add_a_record
|
||||
Reference in New Issue
Block a user