Skip to content

ci: use trusted publishing in release pipeline and trigger on tags - #2060

Merged
martindurant merged 2 commits into
fsspec:masterfrom
Yonghui-Lee:auto-release
Jul 30, 2026
Merged

ci: use trusted publishing in release pipeline and trigger on tags#2060
martindurant merged 2 commits into
fsspec:masterfrom
Yonghui-Lee:auto-release

Conversation

@Yonghui-Lee

@Yonghui-Lee Yonghui-Lee commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

This PR makes release pipeline automatically run tests, build packages, create GitHub releases, and publish to PyPI upon a new tag push.

Close #1866

Key Changes

  1. CI Workflow (main.yaml):
    • Added the workflow_call trigger to allow the CI workflow to be called by the release workflow.
  2. Release Pipeline (pypipublish.yaml):
    • Trigger: Configured to trigger automatically on CalVer tag pushes (e.g., 2026.6.0).
    • CI Dependency: Added a ci job dependency to ensure all tests pass before any build or publish steps run.
    • Build: Uses the standard build module to generate source distributions and wheels.
    • GitHub Release: Automatically creates a GitHub release, generates release notes, and attaches the build artifacts.
    • PyPI Publish: Switched from legacy username/password secrets to Trusted Publishing (OIDC) using the official pypa/gh-action-pypi-publish action.

Setup Required

Trusted Publishing must be configured on PyPI.

@Yonghui-Lee

Copy link
Copy Markdown
Contributor Author

Hi @martindurant. Could you help take a look at this PR? The release process has been validated in gcsfs. We also want to automate the release process of fsspec. Based on this, we can also Implement a mechanism to gate fsspec releases to ensure compatibility with E2E tests.

@martindurant

Copy link
Copy Markdown
Member

OK, I suppose it's fine. Will need to do s3fs too, but we can let that wait one more release, since this one is different enough from gcsfs's.

@martindurant
martindurant merged commit 669de5e into fsspec:master Jul 30, 2026
11 checks passed
@martindurant

Copy link
Copy Markdown
Member

Publisher added on pypi

runs-on: ubuntu-latest
permissions:
id-token: write
environment: pypi

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
environment: pypi
environment:
name: pypi
url: https://pypi.org/p/fsspec

Including URL adds a link to the deployments page

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Switch to trusted publishing for package upload to PyPI in CI

3 participants