Skip to content

add text coverage to PR comment #606

add text coverage to PR comment

add text coverage to PR comment #606

Workflow file for this run

name: Run tests
on: [pull_request]
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
postgres_version: ['14', '16']
services:
postgres:
image: postgres:${{ matrix.postgres_version }}
env:
POSTGRES_DB: ndoh_hub
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
ports:
- 5432:5432
redis:
image: redis:6.0
ports:
- 6379:6379
env:
HUB_DATABASE: postgres://postgres:postgres@localhost:5432/ndoh_hub
steps:
- uses: actions/checkout@v2
- name: Install gettext
run: sudo apt-get install gettext
- uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ hashFiles('requirements.txt', 'requirements-dev.txt') }}-pip
- uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Install dependancies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt -r requirements-dev.txt
django-admin compilemessages
- name: Lint
run: |
flake8
python manage.py makemigrations registrations changes eventstore \
--dry-run | grep 'No changes detected' || \
(echo 'There are changes which require migrations.' && exit 1)
black --check .
isort -c -rc .
- name: Test coverage
run: |
py.test --cov --cov-report=term-missing | tee coverage.txt
- name: Exteact coverage
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
COVERAGE=$(grep -oP 'TOTAL\s+\d+\s+\d+\s+\d+\s+\d+\s+\K\d+%' coverage.txt)
COMMENT="Test coverage: $COVERAGE"
echo "::set-output name=comment::$COMMENT"
- name: Post coverage comment
run: |
curl -H "Authorization: token $GITHUB_TOKEN" \
-X POST \
-d "{\"body\":\"${{ steps.comment.outputs.comment }}\"}" \
"https://api.github.com/repos/${{ github.repository }} \
/issues/${{ github.event.issue.number }}/comments"