# Publishes the OpenHands PyPi package name: Publish PyPi Package on: workflow_dispatch: inputs: reason: description: "What are you publishing?" required: true type: choice options: - app server default: app server push: tags: - "*" jobs: release: runs-on: blacksmith-4vcpu-ubuntu-2204 # Run when manually dispatched for "app server" OR for tag pushes that don't contain '-cli' if: | (github.event_name == 'workflow_dispatch' && github.event.inputs.reason == 'app server') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') && !contains(github.ref, '-cli')) steps: - uses: actions/checkout@v4 - uses: useblacksmith/setup-python@v6 with: python-version: 3.12 - name: Install Poetry uses: snok/install-poetry@v1.4.1 with: virtualenvs-in-project: true virtualenvs-path: ~/.virtualenvs - name: Install Poetry Dependencies run: poetry install --no-interaction --no-root - name: Build poetry project run: ./build.sh - name: publish run: poetry publish -u __token__ -p ${{ secrets.PYPI_TOKEN }}