Skip to content

Commit

Permalink
added docs generation and testing to ci workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
klemen1999 committed Aug 30, 2024
1 parent 4963a7e commit 8705e58
Show file tree
Hide file tree
Showing 2 changed files with 97 additions and 1 deletion.
98 changes: 97 additions & 1 deletion .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,18 @@ on:
- 'tests/**'
- .github/workflows/ci.yaml

permissions:
pull-requests: write
contents: write
checks: write

jobs:
assigner:
runs-on: ubuntu-latest
steps:
- name: Auto-assign
uses: toshimaru/auto-author-assign@v2.1.1

pre-commit:
runs-on: ubuntu-latest
steps:
Expand All @@ -18,4 +29,89 @@ jobs:
ref: ${{ github.head_ref }}

- name: Run pre-commit
uses: pre-commit/action@v3.0.1
uses: pre-commit/action@v3.0.1

docs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}

- name: Install dependencies
run: |
pip install pydoctor
curl -L "https://raw.githubusercontent.com/luxonis/python-api-analyzer-to-json/main/gen-docs.py" -o "gen-docs.py"
- name: Build docs
run: |
python gen-docs.py depthai-nodes
tests:
needs:
- pre-commit
- docs
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
python-version: ['3.8', '3.10']

runs-on: ${{ matrix.os }}

steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: pip

- name: Install package
run: pip install -e .[dev]

- name: Run pytest
uses: pavelzw/pytest-action@v2
with:
emoji: false
custom-arguments: --cov depthai-nodes --cov-report xml --junit-xml pytest.xml

- name: Create Test Report
uses: EnricoMi/publish-unit-test-result-action@v2
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.8'
with:
files: pytest.xml

- name: Generate coverage badge
uses: tj-actions/coverage-badge-py@v2
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.8'
with:
output: media/coverage_badge.svg

- name: Generate coverage report
uses: orgoro/coverage@v3.1
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.8'
with:
coverageFile: coverage.xml
token: ${{ secrets.GITHUB_TOKEN }}

- name: Commit coverage badge
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.8'
run: |
git config --global user.name 'GitHub Actions'
git config --global user.email 'actions@github.com'
git diff --quiet media/coverage_badge.svg || {
git add media/coverage_badge.svg
git commit -m "[Automated] Updated coverage badge"
}
- name: Push changes
uses: ad-m/github-push-action@master
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.8'
with:
branch: ${{ github.head_ref }}
Empty file added media/.gitkeep
Empty file.

0 comments on commit 8705e58

Please sign in to comment.