pyjnius/.github/workflows/push.yml

99 lines
2.5 KiB
YAML

on: push
name: Continuous Integration
jobs:
Tests:
name: base
strategy:
matrix:
python:
- '2.7'
- '3.6'
- '3.7'
- '3.8'
java:
- '8'
# - '9' # commented out just for faster CI
- '10'
# - '11' # commented out just for faster CI
- '12'
os:
- 'ubuntu-latest'
- 'windows-latest'
- 'macOs-latest'
architecture:
- 'x64'
- 'x86'
# exclude problematic combinations
exclude:
- os: windows-latest
python: '2.7'
- os: macOs-latest
architecture: 'x86'
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@master
- name: Setup python
uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python }}
- name: Setup java
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
architecture: ${{ matrix.architecture }}
- name: install-windows
if: matrix.os == 'windows-latest'
run: |
"%VS140COMNTOOLS%../../VC/vcvarsall.bat"
echo "$INCLUDE"
set INCLUDE "C:/Program Files (x86)/Windows Kits/10/Include/10.0.10240.0/ucrt"
pip install --timeout=120 -U setuptools cython
pip install --timeout=120 -vv .[dev,ci]
- name: install
if: matrix.os == 'ubuntu-latest'
run: |
pip install --timeout=120 -U setuptools cython
pip install --timeout=120 .[dev,ci]
- name: install-osx
if: matrix.os == 'macOs-latest'
run: |
brew install ant
pip install --timeout=120 --user -U setuptools cython
pip install --timeout=120 --user .[dev,ci]
- name: test-windows
if: matrix.os == 'windows-latest'
run: |
$env:PATH +=";$env:JAVA_HOME\jre\bin\server\;$env:JAVA_HOME\jre\bin\client\;$env:JAVA_HOME\bin\server\"
$env:CLASSPATH ="../build/test-classes;../build/classes"
ant all
cd tests
nosetests -v
- name: test
if: matrix.os == 'ubuntu-latest'
run: |
ant all
cd tests
CLASSPATH=../build/test-classes:../build/classes nosetests -v
- name: test
if: matrix.os == 'macOs-latest'
run: |
ant all
cd tests
CLASSPATH=../build/test-classes:../build/classes python -m nose -v
# - name: coveralls
# run: python -m coveralls
# env:
# COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}