Merge pull request #335 from Chia-Network/bump-version-0.3.0 #1420
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build crate and npm package | |
on: | |
push: | |
branches: | |
- main | |
tags: | |
- '**' | |
pull_request: | |
branches: | |
- '**' | |
jobs: | |
build_crate: | |
name: Crate & NPM | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Set up rusts | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
components: rustfmt, clippy | |
- name: Set up rust (nightly) | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: nightly | |
components: rustfmt, clippy | |
- name: fmt (nightly) | |
run: cargo +nightly fmt -- --files-with-diff --check | |
- name: clippy (nightly) | |
run: cargo +nightly clippy | |
- name: tests | |
run: cargo test && cargo test --release | |
- name: build | |
run: cargo build --release | |
- name: Upload crate artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: crate | |
path: ./target/package/*-*.crate | |
- name: install wasm-pack | |
run: cargo install wasm-pack | |
- name: wasm-pack build and pack | |
run: cd wasm && wasm-pack build && wasm-pack pack | |
- name: Upload npm pkg artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: npm-pkg | |
path: ./wasm/pkg/*-*.tgz | |
# this has not been tested, so probably needs to be debugged next time a tag is created | |
- name: publish to crates.io if tagged (chia_py_streamable_macro) | |
continue-on-error: true | |
if: startsWith(github.event.ref, 'refs/tags') | |
env: | |
CARGO_REGISTRY_TOKEN: ${{ secrets.cargo_registry_token }} | |
run: | | |
cd chia_py_streamable_macro | |
cargo publish | |
- name: publish to crates.io if tagged (chia_streamable_macro) | |
continue-on-error: true | |
if: startsWith(github.event.ref, 'refs/tags') | |
env: | |
CARGO_REGISTRY_TOKEN: ${{ secrets.cargo_registry_token }} | |
run: | | |
cd chia_streamable_macro | |
cargo publish | |
- name: publish to crates.io if tagged (clvm-derive) | |
continue-on-error: true | |
if: startsWith(github.event.ref, 'refs/tags') | |
env: | |
CARGO_REGISTRY_TOKEN: ${{ secrets.cargo_registry_token }} | |
run: | | |
cd clvm-derive | |
cargo publish | |
- name: publish to crates.io if tagged (clvm-traits) | |
continue-on-error: true | |
if: startsWith(github.event.ref, 'refs/tags') | |
env: | |
CARGO_REGISTRY_TOKEN: ${{ secrets.cargo_registry_token }} | |
run: | | |
cd clvm-traits | |
cargo publish | |
- name: publish to crates.io if tagged (clvm-utils) | |
continue-on-error: true | |
if: startsWith(github.event.ref, 'refs/tags') | |
env: | |
CARGO_REGISTRY_TOKEN: ${{ secrets.cargo_registry_token }} | |
run: | | |
cd clvm-utils | |
cargo publish | |
- name: publish to crates.io if tagged (chia-traits) | |
continue-on-error: true | |
if: startsWith(github.event.ref, 'refs/tags') | |
env: | |
CARGO_REGISTRY_TOKEN: ${{ secrets.cargo_registry_token }} | |
run: | | |
cd chia-traits | |
cargo publish | |
- name: publish to crates.io if tagged (chia-bls) | |
continue-on-error: true | |
if: startsWith(github.event.ref, 'refs/tags') | |
env: | |
CARGO_REGISTRY_TOKEN: ${{ secrets.cargo_registry_token }} | |
run: | | |
cd chia-bls | |
cargo publish | |
- name: publish to crates.io if tagged (chia-protocol) | |
continue-on-error: true | |
if: startsWith(github.event.ref, 'refs/tags') | |
env: | |
CARGO_REGISTRY_TOKEN: ${{ secrets.cargo_registry_token }} | |
run: | | |
cd chia-protocol | |
cargo publish | |
- name: publish to crates.io if tagged (chia-wallet) | |
continue-on-error: true | |
if: startsWith(github.event.ref, 'refs/tags') | |
env: | |
CARGO_REGISTRY_TOKEN: ${{ secrets.cargo_registry_token }} | |
run: | | |
cd chia-wallet | |
cargo publish | |
- name: publish to crates.io if tagged (chia_rs) | |
continue-on-error: true | |
if: startsWith(github.event.ref, 'refs/tags') | |
env: | |
CARGO_REGISTRY_TOKEN: ${{ secrets.cargo_registry_token }} | |
run: | | |
cargo publish | |
# this has not been tested, so probably needs to be debugged next time a tag is created | |
- name: publish to npmjs.com if tagged | |
if: startsWith(github.event.ref, 'refs/tags') | |
uses: JS-DevTools/npm-publish@v1 | |
with: | |
token: ${{ secrets.node_auth_token }} | |
package: wasm/pkg/package.json |