diff --git a/examples/github-deploy-only.yml b/examples/github-deploy-only.yml new file mode 100644 index 00000000..3ee37d20 --- /dev/null +++ b/examples/github-deploy-only.yml @@ -0,0 +1,82 @@ +name: Build and upload to PyPI + +on: [push, pull_request] + +jobs: + build_wheels: + name: Build wheels on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-18.04, windows-latest, macos-latest] + + steps: + - uses: actions/checkout@v1 + + - uses: actions/setup-python@v1 + name: Install Python + with: + python-version: '3.7' + + - name: Install cibuildwheel + run: | + python -m pip install cibuildwheel==1.4.2 + + - name: Install Visual C++ for Python 2.7 + if: startsWith(matrix.os, 'windows') + run: | + choco install vcpython27 -f -y + + - name: Build wheels + run: | + python -m cibuildwheel --output-dir wheelhouse + + - uses: actions/upload-artifact@v1 + with: + name: wheels + path: ./wheelhouse + + build_sdist: + name: Build source distribution + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + + - uses: actions/setup-python@v1 + name: Install Python + with: + python-version: '3.7' + + - name: Build sdist + run: python setup.py sdist -d wheelhouse/ + + - uses: actions/upload-artifact@v2 + with: + path: wheelhouse/*.tar.gz + + upload_pypi: + needs: [build_wheels, build_sdist] + runs-on: ubuntu-latest + + steps: + - uses: actions/setup-python@v2 + with: + python-version: "3.8" + + - name: Install dependencies + run: python -m pip install twine + + - uses: actions/download-artifact@v2 + with: + name: artifact + path: wheelhouse + + - run: twine check wheelhouse/* + + - uses: pypa/gh-action-pypi-publish@master + with: + user: __token__ + password: ${{ secrets.pypi_password }} + packages_dir: ./wheelhouse/ + # To test: repository_url: https://test.pypi.org/legacy/ + if: github.event_name == 'release' && github.event.action == 'published' diff --git a/examples/github-deployment.yml b/examples/github-deployment.yml deleted file mode 100644 index d3e1c422..00000000 --- a/examples/github-deployment.yml +++ /dev/null @@ -1,47 +0,0 @@ -name: GH Deploy - -on: [push, pull_request] - -jobs: - build_wheels: - name: Build wheel on ${{ matrix.os }} - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-18.04, windows-latest, macos-latest] - - steps: - - uses: actions/checkout@v1 - - - uses: actions/setup-python@v1 - name: Install Python - with: - python-version: '3.7' - - - name: Install cibuildwheel - run: | - python -m pip install cibuildwheel==1.4.2 - - - name: Install Visual C++ for Python 2.7 - if: startsWith(matrix.os, 'windows') - run: | - choco install vcpython27 -f -y - - - name: Build wheel - run: | - python -m cibuildwheel --output-dir wheelhouse - - - uses: actions/upload-artifact@v1 - with: - name: wheels - path: ./wheelhouse - - - name: Publish to PyPI # (optional) automatically publish the whl to PyPI on a new tag/release - if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags') - uses: pypa/gh-action-pypi-publish@master #see https://github.com/pypa/gh-action-pypi-publish for setup - with: - user: __token__ - password: ${{ secrets.pypi_password }} - repository_url: https://test.pypi.org/legacy/ #TODO rm this line to use the "real" pypi - packages_dir: ./wheelhouse/ - diff --git a/examples/github-minimal.yml b/examples/github-minimal.yml index 2b4e801d..dca435d3 100644 --- a/examples/github-minimal.yml +++ b/examples/github-minimal.yml @@ -4,7 +4,7 @@ on: [push, pull_request] jobs: build_wheels: - name: Build wheel on ${{ matrix.os }} + name: Build wheels on ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: matrix: @@ -27,7 +27,7 @@ jobs: run: | choco install vcpython27 -f -y - - name: Build wheel + - name: Build wheels run: | python -m cibuildwheel --output-dir wheelhouse