Skip to content

Commit 2f84e7a

Browse files
authored
Merge pull request #12 from PlayerData/6-publish-to-pypi
feat: add workflow to publish to pypi
2 parents 69bb07c + b98c46c commit 2f84e7a

3 files changed

Lines changed: 61 additions & 1 deletion

File tree

.github/workflows/ci.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,12 @@ jobs:
2626
secrets: inherit
2727
needs: [lint, test]
2828
uses: "./.github/workflows/release.yml"
29+
30+
publish:
31+
name: Publish playerDatapy Python Package
32+
secrets: inherit
33+
needs: release
34+
uses: "./.github/workflows/publish.yml"
35+
with:
36+
new_release_published: ${{ needs.release.outputs.new_release_published }}
37+
new_release_version: ${{ needs.release.outputs.new_release_version }}

.github/workflows/publish.yml

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
name: Publish Python
2+
3+
on:
4+
workflow_call:
5+
inputs:
6+
new_release_published:
7+
description: 'Whether a new release has been published'
8+
required: true
9+
type: string
10+
new_release_version:
11+
description: 'The latest release version'
12+
required: true
13+
type: string
14+
15+
jobs:
16+
publish:
17+
name: Publish Python Package
18+
runs-on: ubuntu-latest
19+
permissions:
20+
contents: read
21+
id-token: write
22+
23+
environment:
24+
name: pypi
25+
26+
steps:
27+
- uses: actions/checkout@v6
28+
29+
- uses: actions/setup-python@v6
30+
with:
31+
python-version: '3.12'
32+
33+
- name: Install uv
34+
uses: astral-sh/setup-uv@v7.2.1
35+
with:
36+
enable-cache: true
37+
cache-suffix: '-publish'
38+
activate-environment: true
39+
40+
- name: Apply Semantic Version
41+
if: ${{ inputs.new_release_published == 'true' }}
42+
run: uv version ${{ inputs.new_release_version }}
43+
44+
- name: Build
45+
if: ${{ inputs.new_release_published == 'true' }}
46+
run: uv build
47+
48+
- name: Publish
49+
if: ${{ inputs.new_release_published == 'true' }}
50+
run: uv publish --index pypi
51+

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
runs-on: ubuntu-latest
2020

2121
steps:
22-
- uses: actions/checkout@v5
22+
- uses: actions/checkout@v6
2323
with:
2424
fetch-depth: 0
2525

0 commit comments

Comments
 (0)