name: Release-plz
on:
push:
branches:
- main
paths:
- 'src/**'
- 'Cargo.toml'
- 'Cargo.lock'
permissions:
contents: write
pull-requests: write
jobs:
release-plz-release:
if: ${{ github.repository_owner == 'syncable-dev' }}
runs-on: ubuntu-latest
permissions:
contents: write
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_PLZ_TOKEN }}
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.RELEASE_PLZ_TOKEN }} - name: Check for uncommitted changes
run: |
git status --porcelain
test -z "$(git status --porcelain)"
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
- name: Run release-plz
uses: release-plz/action@v0.5
with:
command: release
manifest_path: Cargo.toml
release-plz-pr:
if: ${{ github.repository_owner == 'syncable-dev' }}
runs-on: ubuntu-latest
permissions:
pull-requests: write
contents: write
concurrency:
group: release-plz-${{ github.ref }}
cancel-in-progress: false
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_PLZ_TOKEN }}
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.RELEASE_PLZ_TOKEN }}
- name: Check for uncommitted changes
run: |
git status --porcelain
test -z "$(git status --porcelain)"
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
- name: Run release-plz PR
uses: release-plz/action@v0.5
with:
command: release-pr
manifest_path: Cargo.toml