Skip to content

.github: workflow updated, fixes #57

.github: workflow updated, fixes

.github: workflow updated, fixes #57

Workflow file for this run

name: Publish Python distribution to PyPI and TestPyPI
on:
push:
branches: [ master ]
tags:
- 'v*.*.*-*'
pull_request:
branches: [ master ]
jobs:
build-wheel-test:
name: Test building wheel packages on linux
strategy:
matrix:
arch: [x86_64, x86, aarch64, armv7]
runs-on: ubuntu-latest
steps:
- name: Setup alpine chroot for ${{ matrix.arch }}
uses: jirutka/setup-alpine@v1
with:
branch: edge
arch: ${{ matrix.arch }}
packages: >
build-base
curl
python3
- name: Check out repository code
uses: actions/checkout@v4
- name: Create build env
run: python -m venv ./venv && . ./venv/bin/activate && pip install --upgrade pip build
shell: alpine.sh {0}
- name: Build package
run: . ./venv/bin/activate && python -m build
shell: alpine.sh {0}
- name: Store the distribution packages
uses: actions/upload-artifact@v4
with:
name: test-packages-linux-${{ matrix.arch }}
path: dist/
build-sdist:
name: Build sdist package
runs-on: ubuntu-latest
steps:
- name: Install extra packages
run: sudo apt-get install --no-install-recommends -y gcc-mingw-w64 mingw-w64-i686-dev mingw-w64-x86-64-dev build-essential python3-virtualenv
- name: Check out repository code
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Prebuild LUA for windows i686
run: cd lua && ./build-mingw.sh i686-w64-mingw32 i686
- name: Prebuild LUA for windows x86_64
run: cd lua && ./build-mingw.sh x86_64-w64-mingw32 x86_64
- name: Initialize venv
run: virtualenv /tmp/build_venv && /tmp/build_venv/bin/pip --require-virtualenv install --upgrade pip build
- name: Build package
run: /tmp/build_venv/bin/python -m build --sdist
- name: Store the distribution packages
uses: actions/upload-artifact@v4
with:
name: package
path: dist/
publish-to-pypi:
name: Publish Python distribution to PyPI
if: ${{ startsWith(github.event.ref, 'refs/tags/v') }}
needs:
- build-sdist
- build-wheel-test
runs-on: ubuntu-latest
environment:
name: pypi
url: https://pypi.org/p/Python-Lua-Helper
permissions:
id-token: write
steps:
- name: Download all the dists
uses: actions/download-artifact@v4
with:
name: package
path: dist/
- name: Publish distribution to PyPI
uses: pypa/gh-action-pypi-publish@release/v1