add weekly coverage build

This commit is contained in:
Zachary Snow 2024-06-16 15:02:30 -04:00
parent d3dbaf0684
commit 636130f8b4
1 changed files with 14 additions and 5 deletions

View File

@ -9,6 +9,8 @@ on:
release: release:
types: types:
- created - created
schedule:
- cron: '0 0 * * 0'
jobs: jobs:
build: build:
@ -53,7 +55,7 @@ jobs:
- name: Install Dependencies (macOS) - name: Install Dependencies (macOS)
if: runner.os == 'macOS' if: runner.os == 'macOS'
run: | run: |
brew install bison autoconf brew install bison
echo "$(brew --prefix bison)/bin" >> $GITHUB_PATH echo "$(brew --prefix bison)/bin" >> $GITHUB_PATH
- name: Install Dependencies (Linux) - name: Install Dependencies (Linux)
if: runner.os == 'Linux' if: runner.os == 'Linux'
@ -62,14 +64,14 @@ jobs:
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: ~/.local path: ~/.local
key: ${{ runner.OS }}-${{ env.IVERILOG_REF }} key: ${{ runner.os }}-${{ env.IVERILOG_REF }}
restore-keys: ${{ runner.OS }}-${{ env.IVERILOG_REF }} restore-keys: ${{ runner.os }}-${{ env.IVERILOG_REF }}
- name: Install iverilog - name: Install iverilog
run: | run: |
if [ ! -e "$HOME/.local/bin/iverilog" ]; then if [ ! -e "$HOME/.local/bin/iverilog" ]; then
git clone https://github.com/steveicarus/iverilog.git git clone https://github.com/steveicarus/iverilog.git
cd iverilog cd iverilog
git checkout ${{ env.IVERILOG_REF }} git checkout $IVERILOG_REF
autoconf autoconf
./configure --prefix=$HOME/.local ./configure --prefix=$HOME/.local
make -j2 make -j2
@ -87,7 +89,14 @@ jobs:
- name: Test - name: Test
run: | run: |
chmod +x bin/sv2v chmod +x bin/sv2v
make test # rebuild and upload a code coverage report on scheduled linux runs
make ${{ github.event_name == 'schedule' && runner.os == 'Linux' && 'coverage' || 'test' }}
- name: Upload Coverage
uses: actions/upload-artifact@v4
if: hashFiles('.hpc/*.html') != ''
with:
name: coverage
path: .hpc/*.html
release: release:
permissions: permissions: