OpenRAM/.github/workflows/ci.yml

70 lines
2.2 KiB
YAML

name: ci
on: [push]
jobs:
coverage_cleanup:
runs-on: self-hosted
steps:
- name: Coverage cleanup
run: |
echo "Cleaning up previous run"
echo "github.workspace = ${{ github.workspace }}"
rm -rf "${{ github.workspace }}/scn4me_subm_temp"
rm -rf "${{ github.workspace }}/freepdk45_temp"
python3-coverage erase
checkout_code:
needs: [coverage_cleanup]
runs-on: self-hosted
steps:
- name: Checkout code
uses: actions/checkout@v1
scn4me_subm:
needs: [checkout_code]
runs-on: self-hosted
steps:
- name: SCMOS test
run: |
. /home/github-runner/setup-paths.sh
export OPENRAM_HOME="`pwd`/compiler"
export OPENRAM_TECH="`pwd`/technology:/software/PDKs/skywater-tech"
export OPENRAM_TMP="${{ github.workspace }}/scn4me_subm_temp"
python3-coverage run -p $OPENRAM_HOME/tests/regress.py -j 16 -t scn4m_subm
- name: Archive
if: ${{ failure() }}
uses: actions/upload-artifact@v2
with:
name: scn4me_subm Archives
path: ${{ github.workspace }}/scn4me_subm_temp/*/
freepdk45:
needs: [checkout_code]
runs-on: self-hosted
steps:
- name: FreePDK45 test
run: |
. /home/github-runner/setup-paths.sh
export OPENRAM_HOME="`pwd`/compiler"
export OPENRAM_TECH="`pwd`/technology:/software/PDKs/skywater-tech"
export OPENRAM_TMP="${{ github.workspace }}/freepdk45_temp"
python3-coverage run -p $OPENRAM_HOME/tests/regress.py -j 16 -t freepdk45
- name: Archive
if: ${{ failure() }}
uses: actions/upload-artifact@v2
with:
name: FreePDK45 Archives
path: ${{ github.workspace }}/freepdk45_temp/*/
coverage_stats:
if: ${{ always() }}
needs: [scn4me_subm, freepdk45]
runs-on: self-hosted
steps:
- name: Coverage stats
run: |
python3-coverage combine
python3-coverage report
python3-coverage html -d ${{ github.workspace }}/coverage_html
- name: Archive coverage
uses: actions/upload-artifact@v2
with:
name: code-coverage-report
path: ${{ github.workspace }}/coverage_html/