2021-02-03 18:23:55 -05:00
|
|
|
name: build
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches:
|
2021-08-24 15:50:52 -04:00
|
|
|
- main
|
2021-02-03 18:23:55 -05:00
|
|
|
pull_request:
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
static-analysis:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
|
|
|
|
- name: Setup Python 3.6
|
|
|
|
uses: actions/setup-python@v2
|
|
|
|
with:
|
|
|
|
python-version: 3.6
|
|
|
|
|
|
|
|
- name: Install dependencies
|
2021-03-09 00:12:52 -05:00
|
|
|
run: tools/provision --force
|
2021-02-03 18:23:55 -05:00
|
|
|
|
|
|
|
- name: Running Test-Suite
|
|
|
|
run: |
|
|
|
|
source zulip-api-py3-venv/bin/activate
|
2021-03-04 17:05:38 -05:00
|
|
|
tools/lint --skip=gitlint
|
2021-02-03 18:23:55 -05:00
|
|
|
|
|
|
|
test:
|
2021-03-09 00:17:22 -05:00
|
|
|
runs-on: ${{ matrix.os }}
|
2021-02-03 18:23:55 -05:00
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
2021-03-09 00:17:22 -05:00
|
|
|
os: [ubuntu-latest, windows-latest]
|
2021-02-03 18:23:55 -05:00
|
|
|
python-version: [3.6, 3.7, 3.8, 3.9]
|
2021-03-09 00:17:22 -05:00
|
|
|
exclude:
|
|
|
|
- os: windows-latest
|
|
|
|
python-version: 3.6 # cryptography install fails on Windows with python 3.6 since pip is quite old.
|
2021-02-03 18:23:55 -05:00
|
|
|
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
|
|
|
|
- name: Setup Python ${{ matrix.python-version }}
|
|
|
|
uses: actions/setup-python@v2
|
|
|
|
with:
|
|
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
|
|
|
|
- name: Install dependencies
|
2021-03-09 00:17:22 -05:00
|
|
|
run: python tools/provision --force
|
2021-02-03 18:23:55 -05:00
|
|
|
|
2021-03-09 00:17:22 -05:00
|
|
|
- if: runner.os == 'Linux'
|
|
|
|
name: Running Test-Suite on Linux
|
2021-02-03 18:23:55 -05:00
|
|
|
run: |
|
|
|
|
source zulip-api-py3-venv/bin/activate
|
2021-08-24 18:13:17 -04:00
|
|
|
pytest --cov --cov-config=tools/.coveragerc --cov-report=xml
|
2021-02-03 18:23:55 -05:00
|
|
|
|
2021-03-09 00:17:22 -05:00
|
|
|
- if: runner.os == 'Windows'
|
|
|
|
name: Running Test-Suite on Windows
|
|
|
|
run: |
|
|
|
|
zulip-api-py3-venv\Scripts\Activate.ps1
|
2021-08-24 18:13:17 -04:00
|
|
|
pytest --cov --cov-config=tools\.coveragerc --cov-report=xml
|
2021-03-09 00:17:22 -05:00
|
|
|
|
2021-08-24 18:13:17 -04:00
|
|
|
- uses: codecov/codecov-action@v2
|
|
|
|
with:
|
|
|
|
files: coverage.xml
|