# SPDX-FileCopyrightText: 2024 Thomas Buck # SPDX-License-Identifier: CERN-OHL-S-2.0+ # # ------------------------------------------------------------------------------ # | Copyright (c) 2024 Thomas Buck | # | | # | This source describes Open Hardware and is licensed under the CERN-OHL-S v2 | # | or any later version. | # | | # | You may redistribute and modify this source and make products using it under | # | the terms of the CERN-OHL-S v2 (https://ohwr.org/cern_ohl_s_v2.txt) | # | or any later version. | # | | # | This source is distributed WITHOUT ANY EXPRESS OR IMPLIED WARRANTY, | # | INCLUDING OF MERCHANTABILITY, SATISFACTORY QUALITY AND FITNESS FOR A | # | PARTICULAR PURPOSE. Please see the CERN-OHL-S v2 (or any later version) | # | for applicable conditions. | # | | # | Source location: https://git.xythobuz.de/thomas/drumkit | # | | # | As per CERN-OHL-S v2 section 4, should You produce hardware based on this | # | source, You must where practicable maintain the Source Location visible | # | on the external case of the Gizmo or other products you make using this | # | source. | # ------------------------------------------------------------------------------ name: PCB # build for each push and pull request on: [push, pull_request] jobs: fabrication: runs-on: ubuntu-latest permissions: contents: write steps: - name: Checkout repo uses: actions/checkout@v4 with: fetch-depth: 0 - name: Checkout repo submodules run: git submodule update --init - name: Install dependencies run: | sudo add-apt-repository --yes ppa:kicad/kicad-8.0-releases sudo apt update sudo apt install -y --install-recommends kicad sudo apt-get install -y zip - name: Generate fabrication files run: | ./pcb/generate_fab.sh ./pcb2/generate_fab.sh - name: Upload board files uses: actions/upload-artifact@v4.0.0 with: name: prototype-pcb path: pcb/fabrication - name: Upload board files uses: actions/upload-artifact@v4.0.0 with: name: v2-pcb path: pcb2/fabrication - name: Rename release files if: startsWith(github.ref, 'refs/tags/') run: | mv pcb/fab.zip fab_proto.zip mv pcb2/fab.zip fab_v2.zip - name: Upload release files if: startsWith(github.ref, 'refs/tags/') uses: softprops/action-gh-release@v1 with: files: fab_proto.zip fab_v2.zip