Verilator Nightly #5
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Verilator Nightly | |
on: | |
workflow_call: | |
workflow_dispatch: | |
schedule: | |
# cron format "minutes hours day-of-month month day-of-week" | |
# 5:30 PM Pacific monday-friday | |
- cron: '30 0 * * 2-6' | |
jobs: | |
smoke_test: | |
name: Smoke Test | |
runs-on: e2-highcpu-32 | |
timeout-minutes: 2000 | |
env: | |
VERILATOR_VERSION: v5.006 | |
PKG_CONFIG_PATH: /opt/verilator/share/pkgconfig | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v3 | |
with: | |
submodules: 'true' | |
- name: Install verilator | |
run: | | |
if [ -d "/opt/verilator" ]; then | |
# The GCP runners already have verilator installed | |
exit | |
fi | |
sudo apt-get install flex bison libfl2 libfl-dev help2man | |
cd /tmp/ | |
git clone -b "${VERILATOR_VERSION}" https://github.com/verilator/verilator | |
cd verilator | |
autoconf | |
./configure --prefix=/opt/verilator | |
make -j32 | |
sudo make install | |
- name: Install nextest | |
run: | | |
cargo install cargo-nextest --locked | |
- name: Setup verilator path | |
run: | | |
echo /opt/verilator/bin >> $GITHUB_PATH | |
- name: Run all tests inside verilator (will take hours) | |
run: | | |
cargo nextest run --no-fail-fast --features=verilator,itrng --release |