-
Notifications
You must be signed in to change notification settings - Fork 3
/
generate_shields.py
34 lines (29 loc) · 1014 Bytes
/
generate_shields.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
from pathlib import Path
def main():
print("Generating Shields")
labels_path = Path() / "labels.yml"
if labels_path.exists():
with labels_path.open() as f:
lines = f.readlines()
shields = []
names = []
i = 1
while i < len(lines):
l = lines[i]
if " - name" in l:
name = l.split("name:")[-1].strip().replace('"', "")
color = lines[i + 1].split("color:")[-1].strip().replace('"', "")
shields.append(
f"https://img.shields.io/badge/{name}-{color}.svg".replace(
" ", "%20"
)
)
names.append(name)
i += 2
else:
i += 1
shields_lines = sorted(list(f"[{n}]: {s}" for n, s in zip(names, shields)))
with open(Path() / "shields.txt", "w") as f:
f.write("\n".join(shields_lines))
if __name__ == "__main__":
main()