name: Publish to crates.io
on:
workflow_dispatch:
release:
types: [published]
jobs:
publish-pyroscope:
name: pyroscope-lib
runs-on: ubuntu-latest
if: "startsWith(github.event.release.tag_name, 'lib-')"
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: publish pyroscope crate
continue-on-error: true
run: |
cargo login ${{ secrets.CARGO_TOKEN }}
cargo publish
publish-cli:
name: pyroscope-cli
runs-on: ubuntu-latest
if: "startsWith(github.event.release.tag_name, 'cli-')"
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: install libunwind (for pprof)
run: sudo apt install libunwind8-dev
- name: publish pyroscope crate
continue-on-error: true
run: |
cargo login ${{ secrets.CARGO_TOKEN }}
cargo publish --manifest-path pyroscope_cli/Cargo.toml
publish-pprofrs:
name: "Backend: pprofrs"
runs-on: ubuntu-latest
if: "startsWith(github.event.release.tag_name, 'pprofrs-')"
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: publish pprofrs crate
continue-on-error: true
run: |
cargo login ${{ secrets.CARGO_TOKEN }}
cargo publish --manifest-path pyroscope_backends/pyroscope_pprofrs/Cargo.toml
publish-rbspy:
name: "Backend: rbspy"
runs-on: ubuntu-latest
if: "startsWith(github.event.release.tag_name, 'rbspy-')"
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: publish rbspy crate
continue-on-error: true
run: |
cargo login ${{ secrets.CARGO_TOKEN }}
cargo publish --manifest-path pyroscope_backends/pyroscope_rbspy/Cargo.toml
publish-pyspy:
name: "Backend: pyspy"
runs-on: ubuntu-latest
if: "startsWith(github.event.release.tag_name, 'pyspy-')"
steps:
- uses: actions/checkout@v1
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: publish pyspy crate
continue-on-error: true
run: |
cargo login ${{ secrets.CARGO_TOKEN }}
cargo publish --manifest-path pyroscope_backends/pyroscope_pyspy/Cargo.toml