Skip to content

pyodide build, #2

pyodide build, #2 #5

Workflow file for this run

name: Pyodide Build
on:
pull_request:
paths:
- crosshair/**
- setup.py
- .pre-commit-config.yaml
- .github/**
push:
branches: [ main ]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-24.04
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup packages
run: sudo apt-get update && sudo apt-get install -y python3-dev python3-pip python3-venv
- name: Create venv
run: python3 -m venv ~/env
- name: Install dependencies
run: |
~/env/bin/pip install pyodide-build pyodide-cli
- name: Configure CMake and build
run: |
git clone https://github.com/emscripten-core/emsdk.git ~/emsdk
cd ~/emsdk && PYODIDE_EMSCRIPTEN_VERSION=$(~/env/bin/pyodide config get emscripten_version)
./emsdk install ${PYODIDE_EMSCRIPTEN_VERSION}
./emsdk activate ${PYODIDE_EMSCRIPTEN_VERSION}
- name: Build CrossHair
run: |
source ~/emsdk/emsdk_env.sh
~/env/bin/pyodide build
- name: Setup env-pyodide
run: |
source ~/env/bin/activate
source ~/emsdk/emsdk_env.sh
pyodide venv ~/env-pyodide
- name: Upload wheel
uses: actions/upload-artifact@master
with:
name: pyodide-wheel
path: dist/*.whl