Function to add CNAME entry to zone

This commit is contained in:
Kirby 2020-04-07 12:08:52 +02:00
parent 93ee76e130
commit 93b83f08d0

View File

@ -1,18 +1,27 @@
#!/usr/bin/python3
import requests
import argparse
import json
import ovh
import pycurl
import argparse
import requests
try:
input = raw_input
except NameError:
pass
parser = argparse.ArgumentParser(description='Process arguments')
parser.add_argument('domain', metavar='method', type=str, help='Function to use')
parser.add_argument('--method', metavar='fr', type=str, help='domain to request from')
def addCNAME(client,domain,fr,to):
result = client.post(base_url + "/record",fieldType="CNAME",subDomain=fr,target=to,ttl=900)
print(json.dumps(result,indent=4))
result = client.post(base_url+ "/refresh")
print(json.dumps(result,indent=4))
parser = argparse.ArgumentParser(description="Process arguments")
parser.add_argument("domain", metavar="domain", type=str, help="Domain to request")
parser.add_argument("--method", metavar="type", type=str, help="Function to use")
parser.add_argument("--src", metavar="src", type=str, help="Source subdomain")
parser.add_argument("--dest", metavar="dst", type=str, help="Dest IP or domain")
args = parser.parse_args()
# Instantiate. Visit https://api.ovh.com/createToken/?GET=/me
@ -20,7 +29,11 @@ args = parser.parse_args()
client = ovh.Client()
# Grab bill list
zone = client.get('/domain/zone/' + args.domain + '/record')
for id in zone:
entry = client.get('/domain/zone/' + args.domain + '/record/'+str(id))
base_url = "/domain/zone/" + args.domain
zone = client.get(base_url + "/record")
if args.method == "list":
for id in zone:
entry = client.get(base_url + "/record/"+str(id))
print(entry)
elif args.method == "addCNAME":
addCNAME(client,args.domain,args.src,args.dest)