Skip to content

Emscripten nightly tests #444

Emscripten nightly tests

Emscripten nightly tests #444

Workflow file for this run

---
name: Emscripten nightly tests
on:
# push:
# branches:
# - main
pull_request:
branches:
- main
schedule:
- cron: '30 4 * * *'
workflow_dispatch:
jobs:
emsdk:
name: "EMSDK ${{ matrix.emsdk_version }} Python ${{ matrix.python_version }} ${{ matrix.flavor }}"
runs-on: "ubuntu-latest"
strategy:
fail-fast: false
matrix:
emsdk_version:
# latest == 3.1.24 passes all tests
- latest
# tot is tip-of-tree
- tot-upstream
python_version:
- "3.11"
- "main"
flavor:
- browser
- browser-debug
- node-dl
- node-dl-debug
- node-pthreads
- wasm64-node
exclude:
# wasm64-node only on main
- flavor: wasm64-node
python_version: 3.11
steps:
- uses: actions/checkout@v3
- name: "Clone and build 'build' Python ${{ matrix.python_version }}"
uses: ./.github/actions/common_setup
id: common
with:
python_version: "${{ matrix.python_version }}"
cache_suffix: "emsdk${{ matrix.emsdk_version }}"
- name: "Install EMSDK ${{ matrix.emsdk_version }}"
uses: mymindstorm/setup-emsdk@v11
with:
version: ${{ matrix.emsdk_version }}
- name: Print emcc version
shell: bash
run: emcc -v
- name: "Build ${{ matrix.python_version }} ${{ matrix.flavor }}"
uses: ./.github/actions/build_emscripten
id: build
with:
emsdk_version: "${{ matrix.emsdk_version }}"
flavor: "${{ matrix.flavor }}"
- name: Run pythoninfo
shell: bash
working-directory: "${{ env.HOST_PYTHON_DIR }}"
run: make pythoninfo
if: ${{ matrix.flavor == 'node-dl' || matrix.flavor == 'node-dl-debug' || matrix.flavor == 'node-pthreads' || matrix.flavor == 'wasm64-node' }}
- name: Run tests
shell: bash
working-directory: "${{ env.HOST_PYTHON_DIR }}"
run: make buildbottest TESTOPTS="-j2"
if: ${{ matrix.flavor == 'node-dl' || matrix.flavor == 'node-pthreads' || matrix.flavor == 'wasm64-node' }}
- name: "Package ${{ matrix.python_version }} ${{ matrix.flavor }}"
uses: ./.github/actions/package_emscripten
id: package
with:
emsdk_version: "${{ matrix.emsdk_version }}"
flavor: "${{ matrix.flavor }}"