Skip to content

Release

Release #3

Workflow file for this run

name: Release
on:
release:
types: [published]
workflow_dispatch:
jobs:
npm:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup node
uses: actions/setup-node@v3
with:
node-version: "20"
registry-url: "https://registry.npmjs.org"
- name: Cache the dependency directories
uses: actions/cache@v3
with:
path: node_modules
key: ${{ runner.os }}-${{ hashFiles('*.json') }}
- name: Install dependencies with npm
run: npm install --save-dev
- name: Build with npm
run: npm run build
- name: Publish to npm
run: npm publish --access public
working-directory: ./dist
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
cargo:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy
- name: Cargo build
run: cargo build --release
- name: Publish to crates.io
run: cargo publish --token $CARGO_REGISTRY_TOKEN
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}