Skip to content
This repository was archived by the owner on Nov 22, 2024. It is now read-only.

Commit c7658a3

Browse files
committed
lint found minor stuff, fixed longstanding _parts list size
1 parent 1ba1ca5 commit c7658a3

File tree

8 files changed

+201
-162
lines changed

8 files changed

+201
-162
lines changed

CloudFlare/api_decode_from_openapi.py

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ def do_path(cmd, values):
1717
if cmd[0] != '/':
1818
cmd = '/' + cmd # make sure there's a leading /
1919

20-
cmd = match_identifier.sub(':id', cmd)
20+
cmd = match_identifier.sub(':id', cmd)
2121
if cmd[-4:] == '/:id':
2222
cmd = cmd[:-4]
2323
if cmd[-4:] == '/:id':
@@ -63,17 +63,29 @@ def api_decode_from_openapi(content):
6363
try:
6464
j = json.loads(content)
6565
except json.decoder.JSONDecodeError as e:
66-
raise SyntaxError('OpenAPI json decode failed: %s' % (e))
66+
raise SyntaxError('OpenAPI json decode failed: %s' % (e)) from None
6767

6868
try:
6969
components = j['components']
7070
info = j['info']
7171
cloudflare_version = info['version']
7272
openapi_version = j['openapi']
7373
paths = j['paths']
74-
servers = ['servers']
75-
except Exception as e:
76-
raise SyntaxError('OpenAPI json missing standard OpenAPI values: %s' % (e))
74+
servers = j['servers']
75+
except KeyError as e:
76+
raise SyntaxError('OpenAPI json missing standard OpenAPI values: %s' % (e)) from None
77+
78+
if len(components) == 0:
79+
raise SyntaxError('OpenAPI json components missing values')
80+
81+
cloudflare_url = None
82+
for server in servers:
83+
try:
84+
cloudflare_url = server['url']
85+
except KeyError as e:
86+
pass
87+
if not cloudflare_url:
88+
raise SyntaxError('OpenAPI json servers/server missing url value')
7789

7890
all_cmds = []
7991
for path in paths:
@@ -82,4 +94,4 @@ def api_decode_from_openapi(content):
8294
continue
8395
all_cmds += do_path(path, paths[path])
8496

85-
return sorted(all_cmds, key=lambda v: v['cmd']), openapi_version, cloudflare_version
97+
return sorted(all_cmds, key=lambda v: v['cmd']), openapi_version, cloudflare_version, cloudflare_url

CloudFlare/api_v4.py

Lines changed: 91 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@ def api_v4(self):
1212

1313
# The API commands for /radar/
1414
radar(self)
15+
radar_as112(self)
16+
radar_attacks(self)
17+
radar_bgp(self)
18+
radar_email(self)
19+
radar_http(self)
1520

1621
# The API commands for /zones/
1722
zones(self)
@@ -930,6 +935,68 @@ def radar(self):
930935
self.add('AUTH', 'radar/annotations/outages')
931936
self.add('AUTH', 'radar/annotations/outages/locations')
932937

938+
self.add('AUTH', 'radar/datasets')
939+
self.add('AUTH', 'radar/datasets/download')
940+
941+
self.add('VOID', 'radar/dns')
942+
self.add('VOID', 'radar/dns/top')
943+
self.add('AUTH', 'radar/dns/top/ases')
944+
self.add('AUTH', 'radar/dns/top/locations')
945+
946+
self.add('VOID', 'radar/entities')
947+
self.add('AUTH', 'radar/entities/asns')
948+
self.add('AUTH', 'radar/entities/asns', 'rel')
949+
self.add('AUTH', 'radar/entities/asns/ip')
950+
self.add('AUTH', 'radar/entities/ip')
951+
self.add('AUTH', 'radar/entities/locations')
952+
953+
self.add('VOID', 'radar/netflows')
954+
self.add('AUTH', 'radar/netflows/timeseries')
955+
self.add('VOID', 'radar/netflows/top')
956+
self.add('AUTH', 'radar/netflows/top/ases')
957+
self.add('AUTH', 'radar/netflows/top/locations')
958+
959+
self.add('VOID', 'radar/performance')
960+
self.add('VOID', 'radar/performance/iqi')
961+
self.add('AUTH', 'radar/performance/iqi/summary')
962+
self.add('AUTH', 'radar/performance/iqi/timeseries_groups')
963+
964+
self.add('VOID', 'radar/quality')
965+
self.add('VOID', 'radar/quality/iqi')
966+
self.add('AUTH', 'radar/quality/iqi/summary')
967+
self.add('AUTH', 'radar/quality/iqi/timeseries_groups')
968+
self.add('VOID', 'radar/quality/speed')
969+
self.add('AUTH', 'radar/quality/speed/histogram')
970+
self.add('AUTH', 'radar/quality/speed/summary')
971+
self.add('VOID', 'radar/quality/speed/top')
972+
self.add('AUTH', 'radar/quality/speed/top/ases')
973+
self.add('AUTH', 'radar/quality/speed/top/locations')
974+
975+
self.add('VOID', 'radar/ranking')
976+
self.add('AUTH', 'radar/ranking/domain')
977+
self.add('AUTH', 'radar/ranking/timeseries')
978+
self.add('AUTH', 'radar/ranking/timeseries_groups')
979+
self.add('AUTH', 'radar/ranking/top')
980+
981+
self.add('VOID', 'radar/search')
982+
self.add('AUTH', 'radar/search/global')
983+
984+
self.add('AUTH', 'radar/specialevents')
985+
986+
self.add('VOID', 'radar/verified_bots')
987+
self.add('VOID', 'radar/verified_bots/top')
988+
self.add('AUTH', 'radar/verified_bots/top/bots')
989+
self.add('AUTH', 'radar/verified_bots/top/categories')
990+
991+
self.add('VOID', 'radar/connection_tampering')
992+
self.add('AUTH', 'radar/connection_tampering/summary')
993+
self.add('AUTH', 'radar/connection_tampering/timeseries_groups')
994+
self.add('AUTH', 'radar/traffic_anomalies')
995+
self.add('AUTH', 'radar/traffic_anomalies/locations')
996+
997+
def radar_as112(self):
998+
""" radar_as112 """
999+
9331000
self.add('VOID', 'radar/as112')
9341001
self.add('VOID', 'radar/as112/summary')
9351002
self.add('AUTH', 'radar/as112/summary/dnssec')
@@ -961,6 +1028,9 @@ def radar(self):
9611028
self.add('AUTH', 'radar/as112/top/locations/edns')
9621029
self.add('AUTH', 'radar/as112/top/locations/ip_version')
9631030

