🌿 Fern Regeneration -- October 25, 2024 #119
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: Legacy Package CI | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
jobs: | |
build-unit: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: | |
- "3.9" | |
- "3.10" | |
- "3.11" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Python ${{ matrix.python-version }} Setup | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install system dependencies | |
shell: bash | |
run: | | |
sudo apt-get --yes update | |
sudo apt-get --yes install ffmpeg | |
- name: Install Python dependencies | |
shell: bash | |
run: | | |
pip install poetry | |
if [ -d /poetryenvs ]; then rm -rf ~/poetryenvs; fi | |
poetry config virtualenvs.path ~/poetryenvs | |
poetry install | |
- name: Run pylint | |
shell: bash | |
run: | | |
poetry run pylint src/hume/legacy --rcfile pylintrc | |
- name: Run mypy | |
shell: bash | |
run: | | |
poetry run mypy . | |
- name: Run pydocstyle | |
shell: bash | |
run: | | |
poetry run pydocstyle hume | |
- name: Run pytest | |
shell: bash | |
env: | |
HUME_DEV_API_KEY: ${{ secrets.HUME_DEV_API_KEY }} | |
run: | | |
poetry run pytest tests/custom/_legacy --cov=hume --cov-report=html --cov-report=xml --cov-branch -m "(not service) and (not microphone)" | |
- name: Upload HTML Coverage | |
uses: actions/upload-artifact@v4 | |
with: | |
name: hume-unit-coverage-html | |
path: hume/htmlcov | |
- name: Upload XML Coverage | |
uses: actions/upload-artifact@v4 | |
with: | |
name: hume-unit-coverage-xml | |
path: hume/coverage.xml | |
- name: Check Coverage | |
shell: bash | |
run: | | |
poetry run covcheck coverage.xml --group unit --line 40.0 --branch 20.0 | |
build-service: | |
runs-on: ubuntu-latest | |
if: github.event.pull_request.head.repo.fork == false | |
strategy: | |
matrix: | |
python-version: | |
- "3.10" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Python ${{ matrix.python-version }} Setup | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install system dependencies | |
shell: bash | |
run: | | |
sudo apt-get --yes update | |
sudo apt-get --yes install ffmpeg | |
- name: Install Python dependencies | |
shell: bash | |
run: | | |
pip install poetry | |
if [ -d /poetryenvs ]; then rm -rf ~/poetryenvs; fi | |
poetry config virtualenvs.path ~/poetryenvs | |
poetry install -E legacy | |
- name: Run pytest | |
shell: bash | |
env: | |
HUME_DEV_API_KEY: ${{ secrets.HUME_DEV_API_KEY }} | |
run: | | |
poetry run pytest tests/custom/_legacy --cov=hume --cov-report=html --cov-report=xml --cov-branch -m service | |
- name: Upload HTML Coverage | |
uses: actions/upload-artifact@v4 | |
with: | |
name: hume-service-coverage-html | |
path: hume/htmlcov | |
- name: Upload XML Coverage | |
uses: actions/upload-artifact@v4 | |
with: | |
name: hume-service-coverage-xml | |
path: hume/coverage.xml | |
- name: Check Coverage | |
shell: bash | |
run: | | |
poetry run covcheck coverage.xml --group service --line 40.0 --branch 20.0 | |
build-microphone: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: | |
- "3.10" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Python ${{ matrix.python-version }} Setup | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install system dependencies | |
shell: bash | |
run: | | |
sudo apt-get --yes update | |
sudo apt-get --yes install libasound2-dev libportaudio2 ffmpeg | |
- name: Install Python dependencies | |
shell: bash | |
run: | | |
pip install poetry | |
if [ -d /poetryenvs ]; then rm -rf ~/poetryenvs; fi | |
poetry config virtualenvs.path ~/poetryenvs | |
poetry install -E microphone | |
- name: Run pytest | |
shell: bash | |
env: | |
HUME_DEV_API_KEY: ${{ secrets.HUME_DEV_API_KEY }} | |
run: | | |
poetry run pytest tests/custom/_legacy -m microphone |