Skip to content

chore: update publish workflow #140

chore: update publish workflow

chore: update publish workflow #140

Workflow file for this run

name: Verify
on:
push:
branches: main
pull_request:
branches: main
permissions:
contents: read
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
with:
submodules: true
- name: setup deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: format
run: deno task fmt:check
- name: lint
run: deno lint
- name: build wasm
run: make
- name: upload wasm artifact
uses: actions/upload-artifact@v7
with:
name: clayterm-wasm
path: |
clayterm.wasm
wasm.ts
test-alt-os:
needs: test
strategy:
matrix:
os:
- name: macos
value: macos-latest
- name: windows
value: windows-latest
fail-fast: false
runs-on: ${{ matrix.os.value }}
name: test ${{ matrix.os.name }}
steps:
- name: checkout
uses: actions/checkout@v4
with:
submodules: true
- name: setup deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: download wasm artifact
uses: actions/download-artifact@v4
with:
name: clayterm-wasm
path: .
- name: test
run: deno task test
jsr:
needs: test
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
with:
submodules: true
- name: setup deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: build wasm
run: make
- name: Build JSR
run: deno task build:jsr 0.0.0-verify.0
- name: dry run publish
run: deno publish --dry-run --allow-dirty
npm:
needs: test
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
with:
submodules: true
- name: setup deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 24
- name: build wasm
run: make
- name: Build
run: deno task build:npm 0.0.0-verify.0
- name: dry run publish
run: npm publish --dry-run --tag=verify
working-directory: ./build/npm