43 lines
1.0 KiB
YAML
43 lines
1.0 KiB
YAML
name: Build and Store WASM
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
build-and-upload:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version-file: '.nvmrc'
|
|
cache: 'yarn'
|
|
- name: Install dependencies
|
|
run: yarn
|
|
- name: Use correct Rust toolchain
|
|
shell: bash
|
|
run: |
|
|
[ -e rust-toolchain.toml ] || cp rust/rust-toolchain.toml ./
|
|
- name: Install rust
|
|
uses: actions-rust-lang/setup-rust-toolchain@v1
|
|
with:
|
|
cache: false # Configured below.
|
|
- uses: taiki-e/install-action@955a6ff1416eae278c9f833008a9beb4b7f9afe3
|
|
with:
|
|
tool: wasm-pack
|
|
- name: Rust Cache
|
|
uses: Swatinem/rust-cache@v2
|
|
with:
|
|
workspaces: rust
|
|
- name: build wasm
|
|
run: yarn build:wasm
|
|
|
|
|
|
# Upload the WASM bundle as an artifact
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: wasm-bundle
|
|
path: rust/kcl-wasm-lib/pkg
|