Support custom labels in sizelegend #2586
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Publish to PyPI | |
| on: | |
| pull_request: | |
| push: | |
| tags: ["v*"] | |
| concurrency: | |
| group: publish-pypi-{{ github.sha }} | |
| cancel-in-progress: false | |
| jobs: | |
| build-packages: | |
| name: Build packages | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - name: Get tags | |
| run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* | |
| shell: bash | |
| - uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.12" | |
| - name: Build package | |
| run: | | |
| python -m pip install --upgrade pip wheel setuptools setuptools_scm build twine | |
| python -m build --sdist --wheel . --outdir dist | |
| - name: Check files | |
| run: | | |
| ls dist | |
| shell: bash | |
| - name: Test wheels | |
| run: | | |
| pushd dist | |
| python -m pip install ultraplot*.whl | |
| version=$(python -c "import ultraplot; print(ultraplot.__version__)") | |
| echo "Version: $version" | |
| if [[ "$version" == "0."* ]]; then | |
| echo "Version is not set correctly!" | |
| exit 1 | |
| fi | |
| python -m twine check * | |
| popd | |
| shell: bash | |
| - name: Upload artifacts | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: dist-${{ github.sha }}-${{ github.run_id }}-${{ github.run_number }} | |
| path: dist/* | |
| if-no-files-found: error | |
| publish-pypi-test: | |
| name: Publish to TestPyPI | |
| needs: build-packages | |
| if: github.event_name != 'pull_request' | |
| environment: | |
| name: test | |
| url: https://test.pypi.org/project/ultraplot/ | |
| runs-on: ubuntu-latest | |
| permissions: | |
| id-token: write | |
| contents: read | |
| steps: | |
| - name: Download artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: dist-${{ github.sha }}-${{ github.run_id }}-${{ github.run_number }} | |
| path: dist | |
| - name: Check files | |
| run: | | |
| ls dist | |
| shell: bash | |
| - name: Publish to TestPyPI | |
| uses: pypa/gh-action-pypi-publish@release/v1 | |
| with: | |
| repository-url: https://test.pypi.org/legacy/ | |
| verbose: true | |
| skip-existing: true | |
| publish-pypi: | |
| name: Publish to PyPI | |
| needs: publish-pypi-test | |
| environment: | |
| name: prod | |
| url: https://pypi.org/project/ultraplot/ | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'push' | |
| permissions: | |
| id-token: write | |
| contents: read | |
| steps: | |
| - name: Download artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: dist-${{ github.sha }}-${{ github.run_id }}-${{ github.run_number }} | |
| path: dist | |
| - name: Check files | |
| run: | | |
| ls dist | |
| shell: bash | |
| - name: Publish to PyPI | |
| uses: pypa/gh-action-pypi-publish@release/v1 | |
| with: | |
| verbose: true | |
| skip-existing: true | |
| publish-github-release: | |
| name: Publish GitHub release | |
| needs: publish-pypi | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'push' | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Create GitHub release | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| generate_release_notes: true | |
| publish-zenodo: | |
| name: Publish Zenodo release | |
| needs: publish-github-release | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'push' | |
| permissions: | |
| contents: read | |
| env: | |
| ZENODO_ACCESS_TOKEN: ${{ secrets.ZENODO_ACCESS_TOKEN }} | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.12" | |
| - name: Install release tooling | |
| run: | | |
| python -m pip install --upgrade pip PyYAML | |
| shell: bash | |
| - name: Download artifacts | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: dist-${{ github.sha }}-${{ github.run_id }}-${{ github.run_number }} | |
| path: dist | |
| - name: Publish to Zenodo | |
| run: | | |
| python tools/release/publish_zenodo.py --dist-dir dist | |
| shell: bash |