Skip to content

Add win-64 wheel builder GHA workflow #4

Add win-64 wheel builder GHA workflow

Add win-64 wheel builder GHA workflow #4

name: llvmlite_win-64_conda_builder
on:
pull_request:
paths:
- .github/workflows/llvmlite_win-64_conda_builder.yml
workflow_dispatch:
inputs:
llvmdev_run_id:
description: llvmdev workflow run ID (optional)
required: false
type: string
jobs:
win-64-build:
name: win-64-build
runs-on: windows-2019
defaults:
run:
shell: bash -elx {0}
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
fail-fast: false
steps:
- name: Clone repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Miniconda
uses: conda-incubator/setup-miniconda@v3
with:
auto-update-conda: true
auto-activate-base: true
activate-environment: ''
- name: Install conda-build
run: conda install conda-build
- name: Download llvmdev Artifact
if: ${{ inputs.llvmdev_run_id != '' }}
uses: actions/download-artifact@v4
with:
name: llvmdev_win-64
path: llvmdev_conda_packages
run-id: ${{ inputs.llvmdev_run_id }}
repository: ${{ github.repository }}
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Build llvmlite conda package
run: |
if [ "${{ inputs.llvmdev_run_id }}" != "" ]; then
LLVMDEV_CHANNEL="file:///D:/a/llvmlite/llvmlite/llvmdev_conda_packages"
else
LLVMDEV_CHANNEL="numba"
fi
CONDA_CHANNEL_DIR="conda_channel_dir"
mkdir $CONDA_CHANNEL_DIR
conda build --debug -c $LLVMDEV_CHANNEL -c defaults --python=${{ matrix.python-version }} conda-recipes/llvmlite --output-folder=$CONDA_CHANNEL_DIR --no-test
- name: Upload llvmlite conda package
uses: actions/upload-artifact@v4
with:
name: llvmlite-win-64-py${{ matrix.python-version }}
path: conda_channel_dir
compression-level: 0
retention-days: 7
if-no-files-found: error
win-64-test:
name: win-64-test
needs: win-64-build
runs-on: windows-2019
defaults:
run:
shell: bash -elx {0}
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
fail-fast: false
steps:
- name: Setup miniconda
uses: conda-incubator/setup-miniconda@v3
- name: Download llvmlite artifact
uses: actions/download-artifact@v4
with:
name: llvmlite-win-64-py${{ matrix.python-version }}
- name: Install conda-build and llvmlite
run: |
conda install conda-build
- name: Run tests
run: conda build --test win-64/llvmlite*.conda