mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2025-07-21 12:41:10 +02:00
Some checks failed
ci-build / build-source-dist (push) Has been cancelled
ci-build / build-wheels (arm64, macos-14, 3.10) (push) Has been cancelled
ci-build / build-wheels (arm64, macos-14, 3.11) (push) Has been cancelled
ci-build / build-wheels (arm64, macos-14, 3.12) (push) Has been cancelled
ci-build / build-wheels (arm64, macos-14, 3.13) (push) Has been cancelled
ci-build / build-wheels (arm64, macos-14, 3.9) (push) Has been cancelled
ci-build / build-wheels (x64, macos-13, 3.10) (push) Has been cancelled
ci-build / build-wheels (x64, macos-13, 3.11) (push) Has been cancelled
ci-build / build-wheels (x64, macos-13, 3.12) (push) Has been cancelled
ci-build / build-wheels (x64, macos-13, 3.13) (push) Has been cancelled
ci-build / build-wheels (x64, macos-13, 3.9) (push) Has been cancelled
ci-build / build-wheels (x64, ubuntu-22.04, 3.10) (push) Has been cancelled
ci-build / build-wheels (x64, ubuntu-22.04, 3.11) (push) Has been cancelled
ci-build / build-wheels (x64, ubuntu-22.04, 3.12) (push) Has been cancelled
ci-build / build-wheels (x64, ubuntu-22.04, 3.13) (push) Has been cancelled
ci-build / build-wheels (x64, ubuntu-22.04, 3.9) (push) Has been cancelled
ci-build / build-wheels (x64, windows-2022, 3.10) (push) Has been cancelled
ci-build / build-wheels (x64, windows-2022, 3.11) (push) Has been cancelled
ci-build / build-wheels (x64, windows-2022, 3.12) (push) Has been cancelled
ci-build / build-wheels (x64, windows-2022, 3.13) (push) Has been cancelled
ci-build / build-wheels (x64, windows-2022, 3.9) (push) Has been cancelled
ci-build / build-wheels (x86, windows-2022, 3.10) (push) Has been cancelled
ci-build / build-wheels (x86, windows-2022, 3.11) (push) Has been cancelled
ci-build / build-wheels (x86, windows-2022, 3.12) (push) Has been cancelled
ci-build / build-wheels (x86, windows-2022, 3.13) (push) Has been cancelled
ci-build / build-wheels (x86, windows-2022, 3.9) (push) Has been cancelled
ci-build / Build wxPython documentation (push) Has been cancelled
ci-build / Publish Python distribution to PyPI (push) Has been cancelled
ci-build / Create GitHub Release and upload source (push) Has been cancelled
ci-build / Upload wheels to snapshot-builds on wxpython.org (push) Has been cancelled
156 lines
4.4 KiB
YAML
156 lines
4.4 KiB
YAML
name: build-linux-wheels
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
|
|
env:
|
|
PYTHONUNBUFFERED: 1
|
|
WXPYTHON_BUILD_ARGS: '--release'
|
|
|
|
jobs:
|
|
# Build a wxPython source archive, and save it as an artifact for use in the
|
|
# job that builds the wheels.
|
|
build-source-dist:
|
|
runs-on: ubuntu-22.04
|
|
|
|
outputs:
|
|
VERSION: ${{ steps.generate.outputs.version }}
|
|
|
|
steps:
|
|
- name: Checkout repo
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: 'recursive'
|
|
fetch-depth: 0
|
|
|
|
- name: Checkout specific submodule refs
|
|
run: buildtools/checkout_submodule_refs.sh
|
|
|
|
- name: Set up Python 3.10
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.10'
|
|
cache: 'pip'
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
sudo apt-get install -y gettext dos2unix
|
|
python -m pip install --upgrade -r requirements.txt
|
|
|
|
- name: Generate wrapper code
|
|
id: generate
|
|
run: |
|
|
python build.py setrev dox etg sip --nodoc
|
|
VERSION=$(python build.py --quiet version)
|
|
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
|
|
|
|
- name: Create source distribution (sdist)
|
|
run: |
|
|
python build.py sdist
|
|
|
|
- name: Save sdist as job artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: wxPython-source
|
|
path: dist/wxPython-${{ steps.generate.outputs.version }}.tar.gz
|
|
|
|
build-wheels:
|
|
# wait for prior job to complete
|
|
needs: build-source-dist
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ ubuntu-20.04, ubuntu-22.04, ubuntu-24.04 ]
|
|
python-version: [ '3.9', '3.10', '3.11', '3.12', '3.13' ]
|
|
architecture: [ 'x64' ]
|
|
|
|
env:
|
|
VERSION: ${{ needs.build-source-dist.outputs.VERSION }}
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
outputs:
|
|
short_name: ${{ steps.init.outputs.short_name }}
|
|
canonical_id: ${{ steps.init.outputs.canonical_id }}
|
|
|
|
steps:
|
|
- name: initialize variables
|
|
id: init
|
|
run: |
|
|
build_opts=$WXPYTHON_BUILD_ARGS
|
|
short_name=linux
|
|
echo "short_name=$short_name" >> "$GITHUB_OUTPUT"
|
|
echo "canonical_id=$short_name-py${{ matrix.python-version }}-${{ matrix.architecture}}" >> "$GITHUB_OUTPUT"
|
|
echo "build_opts=$build_opts" >> "$GITHUB_OUTPUT"
|
|
|
|
- name: Checkout repo
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: 'recursive'
|
|
|
|
- name: download CI source artifact
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
name: wxPython-source
|
|
path: dist
|
|
|
|
- name: Set up Python ${{ matrix.python-version }}-${{ matrix.architecture }}
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '${{ matrix.python-version }}'
|
|
architecture: '${{ matrix.architecture }}'
|
|
cache: 'pip'
|
|
|
|
- name: Install Python dependencies
|
|
run: |
|
|
python -m pip install --upgrade -r requirements.txt
|
|
|
|
- name: Install Ubuntu dependencies
|
|
run: |
|
|
./buildtools/install_depends.sh
|
|
|
|
- name: Build the wxPython wheel
|
|
env:
|
|
WXPYTHON_BUILD_ARGS: ${{ steps.init.outputs.build_opts }}
|
|
run: |
|
|
cd dist
|
|
pip wheel -v wxPython-${{ env.VERSION }}.tar.gz
|
|
|
|
- name: Simple smoke test
|
|
run: |
|
|
cd dist
|
|
pip install wxpython-*.whl
|
|
python -c "import wx; print(wx); print(wx.version()); print(wx.PlatformInfo)"
|
|
pip uninstall --yes wxPython
|
|
|
|
- name: Save wheel as job artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: wxPython-wheel-${{ matrix.os }}-${{ steps.init.outputs.canonical_id }}
|
|
path: dist/wxpython-*.whl
|
|
|
|
upload-wheels-to-extras:
|
|
name: Upload wheels to extras on wxpython.org
|
|
needs: build-wheels
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ ubuntu-20.04, ubuntu-22.04, ubuntu-24.04 ]
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
- name: Download all the dists
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
pattern: wxPython-wheel-${{ matrix.os }}-*
|
|
path: dist/
|
|
merge-multiple: true
|
|
- name: Install SSH key
|
|
uses: shimataro/ssh-key-action@v2
|
|
with:
|
|
key: ${{ secrets.RIOBU_SSH_KEY }}
|
|
known_hosts: ${{ secrets.RIOBU_KNOWN_HOSTS }}
|
|
- name: SCP wheels
|
|
run: |
|
|
scp -p dist/* rbot.wxpython@riobu.com:wxpython-extras/htdocs/wxPython4/extras/linux/gtk3/${{ matrix.os }}/
|