Skip to content

Verilator Nightly

Verilator Nightly #131

name: Verilator Nightly
on:
workflow_call:
workflow_dispatch:
schedule:
# 2:11 AM PST tuesday-saturday
- cron: '11 10 * * 2-6'
jobs:
smoke_test:
name: Smoke Test
runs-on: e2-standard-2
timeout-minutes: 720
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 -j6
sudo make install
- name: Setup verilator path
run: |
echo /opt/verilator/bin >> $GITHUB_PATH
- name: Run smoke test inside verilator (will take hours)
run: |
export CALIPTRA_VERILATOR_JOBS=2
cargo test -j 1 -p caliptra-test smoke_test --features=verilator --release -- --nocapture