Skip to content

KiCad Export 🚀

KiCad Export 🚀 #47

Workflow file for this run

name: KiCad Export
run-name: KiCad Export 🚀
on: [push]
jobs:
KiCad-Export:
runs-on: ubuntu-latest
steps:
- name: Install KiCad
run: |
sudo add-apt-repository ppa:kicad/kicad-7.0-releases
sudo apt-get install kicad
kicad-cli --version
- name: Check out repository code
uses: actions/checkout@v3
- name: Create output directory
run: mkdir output
- name: Export schematic PDFs
run: |
mkdir -p output/schem-pdf
for file in *.kicad_sch; do kicad-cli sch export pdf --output output/schem-pdf/$(basename "$file" .kicad_sch).pdf "$file"; done
- name: Export BOM
run: |
mkdir -p output/bom
for file in *.kicad_sch; do kicad-cli sch export python-bom --output output/bom/$(basename "$file" .kicad_sch).xml "$file"; done
- name: Export PCB PDFs
run: |
mkdir -p output/pcb-pdf
for file in *.kicad_pcb; do kicad-cli pcb export pdf --layers F.Cu,In1.Cu,In2.Cu,B.Cu,B.SilkS,B.SilkS,Edge.Cuts --output output/pcb-pdf/$(basename "$file" .kicad_pcb).pdf "$file"; done
- name: Export gerbers
run: |
mkdir -p output/gerbers
kicad-cli pcb export gerbers --board-plot-params --output output/gerbers --layers F.Cu,In1.Cu,In2.Cu,B.Cu,B.Paste,F.Paste,B.SilkS,F.SilkS,B.Mask,F.Mask,Edge.Cuts,B.Fab,F.Fab --precision 6 *.kicad_pcb
# This task includes a trailing slash on the output directory due to a kicad-cli bug.
- name: Export drill
run: |
mkdir -p output/gerbers
kicad-cli pcb export drill *.kicad_pcb --format gerber --output output/gerbers/
- name: Export component positions
run: |
mkdir -p output/pos
kicad-cli pcb export pos --format csv --side both --units mm --output output/pos/pos.csv *.kicad_pcb
- name: Export STEP
run: |
mkdir -p output/step
for file in *.kicad_pcb; do kicad-cli pcb export step --subst-models --output output/step/$(basename "$file" .kicad_pcb).stp "$file"; done
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: artifacts
path: output