Skip to content

ci(release): sync vastlint-python on release#54

Merged
aleksUIX merged 1 commit into
mainfrom
release/sync-python-job
Jun 19, 2026
Merged

ci(release): sync vastlint-python on release#54
aleksUIX merged 1 commit into
mainfrom
release/sync-python-job

Conversation

@aleksUIX

Copy link
Copy Markdown
Owner

Adds a sync-python job to release.yml, mirroring the existing sync-go job, to close the manual gap in the Python release chain.

What it does

On each vX.Y.Z core release, after the GitHub Release (with the vastlint-ffi-* tarballs) is published:

  1. Checks out aleksUIX/vastlint-python via the VASTLINT_PYTHON_DEPLOY_KEY deploy key.
  2. Rewrites src/vastlint/_version.py to the tag version.
  3. GPG-signs (reusing BOT_GPG_KEY), commits, pushes main (no-op if already at that version).
  4. Pushes tag vX.Y.Z (skips if it already exists).

That tag triggers vastlint-python's publish-pypi.yml, which runs fetch-libs.sh against this release to vendor the shared libraries and publishes the wheel to PyPI via trusted publishing (OIDC).

Activation

Dormant until ENABLE_PYTHON_SYNC repo variable is set to true, so merging is safe. Requires the VASTLINT_PYTHON_DEPLOY_KEY secret (private half) here and the matching write deploy key on vastlint-python, plus a PyPI trusted publisher for the project.

🤖 Generated with Claude Code

Add a sync-python job to release.yml that, after the GitHub Release is
published, bumps src/vastlint/_version.py in the vastlint-python repo and
tags it at the same version. That tag triggers vastlint-python's publish
workflow, which vendors the FFI libs via fetch-libs.sh and pushes the wheel
to PyPI through trusted publishing.

Gated on the ENABLE_PYTHON_SYNC repo variable and authenticated with the
VASTLINT_PYTHON_DEPLOY_KEY deploy key, mirroring the existing sync-go job.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@aleksUIX
aleksUIX merged commit 1a26c62 into main Jun 19, 2026
15 checks passed
aleksUIX added a commit that referenced this pull request Jun 20, 2026
Add a sync-python job to release.yml that, after the GitHub Release is
published, bumps src/vastlint/_version.py in the vastlint-python repo and
tags it at the same version. That tag triggers vastlint-python's publish
workflow, which vendors the FFI libs via fetch-libs.sh and pushes the wheel
to PyPI through trusted publishing.

Gated on the ENABLE_PYTHON_SYNC repo variable and authenticated with the
VASTLINT_PYTHON_DEPLOY_KEY deploy key, mirroring the existing sync-go job.
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.

1 participant