Merge pull request #122 from LPSim/patch-update-action-occasion #204
This file contains 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: | |
push: | |
branches: | |
- master | |
tags: | |
- '*' | |
workflow_dispatch: | |
jobs: | |
test: | |
uses: ./.github/workflows/pytest.yml | |
upload-to-pypi: | |
needs: test | |
runs-on: ubuntu-latest | |
if: github.ref_type == 'tag' | |
environment: | |
name: release | |
url: https://pypi.org/p/lpsim/ | |
permissions: | |
id-token: write # IMPORTANT: this permission is mandatory for trusted publishing | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 # Shallow clones should be disabled for setuptools_scm | |
fetch-tags: true # Fetch all tags for setuptools_scm | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.10' | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install ".[dev]" | |
- name: Fetch tags and print | |
run: | | |
git tag | |
python -m setuptools_scm | |
- name: Create distributions | |
run: | | |
python -m build | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: package | |
path: dist/* | |
- name: Publish package distributions to TestPyPI | |
uses: pypa/gh-action-pypi-publish@release/v1 | |
upload-to-test-pypi: | |
needs: test | |
if: github.ref_type != 'tag' | |
runs-on: ubuntu-latest | |
environment: | |
name: test-release | |
url: https://test.pypi.org/p/lpsim/ | |
permissions: | |
id-token: write # IMPORTANT: this permission is mandatory for trusted publishing | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 # Shallow clones should be disabled for setuptools_scm | |
fetch-tags: true # Fetch all tags for setuptools_scm | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.10' | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install ".[dev]" | |
- name: Fetch tags and print | |
run: | | |
git tag | |
python -m setuptools_scm | |
- name: Create distributions | |
run: | | |
python -m build | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: package | |
path: dist/* | |
- name: Publish package distributions to TestPyPI | |
uses: pypa/gh-action-pypi-publish@release/v1 | |
with: | |
repository-url: https://test.pypi.org/legacy/ |