name: CI on: push: pull_request: jobs: checks: name: Checks runs-on: ubuntu-latest steps: - uses: https://github.com/actions/checkout@v4 - uses: https://github.com/actions/setup-python@v5 with: python-version: "3.12" - name: Install build dependencies run: pip install ".[dev]" build twine - name: Lint run: ruff check . - name: Format check run: ruff format --check . - run: pytest publish: name: Publish to PyPI registry if: startsWith(github.ref, 'refs/tags/') needs: checks runs-on: ubuntu-latest steps: - uses: https://github.com/actions/checkout@v4 - uses: https://github.com/actions/setup-python@v5 with: python-version: "3.12" - name: Install build dependencies run: pip install ".[dev]" build twine - name: Set package version from the tag run: sed -i "s/^__version__ = .*/__version__ = \"${GITHUB_REF_NAME#v}\"/" src/openrgb_hue/__init__.py - name: Build sdist and wheel run: python -m build - name: Publish to Gitea PyPI registry run: twine upload --repository-url https://dev.pivoine.art/api/packages/valknar/pypi dist/* env: TWINE_USERNAME: valknar TWINE_PASSWORD: ${{ secrets.PACKAGE_TOKEN }}