Skip to content

v0.3.4

v0.3.4 #16

Workflow file for this run

# This workflow is used to publish sv2-apps crates to crates.io
# the workflow tries to publish all the sv2-apps crates by running scripts/release-apps.sh
# in case the `cargo publish` command fails, the script returns 1 and the entire workflow fails
# the only exception is when the `cargo publish` command fails because the crate has already
# been published, in which case the workflow continues
name: Release Apps
on:
# Manually run by going to "Actions/Release Apps" in Github and running the workflow
workflow_dispatch:
# every time a new release is published
release:
types: [published]
jobs:
release-apps:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- uses: actions/checkout@v4
- name: Install Rust (1.85)
uses: dtolnay/rust-toolchain@1.85
- name: Install capnp dependencies
run: sudo apt-get install -y capnproto libcapnp-dev
- name: Login
run: cargo login ${{ secrets.CRATES_IO_DEPLOY_KEY }}
- name: Publish stratum-apps crate
run: ./scripts/release-apps.sh stratum-apps
- name: Publish bitcoin-core-sv2 crate
run: ./scripts/release-apps.sh bitcoin-core-sv2
- name: Publish jd-client-sv2 crate
run: ./scripts/release-apps.sh miner-apps/jd-client
- name: Publish translator-sv2 crate
run: ./scripts/release-apps.sh miner-apps/translator
- name: Publish jd-server-sv2 crate
run: ./scripts/release-apps.sh pool-apps/jd-server
- name: Publish pool-sv2 crate
run: ./scripts/release-apps.sh pool-apps/pool
- name: Publish integration-tests-sv2 crate
run: ./scripts/release-apps.sh integration-tests