Skip to content

Release v0.4.0

Release v0.4.0 #31

Workflow file for this run

name: Release to PyPI
on:
release:
types: [ published ]
concurrency:
group: pypi-release
jobs:
build:
name: Build the distribution
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ vars.PYTHON_VERSION }}
- name: Install Poetry
run: curl -sSL https://install.python-poetry.org | python3 -
- name: Validate Release Version
run: poetry version -s | grep -E "$(echo "$GITHUB_REF_NAME" | tr -d 'v')"
- name: Build Basilisp distributions
run: poetry build
- name: Upload build artifact
uses: actions/upload-artifact@v4
with:
path: dist/
if-no-files-found: error
github-release:
runs-on: ubuntu-latest
environment:
name: release
name: >-
Sign the Python distribution with Sigstore and upload them to GitHub Release
needs:
- build
permissions:
contents: write
id-token: write
steps:
- name: Download all the dists
uses: actions/download-artifact@v4
with:
path: dist/
- name: Sign the dists with Sigstore
uses: sigstore/[email protected]
with:
inputs: >-
./dist/*.tar.gz
./dist/*.whl
- name: Upload artifact signatures to GitHub Release
env:
GITHUB_TOKEN: ${{ github.token }}
run: gh release upload "$GITHUB_REF_NAME" dist/** --repo "$GITHUB_REPOSITORY"
pypi-release:
runs-on: ubuntu-latest
environment:
name: release
name: Release to PyPI
needs:
- build
permissions:
id-token: write
steps:
- name: Download build artifact
uses: actions/download-artifact@v4
with:
path: dist/
merge-multiple: true
- name: Publish package distributions to PyPI
uses: pypa/[email protected]