1031+
def radar_attacks(self):
1032+
""" radar_attacks """
1033+
9641034
self.add('VOID', 'radar/attacks')
9651035
self.add('VOID', 'radar/attacks/layer3')
9661036
self.add('AUTH', 'radar/attacks/layer3/summary')
@@ -1012,6 +1082,9 @@ def radar(self):
10121082
self.add('AUTH', 'radar/attacks/layer7/top/locations/target')
10131083
self.add('AUTH', 'radar/attacks/layer7/top/vertical')
10141084

1085+
def radar_bgp(self):
1086+
""" radar_bgp """
1087+
10151088
self.add('VOID', 'radar/bgp')
10161089
self.add('VOID', 'radar/bgp/leaks')
10171090
self.add('AUTH', 'radar/bgp/leaks/events')
@@ -1027,13 +1100,8 @@ def radar(self):
10271100
self.add('AUTH', 'radar/bgp/routes/pfx2as')
10281101
self.add('AUTH', 'radar/bgp/routes/stats')
10291102

1030-
self.add('AUTH', 'radar/datasets')
1031-
self.add('AUTH', 'radar/datasets/download')
1032-
1033-
self.add('VOID', 'radar/dns')
1034-
self.add('VOID', 'radar/dns/top')
1035-
self.add('AUTH', 'radar/dns/top/ases')
1036-
self.add('AUTH', 'radar/dns/top/locations')
1103+
def radar_email(self):
1104+
""" radar_email """
10371105

10381106
self.add('VOID', 'radar/email')
10391107
self.add('VOID', 'radar/email/security')
@@ -1079,14 +1147,11 @@ def radar(self):
10791147
self.add('AUTH', 'radar/email/security/top/locations/spam')
10801148
self.add('AUTH', 'radar/email/security/top/locations/spf')
10811149

1082-
self.add('VOID', 'radar/entities')
1083-
self.add('AUTH', 'radar/entities/asns')
1084-
self.add('AUTH', 'radar/entities/asns', 'rel')
1085-
self.add('AUTH', 'radar/entities/asns/ip')
1086-
self.add('AUTH', 'radar/entities/ip')
1087-
self.add('AUTH', 'radar/entities/locations')
1150+
def radar_http(self):
1151+
""" radar_http """
10881152

