Files
kicad-ci/.scripts/post_panel.py

39 lines
1.3 KiB
Python

import json
import sys
import shutil
proj = sys.argv[1]
pcb = sys.argv[2]
dest_folder = '/'.join(proj.split('/')[:-1])
dest_name = proj.split('/')[-1].removesuffix(".kicad_pro")
src_name = pcb.removesuffix(".kicad_pcb")
src_proj = src_name + ".kicad_pro"
try:
shutil.copy(src_name + ".kicad_dru", dest_folder + "/" + dest_name + ".kicad_dru")
except Exception:
pass
json_file = open(src_proj)
json_str = json_file.read()
src = json.loads(json_str)
json_file = open(proj)
json_str = json_file.read()
dest = json.loads(json_str)
dest["board"]["design_settings"]["rule_severities"]["lib_footprint_issues"] = "ignore"
dest["board"]["design_settings"]["rule_severities"]["lib_footprint_mismatch"] = "ignore"
dest["board"]["design_settings"]["rule_severities"]["hole_near_hole"] = "ignore"
dest["board"]["design_settings"]["rule_severities"]["silk_overlap"] = "ignore"
dest["board"]["design_settings"]["rule_severities"]["silk_over_copper"] = "ignore"
# This one is just until kibot image is updated to 7.0.5
dest["board"]["design_settings"]["rule_severities"]["copper_sliver"] = "ignore"
dest["net_settings"]["classes"] = src["net_settings"]["classes"]
dest["net_settings"]["netclass_patterns"] = src["net_settings"]["netclass_patterns"]
with open(proj, mode="w") as json_file:
json.dump(dest, json_file, indent=2)