Skip to content

Commit

Permalink
GHA and colo runner
Browse files Browse the repository at this point in the history
  • Loading branch information
nathanaelhuffman committed Nov 14, 2024
1 parent 3cc91f6 commit 27d5d06
Show file tree
Hide file tree
Showing 4 changed files with 95 additions and 18 deletions.
20 changes: 20 additions & 0 deletions .github/filters.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
cobble:
- 'tools/site_cobble/**/*'
- 'vnd/**/*'
- 'hdl/ip/bsv/**/*'
- 'hdl/projects/ecp5_evn/**/*'
- 'hdl/projects/gimlet/**/*'
- 'hdl/projects/icestick/**/*'
- 'hdl/projects/ignitionlet/**/*'
- 'hdl/projects/psc/**/*'
- 'hdl/projects/sidecar/**/*'
- 'hdl/projects/ulx3s/**/*'

buck2:
- 'vnd/xpm/**/*'
- 'prelude/**/*'
- 'toolchains/**/*'
- 'hdl/ip/toolchains/**/*'
- 'tools/**/*'
- 'hdl/ip/vhd/**/*'
- 'hdl/projects/grapefruit/**/*'
61 changes: 61 additions & 0 deletions .github/workflows/simulation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: simulation
run-name: ${{ github.actor }} running HDL simulations
on:
[push]
jobs:
changes:
runs-on: self-hosted
permissions:
pull-requests: read
outputs:
cobble: ${{ steps.changed_files.outputs.cobble }}
buck2: ${{ steps.changed_files.outputs.buck2 }}
steps:
- uses: actions/checkout@v4
with:
submodules: 'true'
- uses: dorny/paths-filter@v3
id: filter
with:
filters: .github/filters.yml

vunit-sim:
needs: changes
if: ${{ needs.changes.outputs.buck2 == 'true' }}
runs-on: self-hosted
steps:
- run: echo "The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v4
with:
submodules: 'true'
- name: Update pip reqs
run : python3 -m pip install --upgrade -r tools/requirements.txt --break-system-packages
- name: Run VUnit tests
run: buck2 bxl //tools/vunit-sims.bxl:vunit_sim_gen | while IFS= read -r line; do eval "$line" ; done

bsv-sim:
# needs: changes
# if: ${{ needs.changes.outputs.cobble == 'true' }}
runs-on: self-hosted
steps:
- run: echo "The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v4
with:
submodules: 'true'
fetch-depth: 0
- name: Update pip reqs
run : python3 -m pip install --upgrade -r tools/requirements.txt --break-system-packages
- name: Env setup
run: cp BUILD.vars.gha BUILD.vars && echo "/opt/bsc-2022.01/bin" >> "$GITHUB_PATH"
- name: Restore build-dir
run: if [ -d /tmp/cobble_build_bkup ]; then cp -R /tmp/cobble_build_bkup ./build; else mkdir ./build; fi
- name: cobble init
run: ../vnd/cobble/cobble init .. --reinit
working-directory: ./build
- name: Run BSIM tests
run: ./cobble bluesim_test "//.*SchmittRegTest.*"
working-directory: ./build
- name: backup build-dir
run: cp -R ./build /tmp/cobble_build_bkup
18 changes: 0 additions & 18 deletions .github/workflows/vunit.yml

This file was deleted.

14 changes: 14 additions & 0 deletions BUILD.vars.gha
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[bluespec]
prefix = "/opt/bsc-2022.01"
bin = "/opt/bsc-2022.01/bin/bsc"
libdir = "/opt/bsc-2022.01/lib/"

[yosys]
bin = "/opt/oss-cad-suite-20240513/bin/yosys"
libdir = "/opt/oss-cad-suite-20240513/share/yosys"

[nextpnr]
ecp5 = "/opt/oss-cad-suite-20240513/bin/nextpnr-ecp5"
ecp5_pack = "/opt/oss-cad-suite-20240513/bin/ecppack"
ice40 = "/opt/oss-cad-suite-20240513/bin/nextpnr-ice40"
ice40_pack = "/opt/oss-cad-suite-20240513/bin/icepack"

0 comments on commit 27d5d06

Please sign in to comment.