Merge pull request #601 from bioimage-io/rm_version_number #60
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: Release | |
on: | |
push: | |
branches: | |
- main | |
jobs: | |
publish-pypi: | |
name: Publish to PyPI | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out the repository | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 2 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.9" | |
cache: 'pip' | |
- name: Install dependencies | |
run: | | |
pip install --upgrade pip | |
pip install wheel | |
pip install -e .[dev] | |
- name: Test with pytest | |
run: pytest | |
- name: Check version submodule imports | |
run: python scripts/generate_version_submodule_imports.py check | |
- name: Check if there is a parent commit | |
id: check-parent-commit | |
run: | | |
echo "sha=$(git rev-parse --verify --quiet HEAD^)" >> $GITHUB_OUTPUT | |
- name: Detect new version | |
id: check-version | |
if: steps.check-parent-commit.outputs.sha | |
uses: salsify/[email protected] | |
with: | |
create-tag: false | |
version-command: | | |
bash -o pipefail -c "cat bioimageio/spec/VERSION | jq -r '.version'" | |
- name: Push tag | |
id: tag-version | |
if: steps.check-version.outputs.previous-version != steps.check-version.outputs.current-version | |
uses: mathieudutour/[email protected] | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
custom_tag: ${{ steps.check-version.outputs.current-version }} | |
- name: Build package | |
run: | | |
python setup.py sdist bdist_wheel | |
- name: Publish package on PyPI | |
if: steps.tag-version.outputs.new_tag | |
uses: pypa/[email protected] | |
with: | |
user: __token__ | |
password: "${{ secrets.PYPI_TOKEN }}" | |
packages-dir: dist/ | |
- name: Publish the release notes | |
uses: release-drafter/[email protected] | |
with: | |
publish: "${{ steps.tag-version.outputs.new_tag != '' }}" | |
tag: "${{ steps.tag-version.outputs.new_tag }}" | |
env: | |
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" |