fix: missing commit_id.json in openlane2 projects

This commit is contained in:
Uri Shaked
2023-09-06 19:36:15 +03:00
parent fd29f74a1a
commit af58bde8be
+18 -9
View File
@@ -400,17 +400,26 @@ class Project():
tt_version = self.get_tt_tools_version() tt_version = self.get_tt_tools_version()
workflow_url = self.get_workflow_url() workflow_url = self.get_workflow_url()
# requires PDK, PDK_ROOT, OPENLANE_ROOT & OPENLANE_IMAGE_NAME to be set in local environment if self.args.openlane2:
harden_cmd = 'docker run --rm -v $OPENLANE_ROOT:/openlane -v $PDK_ROOT:$PDK_ROOT -v $(pwd):/work -e PDK=$PDK -e PDK_ROOT=$PDK_ROOT -u $(id -u $USER):$(id -g $USER) $OPENLANE_IMAGE_NAME /bin/bash -c "./flow.tcl -overwrite -design /work/src -run_path /work/runs -tag wokwi"' if not os.path.exists('runs/wokwi'):
logging.debug(harden_cmd) print("OpenLane 2 harden not supported yet, please run OpenLane 2 manually")
env = os.environ.copy() exit(1)
p = subprocess.run(harden_cmd, shell=True, env=env) print("Writing commit information on top of the existing OpenLane 2 run (runs/wokwi)")
if p.returncode != 0: else:
logging.error("harden failed") # requires PDK, PDK_ROOT, OPENLANE_ROOT & OPENLANE_IMAGE_NAME to be set in local environment
exit(1) harden_cmd = 'docker run --rm -v $OPENLANE_ROOT:/openlane -v $PDK_ROOT:$PDK_ROOT -v $(pwd):/work -e PDK=$PDK -e PDK_ROOT=$PDK_ROOT -u $(id -u $USER):$(id -g $USER) $OPENLANE_IMAGE_NAME /bin/bash -c "./flow.tcl -overwrite -design /work/src -run_path /work/runs -tag wokwi"'
logging.debug(harden_cmd)
env = os.environ.copy()
p = subprocess.run(harden_cmd, shell=True, env=env)
if p.returncode != 0:
logging.error("harden failed")
exit(1)
# Write commit information # Write commit information
with open(os.path.join(self.local_dir, 'runs/wokwi/results/final/commit_id.json'), 'w') as f: commit_id_json_path = 'runs/wokwi/results/final/commit_id.json'
if self.args.openlane2:
commit_id_json_path = 'runs/wokwi/final/commit_id.json'
with open(os.path.join(self.local_dir, commit_id_json_path), 'w') as f:
json.dump({ json.dump({
"app": f"Tiny Tapeout {tt_version}", "app": f"Tiny Tapeout {tt_version}",
"repo": repo, "repo": repo,