gh-actions: better yosys caching based on version
Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
This commit is contained in:
parent
b5ba3ee9ee
commit
d0bc033ab8
4
.github/ci/build_interchange.sh
vendored
4
.github/ci/build_interchange.sh
vendored
@ -19,10 +19,10 @@ function build_capnp {
|
||||
|
||||
# Install latest Yosys
|
||||
function build_yosys {
|
||||
git clone https://github.com/YosysHQ/yosys.git
|
||||
DESTDIR=`pwd`/.yosys
|
||||
pushd yosys
|
||||
make -j`nproc`
|
||||
sudo make install
|
||||
sudo make install DESTDIR=$DESTDIR
|
||||
popd
|
||||
}
|
||||
|
||||
|
37
.github/workflows/interchange_ci.yml
vendored
37
.github/workflows/interchange_ci.yml
vendored
@ -21,11 +21,22 @@ jobs:
|
||||
- name: ccache
|
||||
uses: hendrikmuhs/ccache-action@v1
|
||||
|
||||
- name: Execute build yosys script
|
||||
- name: Get yosys
|
||||
run: git clone https://github.com/YosysHQ/yosys.git
|
||||
|
||||
- name: Cache yosys installation
|
||||
uses: actions/cache@v2
|
||||
id: cache-yosys
|
||||
with:
|
||||
path: .yosys
|
||||
key: cache-yosys-${{ hashFiles('**/yosys/.git/HEAD') }}
|
||||
|
||||
- name: Build yosys
|
||||
run: |
|
||||
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
|
||||
source ./.github/ci/build_interchange.sh
|
||||
build_yosys
|
||||
if: steps.cache-yosys.outputs.cache-hit != 'true'
|
||||
|
||||
Build-nextpnr:
|
||||
runs-on: ubuntu-latest
|
||||
@ -45,7 +56,7 @@ jobs:
|
||||
- name: ccache
|
||||
uses: hendrikmuhs/ccache-action@v1
|
||||
|
||||
- name: Execute build interchange script
|
||||
- name: Execute build nextpnr
|
||||
run: |
|
||||
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
|
||||
source ./.github/ci/build_interchange.sh
|
||||
@ -73,21 +84,39 @@ jobs:
|
||||
- name: ccache
|
||||
uses: hendrikmuhs/ccache-action@v1
|
||||
|
||||
- name: Get yosys
|
||||
run: git clone https://github.com/YosysHQ/yosys.git
|
||||
|
||||
- name: Cache yosys installation
|
||||
uses: actions/cache@v2
|
||||
id: cache-yosys
|
||||
with:
|
||||
path: .yosys
|
||||
key: cache-yosys-${{ hashFiles('**/yosys/.git/HEAD') }}
|
||||
|
||||
- name: Build yosys
|
||||
run: |
|
||||
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
|
||||
source ./.github/ci/build_interchange.sh
|
||||
build_yosys
|
||||
if: steps.cache-yosys.outputs.cache-hit != 'true'
|
||||
|
||||
- name: Execute build interchange script
|
||||
env:
|
||||
RAPIDWRIGHT_PATH: ${{ github.workspace }}/RapidWright
|
||||
INTERCHANGE_SCHEMA_PATH: ${{ github.workspace }}/3rdparty/fpga-interchange-schema/interchange
|
||||
PYTHON_INTERCHANGE_PATH: ${{ github.workspace }}/python-fpga-interchange
|
||||
PYTHON_INTERCHANGE_TAG: v0.0.4
|
||||
|
||||
run: |
|
||||
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
|
||||
source ./.github/ci/build_interchange.sh
|
||||
build_yosys && build_nextpnr && get_dependencies
|
||||
build_nextpnr && get_dependencies
|
||||
|
||||
- name: Run tests
|
||||
env:
|
||||
DEVICE: ${{ matrix.device }}
|
||||
run: |
|
||||
export PATH="$GITHUB_WORKSPACE/.yosys/usr/local/bin:$PATH"
|
||||
which yosys
|
||||
cd build
|
||||
make all-$DEVICE-tests -j`nproc`
|
||||
|
Loading…
Reference in New Issue
Block a user