10891153
self.add('VOID', 'radar/http')
1154+
10901155
self.add('VOID', 'radar/http/summary')
10911156
self.add('AUTH', 'radar/http/summary/bot_class')
10921157
self.add('AUTH', 'radar/http/summary/device_type')
@@ -1095,6 +1160,7 @@ def radar(self):
10951160
self.add('AUTH', 'radar/http/summary/ip_version')
10961161
self.add('AUTH', 'radar/http/summary/os')
10971162
self.add('AUTH', 'radar/http/summary/tls_version')
1163+
10981164
self.add('VOID', 'radar/http/timeseries')
10991165
self.add('AUTH', 'radar/http/timeseries/bot_class')
11001166
self.add('AUTH', 'radar/http/timeseries/browser')
@@ -1105,6 +1171,18 @@ def radar(self):
11051171
self.add('AUTH', 'radar/http/timeseries/ip_version')
11061172
self.add('AUTH', 'radar/http/timeseries/os')
11071173
self.add('AUTH', 'radar/http/timeseries/tls_version')
1174+
1175+
self.add('VOID', 'radar/http/timeseries_groups')
1176+
self.add('AUTH', 'radar/http/timeseries_groups/bot_class')
1177+
self.add('AUTH', 'radar/http/timeseries_groups/browser')
1178+
self.add('AUTH', 'radar/http/timeseries_groups/browser_family')
1179+
self.add('AUTH', 'radar/http/timeseries_groups/device_type')
1180+
self.add('AUTH', 'radar/http/timeseries_groups/http_protocol')
1181+
self.add('AUTH', 'radar/http/timeseries_groups/http_version')
1182+
self.add('AUTH', 'radar/http/timeseries_groups/ip_version')
1183+
self.add('AUTH', 'radar/http/timeseries_groups/os')
1184+
self.add('AUTH', 'radar/http/timeseries_groups/tls_version')
1185+
11081186
self.add('VOID', 'radar/http/top')
11091187
self.add('AUTH', 'radar/http/top/ases')
11101188
self.add('AUTH', 'radar/http/top/ases/bot_class')
@@ -1125,62 +1203,6 @@ def radar(self):
11251203
self.add('AUTH', 'radar/http/top/locations/os')
11261204
self.add('AUTH', 'radar/http/top/locations/tls_version')
11271205

1128-
self.add('VOID', 'radar/netflows')
1129-
self.add('AUTH', 'radar/netflows/timeseries')
1130-
self.add('VOID', 'radar/netflows/top')
1131-
self.add('AUTH', 'radar/netflows/top/ases')
1132-
self.add('AUTH', 'radar/netflows/top/locations')
1133-
1134-
self.add('VOID', 'radar/performance')
1135-
self.add('VOID', 'radar/performance/iqi')
1136-
self.add('AUTH', 'radar/performance/iqi/summary')
1137-
self.add('AUTH', 'radar/performance/iqi/timeseries_groups')
1138-
1139-
self.add('VOID', 'radar/quality')
1140-
self.add('VOID', 'radar/quality/iqi')
1141-
self.add('AUTH', 'radar/quality/iqi/summary')
1142-
self.add('AUTH', 'radar/quality/iqi/timeseries_groups')
1143-
self.add('VOID', 'radar/quality/speed')
1144-
self.add('AUTH', 'radar/quality/speed/histogram')
1145-
self.add('AUTH', 'radar/quality/speed/summary')
1146-
self.add('VOID', 'radar/quality/speed/top')
1147-
self.add('AUTH', 'radar/quality/speed/top/ases')
1148-
self.add('AUTH', 'radar/quality/speed/top/locations')
1149-
1150-
self.add('VOID', 'radar/ranking')
1151-
self.add('AUTH', 'radar/ranking/domain')
1152-
self.add('AUTH', 'radar/ranking/timeseries')
1153-
self.add('AUTH', 'radar/ranking/timeseries_groups')
1154-
self.add('AUTH', 'radar/ranking/top')
1155-
1156-
self.add('VOID', 'radar/search')
1157-
self.add('AUTH', 'radar/search/global')
1158-
1159-
self.add('AUTH', 'radar/specialevents')
1160-
1161-
self.add('VOID', 'radar/http/timeseries_groups')
1162-
self.add('AUTH', 'radar/http/timeseries_groups/bot_class')
1163-
self.add('AUTH', 'radar/http/timeseries_groups/browser')
1164-
self.add('AUTH', 'radar/http/timeseries_groups/browser_family')
1165-
self.add('AUTH', 'radar/http/timeseries_groups/device_type')
1166-
self.add('AUTH', 'radar/http/timeseries_groups/http_protocol')
1167-
self.add('AUTH', 'radar/http/timeseries_groups/http_version')
1168-
self.add('AUTH', 'radar/http/timeseries_groups/ip_version')
1169-
self.add('AUTH', 'radar/http/timeseries_groups/os')
1170-
self.add('AUTH', 'radar/http/timeseries_groups/tls_version')
1171-
1172-
self.add('VOID', 'radar/verified_bots')
1173-
self.add('VOID', 'radar/verified_bots/top')
1174-
self.add('AUTH', 'radar/verified_bots/top/bots')
1175-
self.add('AUTH', 'radar/verified_bots/top/categories')
1176-
1177-
self.add('VOID', 'radar/connection_tampering')
1178-
self.add('AUTH', 'radar/connection_tampering/summary')
1179-
self.add('AUTH', 'radar/connection_tampering/timeseries_groups')
1180-
self.add('AUTH', 'radar/traffic_anomalies')
1181-
self.add('AUTH', 'radar/traffic_anomalies/locations')
1182-
1183-
11841206
def from_developers(self):
11851207
""" from_developers """
11861208
self.add('VOID', 'accounts', 'analytics_engine')

0 commit comments

Comments
 (0)