Skip to content

Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows #398

Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows

Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows #398

Workflow file for this run

on:
- push
jobs:
build:
runs-on: ubuntu-latest
name: Build LSOracle
container: ghcr.io/lnis-uofu/lsoracle-benchmarks:jammy
env:
CCACHE_COMPRESS: "true"
CCACHE_COMPRESSLEVEL: "6"
CCACHE_MAXSIZE: "400M"
CCACHE_LOGFILE: ccache_log
CCACHE_DIR: /__w/LSOracle/.ccache
steps:
- name: Check out the repo
uses: actions/checkout@v2
with:
submodules: recursive
- name: Load ccache
uses: actions/cache@v2
with:
path: |
/__w/LSOracle/.ccache
key: cicd_testing_build
- name: Build
run: |
ccache -p
ccache -z
cmake -B build . -D CMAKE_BUILD_TYPE=RELEASE -D YOSYS_INCLUDE_DIR=/yosys -D YOSYS_PLUGIN=ON -D ENABLE_OPENSTA=ON -DENABLE_ABC=ON
cmake --build build
ccache -s
- name: Upload binary artifacts
uses: actions/upload-artifact@v2
with:
name: lsoracle-binary
path: build/core/lsoracle
- name: Upload plugin artifacts
uses: actions/upload-artifact@v2
with:
name: lsoracle-plugin
path: build/yosys-plugin/oracle.so
- name: Upload unit test artifacts
uses: actions/upload-artifact@v2
with:
name: lsoracle-tests
path: build/core/unit_tests
test:
runs-on: ubuntu-latest
container: ghcr.io/lnis-uofu/lsoracle-benchmarks:jammy
needs: build
steps:
- name: Check out the repo
uses: actions/checkout@v2
- name: Get binaries
uses: actions/download-artifact@v4.1.7
with:
name: lsoracle-tests
- name: Unit Tests
run: |
chmod +x unit_tests
./unit_tests
benchmark:
runs-on: ubuntu-latest
name: Benchmarks
container: ghcr.io/lnis-uofu/lsoracle-benchmarks:jammy
needs: build
steps:
- name: Checkout the repo
uses: actions/checkout@v2
- name: Get binaries
uses: actions/download-artifact@v4.1.7
with:
name: lsoracle-binary
- name: Get plugin
uses: actions/download-artifact@v4.1.7
with:
name: lsoracle-plugin
# - name: Prep previous
# run: |
# mkdir -p benchmarks/previous
- name: Run synthesis
run: |
ls
cp lsoracle /usr/local/bin
chmod +x /usr/local/bin/lsoracle
mkdir -p /usr/local/share/lsoracle
mkdir -p /usr/local/share/yosys/plugins
cp oracle.so /usr/local/share/yosys/plugins/
cd benchmarks
make everything.tsv -j $(nproc)
- name: Archive results
uses: actions/upload-artifact@v2
with:
name: benchmark-results
path: |
benchmarks/everything.tsv
benchmarks/*/*.log
benchmarks/*/*.rtl
benchmarks/*/*.v
benchmarks/*/*.json
benchmarks/*/*.gates
benchmarks/*/*.sdc
#- name: Get previous results
# uses: dsaltares/fetch-gh-release-asset@master
# with:
# version: tags/cicd_test
# file: "everything.tsv"
# target: "benchmarks/previous/everything.tsv"
# token: ${{ secrets.GITHUB_TOKEN }}
- name: Render results
continue-on-error: true
run: |
cd benchmarks
make sky130_fd_sc_hd__tt_025C_1v80.pdf
- name: Archive graph
uses: actions/upload-artifact@v2
with:
name: benchmark-graphs
path: |
benchmarks/sky130_fd_sc_hd__tt_025C_1v80.pdf
- name: Publish results
uses: softprops/action-gh-release@v1
if: github.ref == 'refs/heads/master'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
files: |
benchmarks/everything.tsv
benchmarks/sky130_fd_sc_hd__tt_025C_1v80.pdf
benchmarks/*/*.log
benchmarks/*/*.rtl
benchmarks/*/*.v
benchmarks/*/*.json
benchmarks/*/*.gates
benchmarks/*/*.sdc
prerelease: true