-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #62 from mraspaud/fix-deploy-version-numbers
- Loading branch information
Showing
3 changed files
with
29 additions
and
67 deletions.
There are no files selected for viewing
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 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,9 @@ | ||
name: Deploy sdist and wheels | ||
|
||
|
||
on: | ||
push: | ||
tags: | ||
- v* | ||
pull_request: | ||
release: | ||
types: | ||
- published | ||
|
@@ -18,7 +18,7 @@ jobs: | |
- name: Create sdist | ||
shell: bash -l {0} | ||
run: | | ||
pip install -q build | ||
python -m pip install -q build | ||
python -m build -s | ||
- name: Upload sdist to build artifacts | ||
|
@@ -27,68 +27,46 @@ jobs: | |
name: sdist | ||
path: dist/*.tar.gz | ||
|
||
|
||
build_wheels: | ||
name: "Build wheels on ${{ matrix.os }} ${{ matrix.cibw_archs }}" | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [windows-latest, macos-latest] | ||
python-version: ["3.7", "3.8", "3.9", "3.10"] | ||
include: | ||
# Using pythons inside a docker image to provide all the Linux | ||
# python-versions permutations. | ||
- name: manylinux 64-bit | ||
os: ubuntu-latest | ||
python-version: 3.8 | ||
docker-image: manylinux2014_x86_64 | ||
- os: windows-2019 | ||
cibw_archs: "AMD64 ARM64" | ||
- os: macos-11 | ||
cibw_archs: "x86_64 arm64" | ||
- os: "ubuntu-20.04" | ||
cibw_archs: "aarch64" | ||
- os: "ubuntu-20.04" | ||
cibw_archs: "x86_64" | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
- run: | | ||
git fetch --prune --unshallow | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v4 | ||
- name: Set up QEMU | ||
if: runner.os == 'Linux' | ||
uses: docker/setup-qemu-action@v3 | ||
with: | ||
python-version: "${{ matrix.python-version }}" | ||
|
||
- name: Install dependencies | ||
run: | | ||
python -m pip install -U -q pip Cython wheel setuptools twine numpy build | ||
platforms: all | ||
|
||
- name: Build and install macOS/Windows wheel | ||
if: matrix.os != 'ubuntu-latest' | ||
# see https://setuptools.readthedocs.io/en/latest/build_meta.html | ||
run: | | ||
python -m build | ||
pip install --find-links=./dist/ python-geotiepoints | ||
- name: Build Linux wheels inside docker | ||
if: matrix.os == 'ubuntu-latest' | ||
run: | | ||
docker run \ | ||
-e PLAT=${{ matrix.docker-image }} \ | ||
-e USE_OMP=1 \ | ||
-v `pwd`:/io \ | ||
quay.io/pypa/${{ matrix.docker-image }} \ | ||
/io/continuous_integration/build-manylinux-wheels.sh | ||
- name: Build wheels | ||
uses: pypa/[email protected] | ||
env: | ||
CIBW_SKIP: "cp36-* cp37-* cp38-* pp* *-manylinux_i686 *-musllinux_i686 *-musllinux_aarch64 *-win32" | ||
CIBW_ARCHS: "${{ matrix.cibw_archs }}" | ||
CIBW_TEST_SKIP: "*_arm64 *_universal2:arm64" | ||
|
||
- name: Check version number from inside wheel | ||
if: matrix.docker-image != 'manylinux2014_i686' | ||
run: | | ||
mv geotiepoints unused_src_to_prevent_local_import | ||
python -m pip install --find-links=./dist/ python-geotiepoints | ||
python -c "import geotiepoints; print(geotiepoints.__file__, geotiepoints.__version__)" | ||
python -c "import geotiepoints; assert 'unknown' not in geotiepoints.__version__, 'incorrect version found'" | ||
- name: Upload wheel(s) as build artifacts | ||
uses: actions/upload-artifact@v3 | ||
- uses: actions/upload-artifact@v3 | ||
with: | ||
name: wheels | ||
path: dist/*.whl | ||
path: ./wheelhouse/*.whl | ||
|
||
upload_test_pypi: | ||
upload_to_pypi: | ||
needs: [build_sdist, build_wheels] | ||
runs-on: ubuntu-latest | ||
steps: | ||
|
@@ -102,28 +80,13 @@ jobs: | |
with: | ||
name: wheels | ||
path: dist | ||
- name: Publish package to PyPI | ||
if: github.event.action != 'published' | ||
- name: Publish package to Test PyPI | ||
if: github.event.action != 'published' && github.event_name == 'push' | ||
uses: pypa/[email protected] | ||
with: | ||
user: __token__ | ||
password: ${{ secrets.test_pypi_password }} | ||
repository_url: https://test.pypi.org/legacy/ | ||
|
||
upload_pypi: | ||
needs: [build_sdist, build_wheels] | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Download sdist artifact | ||
uses: actions/download-artifact@v3 | ||
with: | ||
name: sdist | ||
path: dist | ||
- name: Download wheels artifact | ||
uses: actions/download-artifact@v3 | ||
with: | ||
name: wheels | ||
path: dist | ||
- name: Publish package to PyPI | ||
if: github.event.action == 'published' | ||
uses: pypa/[email protected] | ||
|
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