Files
semantica/.github/workflows/release.yml
T

56 lines
1.3 KiB
YAML

name: Release
on:
push:
tags:
- 'v*'
jobs:
release:
name: Create Release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install build twine
- name: Extract version from tag
id: tag
run: |
VERSION=${GITHUB_REF#refs/tags/v}
echo "VERSION=$VERSION" >> $GITHUB_OUTPUT
echo "Tag version: $VERSION"
- name: Build package
run: python -m build
- name: Check package
run: twine check dist/*
- name: Create GitHub Release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ github.ref_name }}
name: Release ${{ steps.tag.outputs.VERSION }}
body_path: CHANGELOG.md
draft: false
prerelease: false
generate_release_notes: true
# PyPI publishing is intentionally disabled for manual control
# To publish to PyPI manually:
# 1. Ensure PYPI_API_TOKEN secret is configured in repository settings
# 2. Run: twine upload dist/*
# This prevents accidental publishing of wrong versions