feat:semver #11
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: Run UnitTests | |
on: | |
pull_request: | |
branches: | |
- dev | |
paths-ignore: | |
- 'ovos_tts_plugin_mimic/version.py' | |
- 'requirements/**' | |
- 'examples/**' | |
- '.github/**' | |
- '.gitignore' | |
- 'LICENSE' | |
- 'CHANGELOG.md' | |
- 'MANIFEST.in' | |
- 'README.md' | |
- 'scripts/**' | |
push: | |
branches: | |
- master | |
paths-ignore: | |
- 'ovos_tts_plugin_mimic/version.py' | |
- 'requirements/**' | |
- 'examples/**' | |
- '.github/**' | |
- '.gitignore' | |
- 'LICENSE' | |
- 'CHANGELOG.md' | |
- 'MANIFEST.in' | |
- 'README.md' | |
- 'scripts/**' | |
workflow_dispatch: | |
jobs: | |
unit_tests: | |
strategy: | |
max-parallel: 2 | |
matrix: | |
python-version: [ 3.7, 3.8, 3.9, "3.10" ] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install System Dependencies | |
run: | | |
sudo apt-get update | |
sudo apt install python3-dev | |
python -m pip install build wheel | |
- name: Install Mimic | |
run: | | |
sudo apt install -y curl | |
curl https://forslund.github.io/mycroft-desktop-repo/mycroft-desktop.gpg.key | sudo apt-key add - 2> /dev/null && echo "deb http://forslund.github.io/mycroft-desktop-repo bionic main" | sudo tee /etc/apt/sources.list.d/mycroft-desktop.list | |
sudo apt-get update | |
sudo apt install portaudio19-dev libpulse-dev mimic | |
- name: Install core repo | |
run: | | |
pip install . | |
- name: Install test dependencies | |
run: | | |
pip install pytest pytest-timeout pytest-cov | |
- name: Run unittests | |
run: | | |
pytest --cov=ovos_tts_plugin_mimic --cov-report xml test/unittests | |
# NOTE: additional pytest invocations should also add the --cov-append flag | |
# or they will overwrite previous invocations' coverage reports | |
# (for an example, see OVOS Skill Manager's workflow) | |
- name: Upload coverage | |
env: | |
CODECOV_TOKEN: ${{secrets.CODECOV_TOKEN}} | |
uses: codecov/codecov-action@v2 |