name: Regression tests on: [workflow_dispatch] env: installDir: ${{ github.workspace }}/coriolis-2.x/release/install jobs: Regression-Tests: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 with: submodules: true path: coriolis-2.x/src/coriolis - uses: actions/checkout@v3 with: repository: lip6/alliance path: coriolis-2.x/src/alliance - uses: actions/checkout@v3 with: repository: lip6/alliance-check-toolkit path: coriolis-2.x/src/alliance-check-toolkit #- uses: actions/checkout@v3 # with: # repository: YosysHQ/yosys # path: coriolis-2.x/src/yosys # ref: yosys-0.24 - name: Update APT cache run: sudo apt-get update - name: Install software dependencies run: > sudo apt-get install libboost-all-dev rapidjson-dev \ python-dev-is-python3 python3-doit python3-pip \ qtbase5-dev qtbase5-dev-tools libqt5svg5-dev libqwt-qt5-dev \ libeigen3-dev liblemon-dev \ autotools-dev automake \ libxt-dev libxpm-dev libmotif-dev \ tcl-dev libffi-dev cmake pip install meson yowasp-yosys - name: ccache uses: hendrikmuhs/ccache-action@v1.2 #- name: Build Yosys # run: | # export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" # cd ${{ github.workspace }}/coriolis-2.x/src/yosys # make ENABLE_PYOSYS=1 config-gcc # make ENABLE_PYOSYS=1 \ # PREFIX=${{ env.installDir }} \ # PYTHON_DESTDIR=${{ env.installDir }}/lib64/python3/dist-packages \ # LIBDIR=${{ env.installDir }}/lib64/yosys \ # DATDIR=${{ env.installDir }}/share/yosys \ # install # sudo ln -s ${{ env.installDir }}/bin/* /usr/bin/ #- name: Check Yosys share directory # run: ls -1 ${{ github.workspace }}/coriolis-2.x/release/install/share/yosys - name: Build Coriolis & Alliance run: | export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" cd ${{ github.workspace }}/coriolis-2.x/src/coriolis make -f Makefile.LIP6 install install_alliance - name: Check for binaries run: ls -1 ${{ github.workspace }}/coriolis-2.x/release/install/bin - name: Run the reference set of designs run: | export CORIOLIS_TOP=${{ github.workspace }}/coriolis-2.x/release/install cd ${{ github.workspace }}/coriolis-2.x/src/alliance-check-toolkit/benchs ../bin/crlenv.py --verbose ../bin/gopy.sh --github-runner # - name: Bundle installed tree # uses: actions/upload-artifact@v3 # with: # name: installed-tree # path: ${{ github.workspace }}/coriolis-2.x/release/install # retention-days: 1 - name: Archive test design set logs uses: actions/upload-artifact@v3 with: name: design-set-full-logs path: ${{ github.workspace }}/coriolis-2.x/src/alliance-check-toolkit/benchs/doit-gopy.log retention-days: 5 - name: Make the runner fail *after* the log has been saved. run: | if [ -f ${{ github.workspace }}/coriolis-2.x/src/alliance-check-toolkit/benchs/doit-gopy.failed ]; then exit 1 fi