Skip to content

chore(release): Release current version as 1.3.0 (#242) #4

chore(release): Release current version as 1.3.0 (#242)

chore(release): Release current version as 1.3.0 (#242) #4

Workflow file for this run

name: publish fgpyo
on:
push:
tags: '[0-9]+.[0-9]+.[0-9]+'
jobs:
on-main-branch-check:
runs-on: ubuntu-24.04
outputs:
on_main: ${{ steps.contains_tag.outputs.retval }}
steps:
# TODO: remove this and the `git branch -a` when the following PR
# is merged and released:
# https://github.com/rickstaa/action-contains-tag/pull/18
- name: git config --global remote.origin.followRemoteHEAD never
shell: bash
run: git config --global remote.origin.followRemoteHEAD never
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: rickstaa/action-contains-tag@v1
id: contains_tag
with:
reference: "main"
tag: "${{ github.ref_name }}"
tests:
name: tests
needs: on-main-branch-check
if: ${{ needs.on-main-branch-check.outputs.on_main == 'true' }}
uses: "./.github/workflows/tests.yml"
build-wheels:
name: build wheels
needs: tests
uses: "./.github/workflows/wheels.yml"
build-sdist:
name: build source distribution
needs: tests
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v5
with:
python-version: 3.12
- name: Install uv
uses: astral-sh/setup-uv@v5
- name: Build package
run: uv build --sdist --out-dir dist
- uses: actions/upload-artifact@v4
with:
name: fgpyo-sdist
path: dist/*.tar.gz
publish-to-pypi:
runs-on: ubuntu-24.04
needs: [build-wheels, build-sdist]
environment: pypi
permissions:
id-token: write
steps:
- uses: actions/download-artifact@v4
with:
path: packages
pattern: 'fgpyo-*'
merge-multiple: true
- uses: pypa/gh-action-pypi-publish@release/v1
with:
packages-dir: packages/
skip-existing: true
verbose: true
make-changelog:
runs-on: ubuntu-24.04
needs: publish-to-pypi
outputs:
release_body: ${{ steps.git-cliff.outputs.content }}
steps:
- name: Checkout the Repository at the Tagged Commit
uses: actions/checkout@v4
with:
fetch-depth: 0
ref: ${{ github.ref_name }}
- name: Generate a Changelog
uses: orhun/git-cliff-action@v3
id: git-cliff
with:
config: pyproject.toml
args: --latest --verbose
env:
GITHUB_REPO: ${{ github.repository }}
make-github-release:
runs-on: ubuntu-24.04
environment: github
permissions:
contents: write
pull-requests: read
needs: make-changelog
steps:
- name: Create Release
id: create_release
uses: softprops/action-gh-release@v2
with:
name: ${{ github.ref_name }}
body: ${{ needs.make-changelog.outputs.release_body }}
draft: false
prerelease: false