ci: test pupblishing on pypi using testpypi #12
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow mirrors the wheel.yml workflow, but it publishes to the test PyPI repository instead | |
# of the production one. | |
name: Test publishing wheels | |
on: [push, pull_request] | |
jobs: | |
windows-wheel: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Build windows wheel | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install build | |
python -m build | |
- name: Publish Windows wheel | |
run: | | |
pip install twine | |
twine upload --repository testpypi --skip-existing -u __token__ -p "${{ secrets.TEST_PYPI_API_TOKEN }}" dist/* | |
macos-x86-wheel: | |
runs-on: macos-13 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
# In order to build for x86_64 we lean into the cross build support of maturin | |
- name: Build Mac OS x86 wheel | |
uses: PyO3/maturin-action@v1 | |
with: | |
target: x86_64 | |
args: --release --out dist --find-interpreter | |
- name: Publish Mac OS x86 wheel | |
run: | | |
pip install twine | |
twine upload --repository testpypi --skip-existing -u __token__ -p "${{ secrets.TEST_PYPI_API_TOKEN }}" dist/* | |
manylinux-wheel: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build Manylinux wheel | |
run: | | |
docker build -t cargodock ./manylinux | |
docker run --rm -v ${PWD}:/io cargodock bash /io/manylinux/build_wheel.sh | |
- name: Publish Manylinux wheel | |
run: | | |
pip install twine | |
twine upload --repository testpypi --skip-existing -u __token__ -p "${{ secrets.TEST_PYPI_API_TOKEN }}" dist/* | |
macos-arm-wheel: | |
runs-on: macos-14 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Install latests rust toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
default: true | |
override: true | |
- name: Install Unix ODBC | |
run: | | |
brew install unixodbc | |
sudo ln -s /opt/homebrew/lib ~/lib | |
- name: Build Mac OS arm wheel | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install build | |
python -m build | |
- name: Publish Mac OS arm wheel | |
run: | | |
pip install twine | |
twine upload --repository testpypi --skip-existing -u __token__ -p "${{ secrets.TEST_PYPI_API_TOKEN }}" dist/* |