name: build on: push: branches: - master - 'dev/**' pull_request: branches: [ master ] release: types: - published # Allows you to run this workflow manually from the Actions tab workflow_dispatch: jobs: build: name: Build distributions runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 name: Install Python with: python-version: "3.10" - name: Install dependencies run: | python -m pip install build - name: Build sdist run: python -m build - uses: actions/upload-artifact@v3 with: name: dist path: | dist/*.tar.gz dist/*.whl #------------------------------------------------------------------------------- deploy: needs: - build runs-on: ubuntu-latest environment: release permissions: id-token: write # Only publish when a Gitea Release is created. if: gitea.event_name == 'release' steps: - uses: actions/download-artifact@v3 with: name: dist path: dist - run: python3 -m pip install twine --user --break-system-packages - run: python3 -m pip install -U packaging --user --break-system-packages - run: TWINE_PASSWORD=${{ secrets.PYPI_PAT }} TWINE_USERNAME=bslathi19 python -m twine upload --repository-url ${{ vars.CI_API_URL }} dist/*