| name: Build | |
| on: | |
| push: | |
| pull_request: | |
| jobs: | |
| build-and-test: | |
| strategy: | |
| matrix: | |
| pdk-family: [sky130, gf180mcu] | |
| name: Build ${{ matrix.pdk-family }} with Ciel | (Nix/x86_64-linux) | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - uses: ./.github/actions/setup_nix | |
| with: | |
| github_token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Install Magic, Ciel, GHR | |
| run: | | |
| nix profile install github:fossi-foundation/nix-eda#{ghr,magic-vlsi} github:fossi-foundation/ciel | |
| ciel --version | |
| magic --version | |
| ghr --version | |
| - name: Set PDK root | |
| run: | | |
| mkdir -p root | |
| echo "PDK_ROOT=$PWD/root" >> $GITHUB_ENV | |
| - name: Build with Ciel | |
| run: | | |
| ciel build --include-libraries all --pdk-family ${{ matrix.pdk-family }} --use-repo-at open_pdks=$PWD --jobs $(nproc) --clear-build-artifacts $(git rev-parse HEAD) | |
| - name: Push if New Tag | |
| if: github.ref_type == 'tag' | |
| run: | | |
| if [ "${{ secrets.BOT_GH_TOKEN }}" != "" ]; then | |
| ciel push --github-token ${{ secrets.BOT_GH_TOKEN }} --pdk-family ${{ matrix.pdk-family }} --repository ciel-releases $(git rev-parse HEAD) | |
| else | |
| echo "Secret BOT_GH_TOKEN unset. Not attempting to push." | |
| fi |