Skip to content
Closed
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
50 changes: 20 additions & 30 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,53 +2,46 @@ name: Build & Publish Wheels + Source

on:
release:
types: [published]
types:
- published
workflow_dispatch:

permissions:
contents: read
contents: read

jobs:
build_wheels:
name: Build wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}

strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
os: ["ubuntu-latest", "windows-latest", "macos-latest"]

steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683

- name: Set up Python 3.13
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
- uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38
with:
python-version: "3.13"
cache: "pip"
python-version: "3.13"
cache: pip

- name: Install uv
uses: install-pinned/uv@b9511b633710c8bbe8ba48376771dba624746799 # 0.4.12
- uses: install-pinned/uv@b9511b633710c8bbe8ba48376771dba624746799

- name: Install dependencies
run: |
uv pip install --system -r requirements-dev.txt
uv pip install --system -e .[all]
- run: |
uv pip install --system -r requirements-dev.txt
uv pip install --system -e .[all]

- name: Check setup.py
run: |
- run: |
python setup.py check

- name: Build src dist
if: ${{ matrix.os == 'ubuntu-latest' }}
- if: ${{ matrix.os == 'ubuntu-latest' }}
run: |
python -m build --sdist --outdir wheels parsons

- name: Build wheels
run: git pull && python -m cibuildwheel parsons/ --output-dir wheels
- run: git pull && python -m cibuildwheel parsons/ --output-dir wheels

# Save wheels as artifacts
- name: Upload built wheels
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1
with:
name: wheels-${{ matrix.os }}
path: wheels
Expand All @@ -65,18 +58,15 @@ jobs:
id-token: write

steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683

- name: Download wheels
uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
- uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806
with:
pattern: wheels-*
path: wheels
merge-multiple: true

# Publish
- name: Publish
uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc # v1.12.4
- uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc
with:
verify-metadata: true
skip-existing: true
Expand Down
1 change: 1 addition & 0 deletions requirements-dev.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# Testing Requirements
bandit[toml]==1.8.3
build==1.2.2.post1
coverage==7.8.0
pre-commit==4.2.0
pytest-cov==6.1.1
Expand Down
Loading