Skip to content

🌿 Fern Regeneration -- October 25, 2024 #119

🌿 Fern Regeneration -- October 25, 2024

🌿 Fern Regeneration -- October 25, 2024 #119

Workflow file for this run

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