diff --git a/.github/workflows/python-publish.yml b/.github/workflows/python-publish.yml index bdaab28..b61bf9e 100644 --- a/.github/workflows/python-publish.yml +++ b/.github/workflows/python-publish.yml @@ -1,39 +1,40 @@ -# This workflow will upload a Python Package using Twine when a release is created -# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python#publishing-to-package-registries - -# This workflow uses actions that are not certified by GitHub. -# They are provided by a third-party and are governed by -# separate terms of service, privacy policy, and support -# documentation. - name: Upload Python Package -on: - release: - types: [published] +on: workflow_dispatch permissions: contents: read + id-token: write # Allow GitHub to mint tokens jobs: - deploy: - - runs-on: ubuntu-latest + pypi-publish: + name: Upload release to PyPI + runs-on: ubuntu-latest # Can use macos-latest if needed steps: - - uses: actions/checkout@v3 - - name: Set up Python - uses: actions/setup-python@v3 - with: - python-version: '3.x' - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install build - - name: Build package - run: python -m build - - name: Publish package - uses: pypa/gh-action-pypi-publish@27b31702a0e7fc50959f5ad993c78deac1bdfc29 - with: - user: __token__ - password: ${{ secrets.PYPI_API_TOKEN }} + - name: Checkout repo + uses: actions/checkout@v2 + + - name: Set up Python + uses: actions/setup-python@v3 + with: + python-version: "3.x" + + - name: Install dependencies + run: | + pip install setuptools + pip install twine + pip install wheel + sudo apt-get install jq + + - name: Clean previous builds + run: rm -rf dist + + - name: Build package + run: python setup.py sdist bdist_wheel + + - name: Publish package to PyPI + env: + TWINE_USERNAME: __token__ + TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }} + run: twine upload --repository-url https://upload.pypi.org/legacy/ dist/*