name: test-n-publish on: [push, pull_request] jobs: test-n-publish: runs-on: ubuntu-latest strategy: matrix: python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 name: Set up Python ${{ matrix.python-version }} with: python-version: ${{ matrix.python-version }} - name: Install run: | python -m pip install wheel python -m pip install --upgrade pip python -m pip install setuptools python -m pip install codecov requests python -m pip install bs4 sudo apt-get -y install graphviz libgraphviz-dev pkg-config python -m pip install pygraphviz python -m pip install "kerncraft>=0.8.17" python -m pip install -e . - name: Test run: | coverage run -p tests/all_tests.py - uses: codecov/codecov-action@v3 - name: Build package run: | python setup.py build sdist bdist_wheel - name: Publish to PyPI if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') uses: pypa/gh-action-pypi-publish@release/v1 with: skip_existing: true user: __token__ password: ${{ secrets.pypi_password }}