verilator/.github/workflows/check_pr.yml
Yutetsu TAKATSUKASA 73a7595335
Add the initial version of CI using GitHub Actions (#2665)
* Add the initial version of CI using GitHub Actions

* Update .github/workflows/check_pr.yml

Co-authored-by: Wilson Snyder <wsnyder@wsnyder.org>

* remove setting for travis

* rename travis-*.bash to ci-*.bash

* Rename TRAVIS_ variables to CI_

* install ccache and libsystemc(-dev) in ci-install.bash

* Use CI_ variables and Ubuntu-20.04 that provides SystemC

* call ccache maintenance

Co-authored-by: Wilson Snyder <wsnyder@wsnyder.org>
2020-12-05 00:30:46 +09:00

65 lines
2.1 KiB
YAML

name: Verilator PR CI
on: push
jobs:
vlt:
runs-on: ubuntu-20.04
name: build and test
env:
CI_OS_NAME: linux
CCACHE_COMPRESS: 1
CCACHE_DIR: ${{ github.workspace }}/.ccache
CCACHE_MAXSIZE: 4Gi
CC: ccache gcc
CXX: ccache g++
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Cache
uses: actions/cache@v2
env:
cache-name: ccache
with:
path: ${{ github.workspace }}/.ccache
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ github.ref }}-${{ github.sha }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- name: Install packages for build
env:
CI_BUILD_STAGE_NAME: build
run: bash ci/ci-install.bash
- name: CCACHE maintenance
run: mkdir -p $CCACHE_DIR && bash ci/ci-ccache-maint.bash
- name: Build
env:
CI_BUILD_STAGE_NAME: build
run: bash ci/ci-script.bash
- name: Install packages for tests
env:
CI_BUILD_STAGE_NAME: test
run: bash ci/ci-install.bash
- name: Test dist-vlt-0
env:
CI_BUILD_STAGE_NAME: test
TESTS: dist-vlt-0
run: bash ci/ci-script.bash
- name: Test dist-vlt-1
env:
CI_BUILD_STAGE_NAME: test
TESTS: dist-vlt-1
run: bash ci/ci-script.bash
- name: Test vltmt-0
env:
CI_BUILD_STAGE_NAME: test
TESTS: vltmt-0
run: bash ci/ci-script.bash
- name: Test vltmt-1
env:
CI_BUILD_STAGE_NAME: test
TESTS: vltmt-1
run: bash ci/ci-script.bash