aboutsummaryrefslogtreecommitdiff
path: root/VexRiscv/.github/workflows/scala.yml
diff options
context:
space:
mode:
authorFriedrich Beckmann <friedrich.beckmann@hs-augsburg.de>2022-07-25 17:55:39 +0200
committerFriedrich Beckmann <friedrich.beckmann@hs-augsburg.de>2022-07-25 17:55:39 +0200
commit3fff6023602822531efdae30bc8ebf862967f1ef (patch)
tree16028102b8d850f8ab3115d28a8539ca6bc5f51d /VexRiscv/.github/workflows/scala.yml
Initial Commit
Diffstat (limited to 'VexRiscv/.github/workflows/scala.yml')
-rw-r--r--VexRiscv/.github/workflows/scala.yml69
1 files changed, 69 insertions, 0 deletions
diff --git a/VexRiscv/.github/workflows/scala.yml b/VexRiscv/.github/workflows/scala.yml
new file mode 100644
index 0000000..9d2d2aa
--- /dev/null
+++ b/VexRiscv/.github/workflows/scala.yml
@@ -0,0 +1,69 @@
+name: Scala CI
+
+on: [push, pull_request]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ timeout-minutes: 120
+
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: 'recursive'
+
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+
+ - name: Cache pip
+ uses: actions/cache@v2
+ with:
+ path: ~/.cache/pip
+ key: ${{ runner.os }}-pip-v2
+ restore-keys: |
+ ${{ runner.os }}-pip-
+
+ - name: Cache SBT
+ uses: actions/cache@v2
+ with:
+ path: |
+ ~/.ivy2/cache
+ ~/.sbt
+ key: ${{ runner.os }}-sbt-${{ hashFiles('**/build.sbt') }}
+
+ - name: Cache tools
+ id: tools
+ uses: actions/cache@v2
+ with:
+ path: |
+ ~/tools
+ key: ${{ runner.os }}-tools_v4
+
+ - name: Setup env
+ run: echo "$HOME/tools/bin" >> $GITHUB_PATH
+
+ - name: Install cached tools
+ if: steps.tools.outputs.cache-hit != 'true'
+ run: source tools.sh && (cd ~/ && install_verilator)
+
+ - name: Install uncached tools
+ run: (cd .. && git clone https://github.com/SpinalHDL/SpinalHDL.git -b dev)
+
+ - name: Compile tests
+ run: sbt "+test:compile"
+
+ - name: Test Dhrystones
+ run: make regression_dhrystone -C scripts/regression
+
+ - name: Test Baremetal
+ run: make regression_random_baremetal -C scripts/regression
+
+ - name: Test Machine OS
+ run: make regression_random_machine_os -C scripts/regression
+
+ - name: Test Linux
+ run: make regression_random_linux -C scripts/regression
+