gh-actions: interchange: multiple jobs, one for each device

Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
This commit is contained in:
Alessandro Comodi 2021-03-24 11:11:29 +01:00
parent 1a774a0526
commit 9f28fa4e75
4 changed files with 17 additions and 8 deletions

View File

@ -19,7 +19,7 @@ popd
# Install capnproto java # Install capnproto java
git clone https://github.com/capnproto/capnproto-java.git git clone https://github.com/capnproto/capnproto-java.git
pushd capnproto-java pushd capnproto-java
make make -j`nproc`
sudo make install sudo make install
popd popd
@ -41,8 +41,8 @@ pushd $RAPIDWRIGHT_PATH
make update_jars make update_jars
popd popd
mkdir build mkdir build
pushd build pushd build
cmake .. -DARCH=fpga_interchange -DRAPIDWRIGHT_PATH=$RAPIDWRIGHT_PATH -DINTERCHANGE_SCHEMA_PATH=$INTERCHANGE_SCHEMA_PATH -DPYTHON_INTERCHANGE_PATH=$PYTHON_INTERCHANGE_PATH cmake .. -DARCH=fpga_interchange -DRAPIDWRIGHT_PATH=$RAPIDWRIGHT_PATH -DINTERCHANGE_SCHEMA_PATH=$INTERCHANGE_SCHEMA_PATH -DPYTHON_INTERCHANGE_PATH=$PYTHON_INTERCHANGE_PATH
make nextpnr-fpga_interchange -j`nproc`
popd popd

View File

@ -3,9 +3,11 @@ name: FPGA interchange CI tests
on: [push, pull_request] on: [push, pull_request]
jobs: jobs:
Run-Tests:
Run-tests:
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy:
matrix:
device: [xc7a35t, xc7a100t, xc7a200t, xc7z010]
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
@ -19,11 +21,14 @@ jobs:
sudo apt-get update sudo apt-get update
sudo apt-get install git make cmake libboost-all-dev python3-dev libeigen3-dev tcl-dev clang bison flex swig sudo apt-get install git make cmake libboost-all-dev python3-dev libeigen3-dev tcl-dev clang bison flex swig
- name: Execute build script - name: Execute build interchange script
run: stdbuf -i0 -o0 -e0 ./.github/ci/build_interchange.sh run: stdbuf -i0 -o0 -e0 ./.github/ci/build_interchange.sh
- name: Run tests - name: Run tests
env:
DEVICE: ${{ matrix.device }}
run: | run: |
cd build cd build
make all-fpga_interchange-archcheck-tests make chipdb-$DEVICE-bin-check-test-data
make all-fpga_interchange-tests -j`nproc` make chipdb-$DEVICE-bin-check
make all-$DEVICE-tests -j`nproc`

View File

@ -368,5 +368,8 @@ function(generate_chipdb)
) )
add_dependencies(all-${family}-archcheck-tests chipdb-${device}-bin-check-test-data chipdb-${device}-bin-check) add_dependencies(all-${family}-archcheck-tests chipdb-${device}-bin-check-test-data chipdb-${device}-bin-check)
# All tests targets for this device are added to this target
add_custom_target(all-${device}-tests)
endfunction() endfunction()

View File

@ -262,6 +262,7 @@ function(add_interchange_test)
add_custom_target(test-${family}-${name}-dcp DEPENDS ${dcp}) add_custom_target(test-${family}-${name}-dcp DEPENDS ${dcp})
add_dependencies(all-${family}-tests test-${family}-${name}-dcp) add_dependencies(all-${family}-tests test-${family}-${name}-dcp)
add_dependencies(all-${device}-tests test-${family}-${name}-dcp)
endfunction() endfunction()
function(add_interchange_group_test) function(add_interchange_group_test)