MCPcopy Create free account
hub / github.com/adobe/Marinus / main

Function main

python3_cron_scripts/marinus_dns.py:70–143  ·  view source on GitHub ↗

Begin Main...

(logger=None)

Source from the content-addressed store, hash-verified

68
69
70def main(logger=None):
71 """
72 Begin Main...
73 """
74 if logger is None:
75 logger = LoggingUtil.create_log(__name__)
76
77 now = datetime.now()
78 print("Starting: " + str(now))
79 logger.info("Starting...")
80
81 dns_types = {
82 "a": 1,
83 "ns": 2,
84 "cname": 5,
85 "soa": 6,
86 "ptr": 12,
87 "hinfo": 13,
88 "mx": 15,
89 "txt": 16,
90 "aaaa": 28,
91 "srv": 33,
92 "naptr": 35,
93 "ds": 43,
94 "rrsig": 46,
95 "dnskey": 48,
96 }
97
98 mongo_connector = MongoConnector.MongoConnector()
99 all_dns_collection = mongo_connector.get_all_dns_connection()
100 jobs_manager = JobsManager.JobsManager(mongo_connector, "marinus_dns")
101 jobs_manager.record_job_start()
102
103 dns_manager = DNSManager.DNSManager(mongo_connector)
104
105 zones = ZoneManager.get_distinct_zones(mongo_connector)
106
107 google_dns = GoogleDNS.GoogleDNS()
108
109 for zone in zones:
110 time.sleep(1)
111 for dtype, dnum in dns_types.items():
112 result = google_dns.fetch_DNS_records(zone, dnum)
113
114 if result == []:
115 logger.debug("No records found for " + zone)
116 else:
117 new_record = result[0]
118 new_record["status"] = "confirmed"
119 new_record["zone"] = zone
120 new_record["created"] = datetime.now()
121 logger.debug("Found " + dtype + " for: " + zone)
122 dns_manager.insert_record(new_record, "marinus")
123
124 logger.info("Starting SOA Search")
125
126 soa_searches = find_sub_zones(all_dns_collection)
127 for entry in soa_searches:

Callers 1

marinus_dns.pyFile · 0.70

Calls 9

record_job_startMethod · 0.95
fetch_DNS_recordsMethod · 0.95
insert_recordMethod · 0.95
record_job_completeMethod · 0.95
find_sub_zonesFunction · 0.85
create_logMethod · 0.80
get_distinct_zonesMethod · 0.80
get_fld_from_valueFunction · 0.70

Tested by

no test coverage detected