lowRISC / opentitan

OpenTitan: Open source silicon root of trust
https://www.opentitan.org
Apache License 2.0
2.6k stars 783 forks source link

Add some private CI when returning code to github #10325

Open sha-ron opened 2 years ago

sha-ron commented 2 years ago

to check it doesn't break the foundry database.

sriyerg commented 2 years ago

I assume you are talking about CI for the foundry repo?

This is now setup. Any time someone creates a PR in the foundry repo, kokoro will trigger a presubmit check. You can see an existing PR for details. It runs the following simulation set:

util/dvsim/dvsim.py hw/foundry/top_earlgrey/dv/partner_top_earlgrey_sim_cfgs.hjson -i smoke --fixed-seed 1

kokoro voting (which will gate the PR from being submitted if there are failures) is currently disabled, since ALL tests in ALL setups added to partner_top_earlgrey_sim_cfgs.hjson are failing. I will send you the link offline. They all need to be debugged and fixed so that we can turn on the voting soon.

sha-ron commented 2 years ago

I meant for CI for github that will check that a new code added to github doesn't break the foundry database. For example, yesterday we spent a day debugging issue #10366 which is an open source addition that broke the foundry database.

sriyerg commented 2 years ago

There are 3 things - presubmit (which is what I talked about in the previous comment), CI (which will run foundry DV anytime the open source or closed source repos are updated) and the nightly.

The CI for the foundry will not gate the open source, but it will give you early warning that something changed in open source that needs to be fixed in the closed source. I don't see a way to actually gate the open source repo if it breaks foundry repo - open source repo will need to remain oblivious to external repos.

Pre-submit and the CI will run the same smoke suite, which is currently failing. Once we have the smoke suite fully passing, we can turn on the foundry CI.