Skip to content

Publish packages from GitHub Actions

Create a token owned by the same personal account or organization as the target repository, then add it under Settings → Secrets and variables → Actions as RVS_TOKEN.

This workflow installs rvs, builds the project, and publishes through an explicit private-repository target:

.github/workflows/publish-python.yml
name: Publish Python package
on:
workflow_dispatch:
jobs:
publish:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v6
- name: Install rvs
run: curl -fsSL https://ravenstash.com/install.sh | bash
- name: Build and publish to Ravenstash
env:
RVS_TOKEN: ${{ secrets.RVS_TOKEN }}
run: |
rvs art select platform/packages
rvs uv build
rvs uv publish

Replace platform/packages with the namespace and repository names shown in Ravenstash.

Use the same RVS_TOKEN secret and run:

Terminal window
rvs art select platform/packages
rvs npm publish

Use the same RVS_TOKEN secret and run:

Terminal window
rvs art select platform/packages
rvs mvn deploy

Use protected environments and approval rules for production publication where appropriate. Forked pull requests should not receive a publishing secret.