Commit 2f5b746e by Zachary Snow

upgrade CI workflow

parent 5ed053d3
name: Build and Test name: Main
on: on:
push: push:
pull_request: pull_request:
...@@ -12,7 +12,7 @@ jobs: ...@@ -12,7 +12,7 @@ jobs:
strategy: strategy:
matrix: matrix:
os: os:
- ubuntu-18.04 - ubuntu-20.04
- macOS-10.15 - macOS-10.15
- windows-2019 - windows-2019
steps: steps:
...@@ -34,7 +34,7 @@ jobs: ...@@ -34,7 +34,7 @@ jobs:
strategy: strategy:
matrix: matrix:
os: os:
- ubuntu-18.04 - ubuntu-20.04
- macOS-10.15 - macOS-10.15
needs: build needs: build
steps: steps:
...@@ -44,27 +44,7 @@ jobs: ...@@ -44,27 +44,7 @@ jobs:
run: brew install shunit2 icarus-verilog run: brew install shunit2 icarus-verilog
- name: Install Dependencies (Linux) - name: Install Dependencies (Linux)
if: runner.os == 'Linux' if: runner.os == 'Linux'
run: sudo apt-get install -y shunit2 flex bison autoconf gperf run: sudo apt-get install -y shunit2 iverilog
- name: Cache iverilog (Linux)
uses: actions/cache@v1
if: runner.os == 'Linux'
with:
path: ~/.local
key: ${{ runner.OS }}-iverilog-10-3
restore-keys: ${{ runner.OS }}-iverilog-10-3
- name: Install iverilog (Linux)
if: runner.os == 'Linux'
run: |
if [ ! -e "$HOME/.local/bin/iverilog" ]; then
curl -L https://github.com/steveicarus/iverilog/archive/v10_3.tar.gz > iverilog-10_3.tar.gz
tar -xzf iverilog-10_3.tar.gz
cd iverilog-10_3
autoconf
./configure --prefix=$HOME/.local
make
make install
cd ..
fi
- name: Download Artifact - name: Download Artifact
uses: actions/download-artifact@v1 uses: actions/download-artifact@v1
with: with:
...@@ -77,7 +57,7 @@ jobs: ...@@ -77,7 +57,7 @@ jobs:
make test make test
release: release:
runs-on: ubuntu-18.04 runs-on: ubuntu-20.04
strategy: strategy:
matrix: matrix:
name: [macOS, Linux, Windows] name: [macOS, Linux, Windows]
...@@ -90,7 +70,7 @@ jobs: ...@@ -90,7 +70,7 @@ jobs:
name: ${{ matrix.name }} name: ${{ matrix.name }}
path: sv2v-${{ matrix.name }} path: sv2v-${{ matrix.name }}
- name: Mark Binary Executable - name: Mark Binary Executable
run: chmod +x */sv2v* run: chmod +x */sv2v
- name: Create ZIP - name: Create ZIP
run: zip -r sv2v-${{ matrix.name }} ./sv2v-${{ matrix.name }} run: zip -r sv2v-${{ matrix.name }} ./sv2v-${{ matrix.name }}
- name: Upload Release Asset - name: Upload Release Asset
......
...@@ -9,7 +9,7 @@ on: ...@@ -9,7 +9,7 @@ on:
- NOTICE - NOTICE
jobs: jobs:
notice: notice:
runs-on: ubuntu-18.04 runs-on: ubuntu-20.04
steps: steps:
- uses: actions/checkout@v1 - uses: actions/checkout@v1
- uses: mstksg/setup-stack@v2 - uses: mstksg/setup-stack@v2
......
...@@ -44,8 +44,8 @@ All of sv2v's dependencies are free and open-source. ...@@ -44,8 +44,8 @@ All of sv2v's dependencies are free and open-source.
### Pre-built binaries ### Pre-built binaries
Binaries for Linux and macOS are available on the [releases page]. If your Binaries for Ubuntu, macOS, and Windows are available on the [releases page]. If
system is not covered, or you would like to build the latest commit, simple your system is not covered, or you would like to build the latest commit, simple
instructions for building from source are below. instructions for building from source are below.
[releases page]: https://github.com/zachjs/sv2v/releases [releases page]: https://github.com/zachjs/sv2v/releases
...@@ -122,7 +122,7 @@ front end if there is significant interest. ...@@ -122,7 +122,7 @@ front end if there is significant interest.
## Testing ## Testing
Once the [test dependencies](#dependencies) are installed, tests can be run with Once the [test dependencies](#dependencies) are installed, tests can be run with
`make test`. Travis CI is used to automatically test commits on GitHub. `make test`. GitHub Actions is used to automatically test commits.
There is also a [SystemVerilog compliance suite] being created to test There is also a [SystemVerilog compliance suite] being created to test
open-source tools' SystemVerilog support. Although not every test in the suite open-source tools' SystemVerilog support. Although not every test in the suite
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment