Skip to content

Commit 3f3c219

Browse files
ctjlewisclaude
andcommitted
ci: GitHub Actions workflow — typecheck + test on push / PR
Runs on every push to master/main and every pull request. Steps: 1. Install system pandoc (apt) — recipedown / postcard integration tests shell out to the binary via runPandoc. 2. Install bun (latest). 3. bun install --frozen-lockfile. 4. bun run typecheck. 5. bun test. Concurrency group cancels stale runs when a new commit lands on the same ref. pandoc-wasm tests skip cleanly when the optional peer dep isn't installed (which it isn't in CI). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1 parent bc0a637 commit 3f3c219

1 file changed

Lines changed: 38 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [master, main]
6+
pull_request:
7+
8+
# Cancel a previous run if a new commit lands while the prior is in flight.
9+
concurrency:
10+
group: ci-${{ github.ref }}
11+
cancel-in-progress: true
12+
13+
jobs:
14+
test:
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: actions/checkout@v4
18+
19+
- name: Install pandoc
20+
# The integration tests (recipedown, postcard) shell out to the
21+
# system pandoc binary. ubuntu-latest ships pandoc 3.x.
22+
run: sudo apt-get update && sudo apt-get install -y pandoc
23+
24+
- name: Pandoc version (sanity)
25+
run: pandoc --version | head -1
26+
27+
- uses: oven-sh/setup-bun@v2
28+
with:
29+
bun-version: latest
30+
31+
- name: Install dependencies
32+
run: bun install --frozen-lockfile
33+
34+
- name: Typecheck
35+
run: bun run typecheck
36+
37+
- name: Test
38+
run: bun test

0 commit comments

Comments
 (0)