# This workflows will build and upload a Python Package using Twine when a release is published # Conda-forge bot will pick up new PyPI version and automatically create new version # For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries name: CD on: release: types: [published] jobs: deploy: strategy: matrix: os: ["ubuntu-latest"] python-version: ["3.12"] runs-on: ${{ matrix.os }} environment: package steps: - name: Checkout uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install from source # This is required for the pre-commit tests shell: pwsh run: pip install . - name: Conda list shell: pwsh run: conda list - name: Build shell: pwsh run: | pip install twine wheel setuptools python setup.py sdist bdist_wheel - name: Publish to PyPI env: TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} shell: pwsh run: twine upload dist/*