Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,12 @@ jobs:
secrets: inherit
needs: [lint, test]
uses: "./.github/workflows/release.yml"

publish:
name: Publish playerDatapy Python Package
secrets: inherit
needs: release
uses: "./.github/workflows/publish.yml"
with:
new_release_published: ${{ needs.release.outputs.new_release_published }}
new_release_version: ${{ needs.release.outputs.new_release_version }}
51 changes: 51 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Publish Python

on:
workflow_call:
inputs:
new_release_published:
description: 'Whether a new release has been published'
required: true
type: string
new_release_version:
description: 'The latest release version'
required: true
type: string

jobs:
publish:
name: Publish Python Package
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write

environment:
name: pypi

steps:
- uses: actions/checkout@v6

- uses: actions/setup-python@v6
with:
python-version: '3.12'

- name: Install uv
uses: astral-sh/setup-uv@v7.2.1
with:
enable-cache: true
cache-suffix: '-publish'
activate-environment: true

- name: Apply Semantic Version
if: ${{ inputs.new_release_published == 'true' }}
run: uv version ${{ inputs.new_release_version }}

- name: Build
if: ${{ inputs.new_release_published == 'true' }}
run: uv build

- name: Publish
if: ${{ inputs.new_release_published == 'true' }}
run: uv publish --index pypi

2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
with:
fetch-depth: 0

Expand Down