Skip to content

v2.15

v2.15 #31

Workflow file for this run

name: Release
on:
release:
types: [published]
jobs:
build_pcb2blender_exporter:
name: Build pcb2blender_exporter KiCad Addon
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Build KiCad Addon
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
pip install requests
NAME="pcb2blender_exporter_$(sed "s/-b.*//;s/-/_/;s/\./-/g" <<< $GITHUB_REF_NAME).zip"
python .github/workflows/build_kicad_addon.py $GITHUB_REF_NAME \
--source pcb2blender_exporter \
--icon images/icon.png \
--extra-files images/blender_icon_32x32.png
sha256sum $NAME | cut -c -64 | tr -d "\n" > $NAME.sha256
gh release upload $GITHUB_REF_NAME $NAME
gh release upload $GITHUB_REF_NAME $NAME.sha256
gh release upload $GITHUB_REF_NAME version.json
- name: Create Content Library Metadata Artifact
uses: actions/upload-artifact@v4
with:
name: KiCad Content Library Metadata
path: metadata.json
build_pcb2blender_importer:
name: Build pcb2blender_importer Blender Extension
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install Build Dependencies
run: pip install -r requirements-dev.txt
- name: Update Extension Dependencies
run: python download_dependencies.py
- name: Set up Blender
run: |
SNAP_CHANNEL=$(
snap info blender \
| grep -F " ${GITHUB_REF_NAME##*-b}" | grep stable \
| head -n 1 | cut -c 3- | sed "s/: .*//"
)
SNAP_FILE=$(
snap download blender --channel=$SNAP_CHANNEL \
| tail -n 1 | sed "s/.* snap install //"
)
unsquashfs -q -n -dest blender-snap $SNAP_FILE
sudo snap try blender-snap --classic
curl https://bootstrap.pypa.io/get-pip.py -s -O
- name: Install Pytest in Blender
run: |
BLENDER_PYTHON_DIR="blender-snap/${GITHUB_REF_NAME##*-b}/python/bin"
BLENDER_PYTHON="$BLENDER_PYTHON_DIR/$(ls $BLENDER_PYTHON_DIR | sed "s/ .*//")"
$BLENDER_PYTHON get-pip.py
$BLENDER_PYTHON -m pip install pytest
- name: Build and Install Blender Extension
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
NAME="pcb2blender_importer_$(sed "s/-k.*-/_/;s/\./-/g" <<< $GITHUB_REF_NAME).zip"
echo "extension_file="
blender --command extension build \
--source-dir pcb2blender_importer \
--output-filepath $NAME
blender --command extension install-file $NAME -r user_default -e
sha256sum $NAME | cut -c -64 | tr -d "\n" > $NAME.sha256
gh release upload $GITHUB_REF_NAME $NAME
gh release upload $GITHUB_REF_NAME $NAME.sha256
- name: Run Tests
run: pytest -k test_importer tests/