name: Release
on:
push:
tags:
- v*
jobs:
publish-crates:
runs-on: ubuntu-latest
timeout-minutes: 360
steps:
- name: Checkout
uses: actions/checkout@v7
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
toolchain: 1.88.0
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install protobuf-compiler
- uses: katyo/publish-crates@v2
with:
registry-token: ${{ secrets.CARGO_REGISTRY_TOKEN }}
ignore-unpublished-changes: true
args: --locked --no-verify
publish-pypi:
runs-on: ubuntu-latest
timeout-minutes: 360
environment:
name: pypi
url: https://pypi.org/project/dragonfly-api/
permissions:
id-token: write
steps:
- name: Checkout
uses: actions/checkout@v7
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: '3.x'
- name: Build distributions
run: |
cp LICENSE python/LICENSE
python -m pip install build
python -m build python/
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
packages-dir: python/dist/
skip-existing: true