Skip to content

v0.0.7-alpha3

v0.0.7-alpha3 #28

Workflow file for this run

name: Publish Python Package
on:
release:
types: [published]
permissions:
contents: read
jobs:
release-build:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57
with:
working-directory: "."
enable-cache: true
cache-dependency-glob: |
**/*requirements*.txt
**/*requirements*.in
**/*constraints*.txt
**/*constraints*.in
**/pyproject.toml
**/uv.lock
**/*.py.lock
- name: Build wheels
uses: pypa/cibuildwheel@v3.4.1
with:
output-dir: dist
env:
CIBW_BEFORE_ALL_LINUX: |
curl -L -o premake.tar.gz https://github.com/premake/premake-core/archive/refs/tags/v5.0.0-beta8.tar.gz
tar -xvf premake.tar.gz
cd premake-core-5.0.0-beta8
yum install -y libuuid-devel make gcc
make -f Bootstrap.mak linux
mkdir ../bin
cp ./bin/release/premake5 ../bin/premake5
CIBW_BEFORE_ALL_MACOS: |
curl -L -o premake.tar.gz https://github.com/premake/premake-core/archive/refs/tags/v5.0.0-beta8.tar.gz
tar -xvf premake.tar.gz
cd premake-core-5.0.0-beta8
make -f Bootstrap.mak osx
mkdir ../bin
cp ./bin/release/premake5 ../bin/premake5
CIBW_BEFORE_ALL_WINDOWS: |
curl -L -o premake.zip https://github.com/premake/premake-core/archive/refs/tags/v5.0.0-beta8.zip
Expand-Archive premake.zip -DestinationPath .
cd premake-core-5.0.0-beta8
Bootstrap.bat
mkdir ..\bin -Force
Copy-Item .\bin\release\premake5.exe ..\bin\premake5.exe
- name: Upload distributions
uses: actions/upload-artifact@v4
with:
name: release-dists-${{ matrix.os }}
path: dist/
pypi-publish:
runs-on: ubuntu-latest
needs:
- release-build
permissions:
# IMPORTANT: this permission is mandatory for trusted publishing
id-token: write
# Dedicated environments with protections for publishing are strongly recommended.
# For more information, see: https://docs.github.com/en/actions/deployment/targeting-different-environments/using-environments-for-deployment#deployment-protection-rules
environment:
name: pypi
url: https://pypi.org/project/intrynzic-raptor/
# OPTIONAL: uncomment and update to include your PyPI project URL in the deployment status:
# url: https://pypi.org/p/YOURPROJECT
#
# ALTERNATIVE: if your GitHub Release name is the PyPI project version string
# ALTERNATIVE: exactly, uncomment the following line instead:
# url: https://pypi.org/project/YOURPROJECT/${{ github.event.release.name }}
steps:
- name: Retrieve release distributions
uses: actions/download-artifact@v4
with:
pattern: release-dists-*
merge-multiple: true
path: dist/
- name: Verify distributions
run: ls -lh dist
- name: Publish release distributions to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
packages-dir: dist/