Skip to content

Update Python dep and Cython requirements (#67) #481

Update Python dep and Cython requirements (#67)

Update Python dep and Cython requirements (#67) #481

Workflow file for this run

name: Test pykrb5
on:
push:
branches:
- main
paths-ignore:
- CHANGELOG.md
- LICENSE
- README.md
pull_request:
branches:
- main
paths-ignore:
- CHANGELOG.md
- LICENSE
- README.md
release:
types:
- published
jobs:
build_sdist:
name: build sdist
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v5
with:
python-version: 3.12
- name: build sdist
run: |
python -m pip install build
python -m build --sdist
env:
KRB5_SKIP_EXTENSIONS: true
- uses: actions/upload-artifact@v4
with:
name: artifact-sdist
path: ./dist/*.tar.gz
build_wheels:
name: build wheels
needs:
- build_sdist
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: macOS-13
version: cp314-macosx_x86_64
prerelease: true
- os: macOS-15
version: cp314-macosx_arm64
prerelease: true
- os: macOS-13
version: cp313-macosx_x86_64
- os: macOS-15
version: cp313-macosx_arm64
- os: macOS-13
version: cp312-macosx_x86_64
- os: macOS-15
version: cp312-macosx_arm64
- os: macOS-13
version: cp311-macosx_x86_64
- os: macOS-15
version: cp311-macosx_arm64
- os: macOS-13
version: cp310-macosx_x86_64
- os: macOS-15
version: cp310-macosx_arm64
- os: macOS-13
version: cp39-macosx_x86_64
- os: macOS-15
version: cp39-macosx_arm64
steps:
- uses: actions/download-artifact@v5
with:
name: artifact-sdist
path: ./
- name: extract sdist
run: |
tar xf krb5-*.tar.gz
mv krb5-*/* .
rm -r krb5-*/
rm krb5-*.tar.gz
- name: build wheel
uses: pypa/cibuildwheel@v3.1.4
env:
CIBW_BUILD: ${{ matrix.version }}
CIBW_BUILD_VERBOSITY: 1
CIBW_PRERELEASE_PYTHONS: ${{ matrix.prerelease || 'false' }}
- uses: actions/upload-artifact@v4
with:
path: ./wheelhouse/*.whl
name: artifact-wheel-${{ matrix.version }}
test:
name: test
needs:
- build_sdist
- build_wheels
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- macOS-latest
python-version:
- 3.9
- '3.10'
- '3.11'
- '3.12'
- '3.13'
- '3.14-dev'
provider:
- mit
- heimdal
exclude:
- os: macOS-latest
provider: mit
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- uses: actions/download-artifact@v5
with:
pattern: artifact-*
merge-multiple: true
path: ./dist
- name: Test
run: sudo -E build_helpers/run-ci.sh
env:
KRB5_PROVIDER: ${{ matrix.provider }}
PYTEST_ADDOPTS: --color=yes
- name: Upload Test Results
if: always()
uses: actions/upload-artifact@v4
with:
name: Unit Test Results (${{ matrix.os }} ${{ matrix.provider }} ${{ matrix.python-version }})
path: ./junit/test-results.xml
publish:
name: publish
needs:
- test
runs-on: ubuntu-latest
permissions:
# IMPORTANT: this permission is mandatory for trusted publishing
id-token: write
steps:
- uses: actions/download-artifact@v5
with:
pattern: artifact-*
merge-multiple: true
path: ./dist
- name: Publish
if: startsWith(github.ref, 'refs/tags/v')
uses: pypa/gh-action-pypi-publish@release/v1