fix sbt concurrency in ci #789
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Gemmini CI | |
| on: [push] | |
| defaults: | |
| run: | |
| shell: bash -leo pipefail {0} | |
| env: | |
| REMOTE_WORK_DIR: /scratch/buildbot/gemmini-ci-shared/gemmini-${{ github.sha }} | |
| JAVA_TMP_DIR: /tmp/gemmini-${{ github.sha }}-full | |
| jobs: | |
| install-gemmini: | |
| runs-on: as4 | |
| steps: | |
| - name: Identify runner host | |
| run: | | |
| echo "host=$(hostname -f)" | |
| echo "user=$(whoami)" | |
| echo "runner_name=$RUNNER_NAME" | |
| echo "runner_workspace=$RUNNER_WORKSPACE" | |
| echo "cwd=$(pwd)" | |
| - name: Delete old checkout | |
| run: | | |
| rm -rf ${{ github.workspace }}/* || true | |
| rm -rf ${{ github.workspace }}/.* || true | |
| - uses: actions/checkout@v3 | |
| - name: Setup repository | |
| run: | | |
| .github/scripts/install-gemmini.sh | |
| # Legacy non-MX CI jobs (spike sanity + WithNoDebug_GemminiRocketConfig RTL). | |
| # Disabled while the MX (FP4/FP6/FP8) track is the active gate. | |
| # spike-run-tests: | |
| # runs-on: as4 | |
| # needs: install-gemmini | |
| # steps: | |
| # - name: Delete old checkout | |
| # run: | | |
| # rm -rf ${{ github.workspace }}/* || true | |
| # rm -rf ${{ github.workspace }}/.* || true | |
| # - uses: actions/checkout@v3 | |
| # - name: Run Gemmini Spike tests | |
| # run: | | |
| # .github/scripts/run-tests-spike.sh | |
| # | |
| # build-gemmini-config: | |
| # runs-on: as4 | |
| # needs: install-gemmini | |
| # steps: | |
| # - name: Delete old checkout | |
| # run: | | |
| # rm -rf ${{ github.workspace }}/* || true | |
| # rm -rf ${{ github.workspace }}/.* || true | |
| # - uses: actions/checkout@v3 | |
| # - name: Building Gemmini Config using Verilator | |
| # run: | | |
| # .github/scripts/do-rtl-build.sh | |
| # | |
| # rtl-run-tests: | |
| # runs-on: as4 | |
| # needs: build-gemmini-config | |
| # steps: | |
| # - name: Delete old checkout | |
| # run: | | |
| # rm -rf ${{ github.workspace }}/* || true | |
| # rm -rf ${{ github.workspace }}/.* || true | |
| # - uses: actions/checkout@v3 | |
| # - name: Run Gemmini Config tests using Verilator | |
| # run: | | |
| # .github/scripts/run-tests-rtl.sh | |
| build-mx-config: | |
| runs-on: as4 | |
| needs: install-gemmini | |
| steps: | |
| - name: Identify runner host | |
| run: | | |
| echo "host=$(hostname -f)" | |
| echo "user=$(whoami)" | |
| echo "runner_name=$RUNNER_NAME" | |
| echo "runner_workspace=$RUNNER_WORKSPACE" | |
| echo "cwd=$(pwd)" | |
| - name: Delete old checkout | |
| run: | | |
| rm -rf ${{ github.workspace }}/* || true | |
| rm -rf ${{ github.workspace }}/.* || true | |
| - uses: actions/checkout@v3 | |
| - name: Build MX (RadianceGemminiOnlyConfig) RTL | |
| run: | | |
| .github/scripts/do-rtl-build-mx.sh | |
| mx-run-tests: | |
| runs-on: as4 | |
| needs: build-mx-config | |
| steps: | |
| - name: Identify runner host | |
| run: | | |
| echo "host=$(hostname -f)" | |
| echo "user=$(whoami)" | |
| echo "runner_name=$RUNNER_NAME" | |
| echo "runner_workspace=$RUNNER_WORKSPACE" | |
| echo "cwd=$(pwd)" | |
| - name: Delete old checkout | |
| run: | | |
| rm -rf ${{ github.workspace }}/* || true | |
| rm -rf ${{ github.workspace }}/.* || true | |
| - uses: actions/checkout@v3 | |
| - name: Run MX (FP4/FP6/FP8) tests on spike and VCS | |
| run: | | |
| .github/scripts/run-tests-mx.sh | |
| build-rocket-config: | |
| runs-on: as4 | |
| needs: build-mx-config | |
| steps: | |
| - name: Identify runner host | |
| run: | | |
| echo "host=$(hostname -f)" | |
| echo "user=$(whoami)" | |
| echo "runner_name=$RUNNER_NAME" | |
| echo "runner_workspace=$RUNNER_WORKSPACE" | |
| echo "cwd=$(pwd)" | |
| - name: Delete old checkout | |
| run: | | |
| rm -rf ${{ github.workspace }}/* || true | |
| rm -rf ${{ github.workspace }}/.* || true | |
| - uses: actions/checkout@v3 | |
| - name: Build int8 (GemminiRocketConfig) RTL and rocc-tests | |
| run: | | |
| .github/scripts/do-rtl-build-rocket.sh | |
| rocket-run-tests: | |
| runs-on: as4 | |
| needs: build-rocket-config | |
| steps: | |
| - name: Identify runner host | |
| run: | | |
| echo "host=$(hostname -f)" | |
| echo "user=$(whoami)" | |
| echo "runner_name=$RUNNER_NAME" | |
| echo "runner_workspace=$RUNNER_WORKSPACE" | |
| echo "cwd=$(pwd)" | |
| - name: Delete old checkout | |
| run: | | |
| rm -rf ${{ github.workspace }}/* || true | |
| rm -rf ${{ github.workspace }}/.* || true | |
| - uses: actions/checkout@v3 | |
| - name: Run int8 (GemminiRocketConfig) tests on spike and VCS | |
| run: | | |
| .github/scripts/run-tests-rocket.sh | |
| cleanup: | |
| name: cleanup | |
| needs: [mx-run-tests, rocket-run-tests] | |
| runs-on: as4 | |
| if: ${{ always() }} | |
| steps: | |
| - name: Delete repo copy | |
| run: | | |
| rm -rf ${{ env.REMOTE_WORK_DIR }} | |
| rm -rf ${{ env.JAVA_TMP_DIR }} |