CI: Only build the OpenLane package if building Open-PDKs succeeded#277
CI: Only build the OpenLane package if building Open-PDKs succeeded#277
Conversation
|
LGTM! Thanks for pinning this down. Maybe we could also delete version of open_pdks older than |
Are you sure these old packages aren't used by anyone? Btw. perhaps we should add a constraint to the OpenLane package so that open_pdks has to be newer than that? It can be an optional one, i.e., not making any open_pdks required for running OpenLane. Also it'd be best to have this compatibility set more precisely since now the latest OpenLane allows using any openroad and open_pdks versions but unfortunately I don't know enough about these tools to establish it. |
Yes, I was thinking about the same thing, maybe it could leverage https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#run-constrained, like the open_pdks package does with |
Something I was thinking was to |
This change will ensure a problem when testing OpenLane in the same CI that:
open_pdkswith that new magic versionwon't happen again since debugging this isn't trivial.
It turned out all of the open_pdks packages newer than 1.0.286 have a strict magic version requirement. The just-built magic package will be always preferred in CI so when building
open_pdksfail and the CI built a new version of the magic package then this old1.0.286Open-PDKs package will be used which doesn't work well with the other latest packages.Such a run happened in https://github.com/hdl/conda-eda/actions/runs/3828789250/jobs/6551196431#step:7:3305