- Introduced `kicad_cli.sh` for local and Docker-based kicad-cli execution. - Created `schops.py` for schematic operations including ERC, BOM, netlist exports, and bulk edits. - Added README.md for schops with installation and usage instructions. - Included requirements.txt for necessary Python packages. - Implemented rules engine for applying field defaults and renaming nets. - Added tests for rules engine functionality. - Introduced scope guard script to enforce file modification policies based on PR labels. - Created watch script to monitor KiCad files and trigger hardware gate on changes.
42 lines
1006 B
YAML
42 lines
1006 B
YAML
name: Hardware Previews (SVG + reports)
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- "hardware/**"
|
|
- "tools/hw/**"
|
|
- ".github/workflows/hardware_previews.yml"
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
previews:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.11"
|
|
|
|
- name: Install deps
|
|
run: |
|
|
python -m pip install -U pip
|
|
python -m pip install -r tools/hw/schops/requirements.txt
|
|
|
|
- name: Pull KiCad docker image
|
|
run: |
|
|
docker pull kicad/kicad:9.0.7-full
|
|
|
|
- name: Run hardware gate (exports + reports)
|
|
env:
|
|
KICAD_DOCKER_IMAGE: kicad/kicad:9.0.7-full
|
|
run: |
|
|
bash tools/hw/hw_gate.sh hardware/kicad
|
|
|
|
- name: Upload artifacts
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: hw-previews
|
|
path: |
|
|
artifacts/hw_previews/**
|
|
hardware/blocks/REGISTRY.md
|