Try10 #19
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
name: "Build wheels and deploy" | |
# on: | |
# push: | |
# tags: | |
# - "*" | |
on: | |
push: | |
branches: | |
- main | |
jobs: | |
build: | |
name: Build with Pip | |
runs-on: ${{ matrix.platform }} | |
strategy: | |
fail-fast: false | |
matrix: | |
# platform: [ubuntu-latest, macos-latest] | |
platform: [ubuntu-latest] | |
python-version: [3.9] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install GNU Fortran | |
uses: modflowpy/install-gfortran-action@v1 | |
- name: Install GSL | |
run: sudo apt-get -y install libgsl-dev | |
- name: Build and install | |
run: pip install . | |
- name: Install pytest | |
run: | | |
pip install pytest | |
pip install numpy | |
- name: Test | |
run: pytest tests | |
build_sdist: | |
name: Build sdist | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: Build SDist | |
run: pipx run build --sdist | |
- name: Check metadata | |
run: pipx run twine check dist/* | |
- uses: actions/upload-artifact@v3 | |
with: | |
path: dist/*.tar.gz | |
build_wheels: | |
name: Wheels on ${{ matrix.platform }} | |
runs-on: ${{ matrix.platform }} | |
strategy: | |
fail-fast: false | |
matrix: | |
#platform: [ubuntu-latest, macos-latest] | |
platform: [ubuntu-latest] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
# - name: Install GNU Fortran | |
# uses: modflowpy/install-gfortran-action@v1 | |
# - name: Install GSL | |
# run: | | |
# wget https://mirror.ibcp.fr/pub/gnu/gsl/gsl-2.7.1.tar.gz | |
# tar -zxvf gsl-2.7.1.tar.gz | |
# cd gsl-2.7.1 | |
# ./configure | |
# make | |
# sudo make install | |
# cd .. | |
# - name: which gsl | |
# run: which gsl-config | |
# - name: Install ninja | |
# run: sudo apt-get -y install ninja-build | |
- uses: pypa/[email protected] | |
env: | |
CIBW_ARCHS_MACOS: auto universal2 | |
CIBW_SKIP: pp* cp36-* *-musllinux_x86_64 *_i686 | |
CIBW_BEFORE_BUILD: > | |
apt-get -y install wget && | |
apt-get -y install tar && | |
wget https://mirror.ibcp.fr/pub/gnu/gsl/gsl-2.7.1.tar.gz && | |
tar -zxvf gsl-2.7.1.tar.gz && | |
cd gsl-2.7.1 && | |
./configure && | |
make && | |
make install && | |
cd .. && | |
- name: Verify clean directory | |
run: git diff --exit-code | |
shell: bash | |
- uses: actions/upload-artifact@v3 | |
with: | |
path: wheelhouse/*.whl | |
# upload_all: | |
# name: Upload if release | |
# needs: [build_wheels, build_sdist] | |
# runs-on: ubuntu-latest | |
# if: github.event_name == 'release' && github.event.action == 'published' | |
# steps: | |
# - uses: actions/setup-python@v4 | |
# with: | |
# python-version: "3.x" | |
# - uses: actions/download-artifact@v3 | |
# with: | |
# name: artifact | |
# path: dist | |
# - uses: pypa/gh-action-pypi-publish@master | |
# with: | |
# password: ${{ secrets.PYPI_TOKEN }} |