pytest could not even collect: actions.py imports yarl for URL joining, which Home Assistant ships but a bare CI python does not. The suite passed locally only because the venv had picked it up as a transitive dependency. The HACS check wants repository topics, which are GitHub-side metadata and so cannot come from the canonical Gitea repo; set on the mirror directly.
42 lines
973 B
YAML
42 lines
973 B
YAML
name: Validate
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
schedule:
|
|
# Catches HACS/hassfest rule changes without a push.
|
|
- cron: "0 6 * * 1"
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
hassfest:
|
|
name: hassfest
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: home-assistant/actions/hassfest@master
|
|
|
|
hacs:
|
|
name: HACS
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: hacs/action@main
|
|
with:
|
|
category: integration
|
|
# This is distributed as a custom repository, not a default one, so
|
|
# the brands check (which requires a home-assistant/brands PR) is
|
|
# deliberately skipped.
|
|
ignore: brands
|
|
|
|
tests:
|
|
name: pytest
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.13"
|
|
- run: pip install beautifulsoup4 pytest yarl
|
|
- run: pytest tests/ -q
|