Skip to content

Generated PCB image view #47

Generated PCB image view

Generated PCB image view #47

Workflow file for this run

on:
push:
tags:
- '*'
pull_request:
branches:
- main
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: Run KiCad ERC
id: erc
uses: vikulin/kicad-action@main
if: '!cancelled()'
with:
kicad_sch: gamma-spectrometer.kicad_sch
sch_erc_file: erc.rpt
- name: Run KiCad DRC
id: drc
uses: vikulin/kicad-action@main
if: '!cancelled()'
with:
kicad_pcb: gamma-spectrometer.kicad_pcb
pcb_drc_file: drc.rpt
- name: Generate Gerber, Drill, Component Placement, BOM files and Documentation
run: |
mkdir -p build
- name: Run KiCad export
uses: vikulin/kicad-action@main
with:
kicad_sch: gamma-spectrometer.kicad_sch
kicad_pcb: gamma-spectrometer.kicad_pcb
sch_pdf_file: docs/open-gamma-kit-${{ github.ref_name }}.pdf
sch_bom_file: build/BOM.csv
sch_bom_preset: PCBWay
pcb_gerbers_file: build/open-gamma-kit-gerber-files-${{ github.ref_name }}.zip
pcb_gerbers_layers: F.Cu,B.Cu,F.SilkS,B.SilkS,F.Mask,B.Mask,Edge.Cuts
pcb_centroids_file: build/open-gamma-kit-centroid-file-${{ github.ref_name }}.csv
pcb_centroids_format: csv
pcb_top_image_file: build/pcb-3dview-latest-f.png
pcb_top_image_zoom: 1.8
pcb_bottom_image_file: build/pcb-3dview-latest-b.png
pcb_bottom_image_zoom: 1.8
- name: Upload Artifacts
if: github.ref_type == 'tag'
uses: actions/upload-artifact@v4
with:
name: ogk-release-${{ github.ref_name }}
path: |
build/open-gamma-kit-gerber-files-${{ github.ref_name }}.zip
build/open-gamma-kit-centroid-file-${{ github.ref_name }}.csv
build/BOM.csv
docs/open-gamma-kit-${{ github.ref_name }}.pdf
build/pcb-3dview-latest-f.png
build/pcb-3dview-latest-b.png
- name: Generate Changelog Since Last Tag
if: github.ref_type == 'tag'
run: |
echo "" > RELEASE_BODY.md
echo "## What's Changed" >> RELEASE_BODY.md
echo "" >> RELEASE_BODY.md
git log -n 10 --pretty=format:"- %s" >> RELEASE_BODY.md
echo "" >> RELEASE_BODY.md
echo "---" >> RELEASE_BODY.md
echo "" >> RELEASE_BODY.md
echo "### 📦 Release Contents" >> RELEASE_BODY.md
echo "" >> RELEASE_BODY.md
echo "| File Name | Description |" >> RELEASE_BODY.md
echo "|-------------------------------------------------------------|-----------------------------------------------------------------------------|" >> RELEASE_BODY.md
echo "| \`open-gamma-kit-gerber-files-${{ github.ref_name }}.zip\` | 🟢 Complete Gerber and Drill files (Gerber X2 format) for PCB fabrication. |" >> RELEASE_BODY.md
echo "| \`open-gamma-kit-centroid-file-${{ github.ref_name }}.csv\` | 📍 Centroid (Pick-and-Place) file in mils for automated assembly. |" >> RELEASE_BODY.md
echo "| \`open-gamma-kit-${{ github.ref_name }}.pdf\` | 📄 PDF documentation |" >> RELEASE_BODY.md
echo "| \`BOM.csv\` | 📋 Bill of Materials (not archived — listed separately). |" >> RELEASE_BODY.md
echo "" >> RELEASE_BODY.md
echo "📁 **Location**: All files are available in the [Assets](#assets) section at the bottom of this release page." >> RELEASE_BODY.md
echo "" >> RELEASE_BODY.md
echo "---" >> RELEASE_BODY.md
echo "" >> RELEASE_BODY.md
echo "🔧 Thanks for supporting OpenGammaKit! If you find any issues or have suggestions, feel free to [open an issue](https://github.com/${{ github.repository }}/issues)." >> RELEASE_BODY.md
- name: Create GitHub Release
if: github.ref_type == 'tag'
uses: softprops/action-gh-release@v2
with:
name: OpenGammaKit ${{ github.ref_name }}
tag_name: ${{ github.ref_name }}
body_path: RELEASE_BODY.md
files: |
build/open-gamma-kit-gerber-files-${{ github.ref_name }}.zip
build/open-gamma-kit-centroid-file-${{ github.ref_name }}.csv
build/BOM.csv
docs/open-gamma-kit-${{ github.ref_name }}.pdf
build/pcb-3dview-latest-f.png
build/pcb-3dview-latest-b.png
env:
GITHUB_TOKEN: ${{ secrets.CUSTOM_GITHUB_TOKEN }}