diff options
| author | Michael Williamson <mike@zwobble.org> | 2021-01-25 20:31:22 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2021-01-27 14:01:22 +0000 |
| commit | 615d65fa173824db6654d0c4e078a020924f865a (patch) | |
| tree | 1508bb50752a3fb7280c8ca8f22d5a020c6adb9e /.github | |
| parent | db51e965e0fdd2250fa46b23800ab35426e09279 (diff) | |
Replace Travis with GitHub actions
Diffstat (limited to '.github')
| -rw-r--r-- | .github/workflows/build.yml | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..a422fd5 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,83 @@ +name: Build + +on: [push, pull_request] + +jobs: + tests: + runs-on: ${{ matrix.os }} + + strategy: + matrix: + os: [ubuntu-20.04, macos-10.15] + python-version: [2.7, 3.5, 3.6, 3.7, 3.8, 3.9, pypy2, pypy3] + + steps: + + - uses: actions/checkout@v2 + + - name: Use Python ${{ matrix.python-version }} + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + + - run: pip install tox virtualenv + + - run: "make jq.c" + + - run: tox -e py + + build_sdist: + name: Build source distribution + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + + - uses: actions/setup-python@v2 + name: Use Python 3.7 + with: + python-version: '3.7' + + - run: make jq.c + + - run: pip install build + + - name: Build sdist + run: python -m build --sdist + + - uses: actions/upload-artifact@v2 + with: + path: dist/*.tar.gz + + build_wheels: + name: Build wheels on ${{ matrix.os }} + + runs-on: ${{ matrix.os }} + if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/') + + strategy: + matrix: + os: [ubuntu-20.04, macos-10.15] + python-version: [3.7] + + steps: + + - uses: actions/checkout@v2 + + - name: Use Python ${{ matrix.python-version }} + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + + - run: python -m pip install cibuildwheel==1.8.0 twine virtualenv + + - run: | + python3 -m cibuildwheel --output-dir wheelhouse + twine check wheelhouse/*.whl + env: + CIBW_BEFORE_BUILD: "pip install cython==0.29.16 && cython {project}/jq.pyx" + CIBW_TEST_REQUIRES: "-r test-requirements.txt" + CIBW_TEST_COMMAND: "nosetests {project}/tests" + + - uses: actions/upload-artifact@v2 + with: + path: ./wheelhouse/*.whl |
