mirror of
https://github.com/python-kasa/python-kasa.git
synced 2026-07-08 23:01:54 +00:00
Some checks failed
CI / Perform Lint Checks (3.13) (push) Has been cancelled
CI / Python 3.11 on macos-latest (push) Has been cancelled
CI / Python 3.12 on macos-latest (push) Has been cancelled
CI / Python 3.13 on macos-latest (push) Has been cancelled
CI / Python 3.11 on ubuntu-latest (push) Has been cancelled
CI / Python 3.12 on ubuntu-latest (push) Has been cancelled
CI / Python 3.13 on ubuntu-latest (push) Has been cancelled
CI / Python 3.11 on windows-latest (push) Has been cancelled
CI / Python 3.12 on windows-latest (push) Has been cancelled
CI / Python 3.13 on windows-latest (push) Has been cancelled
CodeQL Checks / Analyze (python) (push) Has been cancelled
Stale / stale (push) Has been cancelled
Update action versions and pin to full SHA commit hashes. Windows build parallelization is disabled to avoid hung CI.
89 lines
2.4 KiB
YAML
89 lines
2.4 KiB
YAML
---
|
|
name: CI
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- patch
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
- patch
|
|
- 'feat/**'
|
|
- 'fix/**'
|
|
- 'janitor/**'
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
lint:
|
|
name: Perform Lint Checks
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
python-version: [3.13]
|
|
steps:
|
|
- name: Checkout Source Files
|
|
id: checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
|
|
|
- name: Setup Environment
|
|
id: setup-environment
|
|
uses: ./.github/actions/setup
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
cache-pre-commit: true
|
|
uv-install-options: --all-extras
|
|
|
|
- name: Run pre-commit Checks
|
|
id: run-pre-commit
|
|
shell: bash
|
|
run: |
|
|
uv run pre-commit run --all-files --verbose
|
|
|
|
tests:
|
|
name: Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }}
|
|
needs: lint
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
python-version: [3.11, 3.12, 3.13]
|
|
os: [ubuntu-latest, macos-latest, windows-latest]
|
|
extras: [false, true]
|
|
exclude:
|
|
- os: macos-latest
|
|
extras: true
|
|
- os: windows-latest
|
|
extras: true
|
|
steps:
|
|
- name: Checkout Source Files
|
|
id: checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
|
|
|
- name: Setup Environment
|
|
id: setup-environment
|
|
uses: ./.github/actions/setup
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
uv-install-options: ${{ matrix.extras == true && '--all-extras' || '' }}
|
|
|
|
- name: Run PyTests with Code Coverage
|
|
id: run-pytests-with-code-coverage
|
|
shell: bash
|
|
run: |
|
|
if [[ "${{ runner.os }}" == "Windows" ]]; then
|
|
uv run pytest -n0 --cov kasa --cov-report xml
|
|
else
|
|
uv run pytest -n auto --cov kasa --cov-report xml
|
|
fi
|
|
|
|
- name: Upload Code Coverage to Codecov
|
|
id: upload-code-coverage-to-codecov
|
|
uses: codecov/codecov-action@57e3a136b779b570ffcdbf80b3bdc90e7fab3de2 # v6.0.0
|
|
with:
|
|
token: ${{ secrets.CODECOV_TOKEN }}
|