From c45abceeb60d9586fd0555a501e673504a2b924d Mon Sep 17 00:00:00 2001 From: Filipe Fernandes Date: Wed, 18 Oct 2023 15:22:38 -0300 Subject: [PATCH] add pypi autopublish --- .github/workflows/pypi.yml | 54 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 .github/workflows/pypi.yml diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml new file mode 100644 index 0000000..c5c82ca --- /dev/null +++ b/.github/workflows/pypi.yml @@ -0,0 +1,54 @@ +name: Publish to PyPI + +on: + pull_request: + push: + branches: + - main + release: + types: + - published + +defaults: + run: + shell: bash + +jobs: + packages: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: "3.x" + + - name: Get tags + run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* + + - name: Install build tools + run: | + python -m pip install --upgrade build + + - name: Build sdist and binary wheel + run: python -m build --sdist --wheel . --outdir dist + + - name: CheckFiles + run: | + ls dist + python -m pip install --upgrade check-manifest + check-manifest --verbose + + - name: Test wheels + run: | + cd dist && python -m pip install *.whl + python -m pip install --upgrade twine + python -m twine check * + + - name: Publish a Python distribution to PyPI + if: success() && github.event_name == 'release' + uses: pypa/gh-action-pypi-publish@release/v1 + with: + user: __token__ + password: ${{ secrets.PYPI_PASSWORD }}