blob: 4a57cbe578ed82c45fbd1dc964af85b7df89943c [file] [log] [blame]
name: tinytapeout
# either manually started, or on a schedule
on: [ push, workflow_dispatch, pull_request ]
jobs:
tinytapeout:
env:
OPENLANE_ROOT: /home/runner/openlane
PDK_ROOT: /home/runner/pdk
PDK: sky130B
GH_TOKEN: ${{ secrets.GH_TOKEN }}
GH_USERNAME: ${{ secrets.GH_USERNAME }}
# ubuntu
runs-on: ubuntu-latest
steps:
# need the repo checked out
- name: checkout repo
uses: actions/checkout@v2
# build pdk - have to move this back above to get caravel makefile
- name: pdk & openlane & precheck
run: |
make setup
make precheck
# uncompress any gds commited to the repo
- name: uncompress gds
run: |
make uncompress
# need python
- name: setup python
uses: actions/setup-python@v2
with:
python-version: '3.7.7'
cache: 'pip'
- run: pip install -r requirements.txt
# install riscv gcc
# - name: riscv gcc
# run: |
# cd $HOME
# wget https://static.dev.sifive.com/dev-tools/riscv64-unknown-elf-gcc-8.3.0-2020.04.1-x86_64-linux-ubuntu14.tar.gz
# tar -xzf riscv64-unknown-elf-gcc-8.3.0-2020.04.1-x86_64-linux-ubuntu14.tar.gz
# pwd debug
- name: pwd
run: |
pwd # /home/runner/work/tinytapeout-mpw7/tinytapeout-mpw7
# install oss fpga tools
# - name: install oss-cad-suite
# uses: YosysHQ/setup-oss-cad-suite@v1
# with:
# python-override: true # don't want to use that python
# - run: |
# yosys --version
# iverilog -V
# fetch the repos
- name: fetch all
run: python ./configure.py --update-projects
# install projects
- name: configure
run: python ./configure.py --update-caravel
- name: user project wrapper GDS
run: make user_project_wrapper
- name: precheck
run: make run-precheck
# archive the results
- name: Archive Wrapper GDS
uses: actions/upload-artifact@v2
with:
name: Wrapper GDS
path: |
openlane/user_project_wrapper/runs/user_project_wrapper/reports/final_summary_report.csv
gds/user_project_wrapper.gds