Files
blake3.wasm/.github/workflows/publish.yml
T

54 lines
1.5 KiB
YAML

name: Publish
on:
release:
types: [ published ]
permissions:
id-token: write
contents: read
env:
CARGO_TERM_COLOR: always
jobs:
publish:
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
steps:
- uses: actions/checkout@v6
- name: Install wasm-pack
run: |
curl -L https://github.com/wasm-bindgen/wasm-pack/releases/download/v0.14.0/wasm-pack-v0.14.0-x86_64-unknown-linux-musl.tar.gz | tar xz
sudo mv wasm-pack-*/wasm-pack /usr/local/bin/
- name: Install wasm-bindgen-cli
run: |
curl -L https://github.com/wasm-bindgen/wasm-bindgen/releases/download/0.2.118/wasm-bindgen-0.2.118-x86_64-unknown-linux-musl.tar.gz | tar xz
sudo mv wasm-bindgen-*/wasm-bindgen /usr/local/bin/
sudo mv wasm-bindgen-*/wasm-bindgen-test-runner /usr/local/bin/
- name: Install wasm-opt
run: |
curl -L https://github.com/WebAssembly/binaryen/releases/latest/download/binaryen-version_129-x86_64-linux.tar.gz | tar xz
sudo mv binaryen-*/bin/wasm-opt /usr/local/bin/
- name: Rust tests
run: cargo test
- name: WASM tests (Node)
run: wasm-pack test --node --features wasm,talc
- name: Build package
run: make
- name: Publish to npm
run: |
echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > ~/.npmrc
cd pkg
npm publish --access public --provenance
env:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}