Skip to content

Merge branch 'main' of github.com:jsell-rh/hyperloop #96

Merge branch 'main' of github.com:jsell-rh/hyperloop

Merge branch 'main' of github.com:jsell-rh/hyperloop #96

Workflow file for this run

name: Release
on:
push:
branches: [main]
permissions:
contents: read
jobs:
release:
runs-on: ubuntu-latest
if: github.repository == 'jsell-rh/hyperloop'
permissions:
contents: write
id-token: write
outputs:
released: ${{ steps.semrel.outputs.released }}
version: ${{ steps.semrel.outputs.version }}
tag: ${{ steps.semrel.outputs.tag }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Python Semantic Release
id: semrel
uses: python-semantic-release/python-semantic-release@v10
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
root_options: "-vv"
build:
needs: release
if: needs.release.outputs.released == 'true'
runs-on: ubuntu-latest
steps:
- name: Checkout released tag
uses: actions/checkout@v4
with:
ref: ${{ needs.release.outputs.tag }}
- name: Install uv
uses: astral-sh/setup-uv@v5
- name: Set up Python
run: uv python install 3.12
- name: Build package
run: uv build
- name: Upload dist artifacts
uses: actions/upload-artifact@v4
with:
name: dist
path: dist/
if-no-files-found: error
publish-pypi:
needs: [release, build]
if: needs.release.outputs.released == 'true'
runs-on: ubuntu-latest
environment:
name: pypi
url: https://pypi.org/project/hyperloop/${{ needs.release.outputs.version }}/
permissions:
id-token: write
steps:
- name: Download dist artifacts
uses: actions/download-artifact@v4
with:
name: dist
path: dist/
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
publish-github-release:
needs: [release, build]
if: needs.release.outputs.released == 'true'
runs-on: ubuntu-latest
permissions:
contents: write
id-token: write
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Download dist artifacts
uses: actions/download-artifact@v4
with:
name: dist
path: dist/
- name: Upload to GitHub Release
uses: python-semantic-release/publish-action@v10
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
tag: ${{ needs.release.outputs.tag }}