name: Publish planoai to PyPI permissions: contents: read on: pull_request: release: types: [published] jobs: publish-pypi: runs-on: ubuntu-latest defaults: run: working-directory: ./cli steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Python uses: actions/setup-python@v4 with: python-version: "3.13" - name: Install build tools run: pip install build twine - name: Build package run: python -m build - name: Debug token (REMOVE THIS) env: TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }} run: | if [ -z "$TWINE_PASSWORD" ]; then echo "Token is empty!" else echo "Token is set (length: ${#TWINE_PASSWORD})" fi - name: Publish to PyPI env: TWINE_USERNAME: __token__ TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }} run: twine upload dist/*