name: Build Pyodide wheel

on:
  workflow_dispatch:
  
    inputs:
      PYMUPDF_SETUP_MUPDF_BUILD:
          description: 'Value for PYMUPDF_SETUP_MUPDF_BUILD, e.g.: git:--branch master https://github.com/ArtifexSoftware/mupdf.git'
          type: string
          default: 'git:--branch master https://github.com/ArtifexSoftware/mupdf.git'

  schedule:
    - cron: '13 5 * * *'

jobs:

  build_pyodide:
    
    name: Build pyodide wheel
    runs-on: ubuntu-latest
    
    strategy:
      matrix:
        # 2023-12-22: Python-3.12 is known to fail, due to setuptools trying to
        # import distutils.
        python-version: ["3.11"]

      # Avoid cancelling of all runs after a single failure.
      fail-fast: false
    
    steps:

      - uses: actions/checkout@v4

      - uses: actions/setup-python@v5
        with:
          python-version: ${{ matrix.python-version }}

      - name: build_pyodide_wheel
        env:
            inputs_sdist: 0
            inputs_PYMUPDF_SETUP_MUPDF_BUILD: ${{inputs.PYMUPDF_SETUP_MUPDF_BUILD}}
            inputs_wheels_default: 0
            inputs_wheels_linux_pyodide: 1
        run:
          python scripts/gh_release.py build


      # Upload generated wheels, to be accessible from github Actions page.
      #
      - uses: actions/upload-artifact@v3
        with:
          path: ./wheelhouse/*.whl
