CI: refactor Nim compiler caching (#358)

This commit is contained in:
Ștefan Talpalaru 2021-06-03 02:40:58 +02:00 committed by GitHub
parent 41aba1b6a0
commit 0ad571ab27
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 42 deletions

View File

@ -1,4 +1,4 @@
name: nim-eth CI name: CI
on: [push, pull_request] on: [push, pull_request]
jobs: jobs:
@ -7,38 +7,17 @@ jobs:
fail-fast: false fail-fast: false
max-parallel: 20 max-parallel: 20
matrix: matrix:
branch: [master]
target: target:
- os: linux - os: linux
cpu: amd64 cpu: amd64
TEST_LANG: c
- os: linux
cpu: amd64
TEST_LANG: cpp
- os: linux - os: linux
cpu: i386 cpu: i386
TEST_LANG: c
- os: linux
cpu: i386
TEST_LANG: cpp
- os: macos - os: macos
cpu: amd64 cpu: amd64
TEST_LANG: c
- os: macos
cpu: amd64
TEST_LANG: cpp
- os: windows - os: windows
cpu: amd64 cpu: amd64
TEST_LANG: c
- os: windows
cpu: amd64
TEST_LANG: cpp
- os: windows - os: windows
cpu: i386 cpu: i386
TEST_LANG: c
- os: windows
cpu: i386
TEST_LANG: cpp
include: include:
- target: - target:
os: linux os: linux
@ -50,7 +29,7 @@ jobs:
os: windows os: windows
builder: windows-2019 builder: windows-2019
name: '${{ matrix.target.os }}-${{ matrix.target.cpu }}-${{ matrix.target.TEST_LANG }} (${{ matrix.branch }})' name: '${{ matrix.target.os }}-${{ matrix.target.cpu }}'
runs-on: ${{ matrix.builder }} runs-on: ${{ matrix.builder }}
timeout-minutes: 60 timeout-minutes: 60
steps: steps:
@ -229,11 +208,10 @@ jobs:
id: nim-cache id: nim-cache
uses: actions/cache@v2 uses: actions/cache@v2
with: with:
path: nim path: NimBinaries
key: 'nim-${{ matrix.target.os }}-${{ matrix.target.cpu }}-${{ steps.versions.outputs.nimbus_build_system }}' key: 'NimBinaries-${{ matrix.target.os }}-${{ matrix.target.cpu }}-${{ steps.versions.outputs.nimbus_build_system }}'
- name: Build Nim and associated tools - name: Build Nim and associated tools
if: steps.nim-cache.outputs.cache-hit != 'true'
shell: bash shell: bash
run: | run: |
curl -O -L -s -S https://raw.githubusercontent.com/status-im/nimbus-build-system/master/scripts/build_nim.sh curl -O -L -s -S https://raw.githubusercontent.com/status-im/nimbus-build-system/master/scripts/build_nim.sh
@ -248,19 +226,7 @@ jobs:
MAKE_CMD="make" MAKE_CMD="make"
fi fi
env MAKE="$MAKE_CMD -j2" ARCH_OVERRIDE=$PLATFORM CC=gcc bash build_nim.sh nim csources dist/nimble NimBinaries env MAKE="$MAKE_CMD -j2" ARCH_OVERRIDE=$PLATFORM CC=gcc bash build_nim.sh nim csources dist/nimble NimBinaries
echo '${{ github.workspace }}/nim/bin' >> $GITHUB_PATH
# clean up to save cache space
cd nim
rm koch
rm -rf nimcache
rm -rf csources
rm -rf tests
rm -rf dist
rm -rf .git
- name: Setup environment
shell: bash
run: echo '${{ github.workspace }}/nim/bin' >> $GITHUB_PATH
- name: Run nim-eth tests - name: Run nim-eth tests
shell: bash shell: bash
@ -269,5 +235,6 @@ jobs:
export PLATFORM="${{ matrix.target.os }}-${{ matrix.target.cpu }}" export PLATFORM="${{ matrix.target.os }}-${{ matrix.target.cpu }}"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib"
nimble install -y --depsOnly nimble install -y --depsOnly
env TEST_LANG="${{ matrix.target.TEST_LANG }}" PLATFORM="$PLATFORM" nimble test nimble test
env TEST_LANG="${{ matrix.target.TEST_LANG }}" PLATFORM="$PLATFORM" nimble build_dcli nimble build_dcli

View File

@ -3,7 +3,7 @@
[![License: Apache](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) [![License: Apache](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT) [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
![Stability: experimental](https://img.shields.io/badge/stability-experimental-orange.svg) ![Stability: experimental](https://img.shields.io/badge/stability-experimental-orange.svg)
![Github action](https://github.com/status-im/nim-eth/workflows/nim-eth%20CI/badge.svg) ![Github action](https://github.com/status-im/nim-eth/workflows/CI/badge.svg)
## Introduction ## Introduction