Co-authored-by: Jason Woltje <jason@diversecanvas.com> Co-committed-by: Jason Woltje <jason@diversecanvas.com>
58 lines
899 B
YAML
58 lines
899 B
YAML
variables:
|
|
- &node_image 'node:22-alpine'
|
|
- &install_deps |
|
|
corepack enable
|
|
pnpm install --frozen-lockfile
|
|
|
|
when:
|
|
- event: [push, pull_request, manual]
|
|
|
|
steps:
|
|
install:
|
|
image: *node_image
|
|
commands:
|
|
- *install_deps
|
|
|
|
typecheck:
|
|
image: *node_image
|
|
commands:
|
|
- *install_deps
|
|
- pnpm typecheck
|
|
depends_on:
|
|
- install
|
|
|
|
lint:
|
|
image: *node_image
|
|
commands:
|
|
- *install_deps
|
|
- pnpm lint
|
|
depends_on:
|
|
- install
|
|
|
|
format:
|
|
image: *node_image
|
|
commands:
|
|
- *install_deps
|
|
- pnpm format:check
|
|
depends_on:
|
|
- install
|
|
|
|
test:
|
|
image: *node_image
|
|
commands:
|
|
- *install_deps
|
|
- pnpm test
|
|
depends_on:
|
|
- install
|
|
|
|
build:
|
|
image: *node_image
|
|
commands:
|
|
- *install_deps
|
|
- pnpm build
|
|
depends_on:
|
|
- typecheck
|
|
- lint
|
|
- format
|
|
- test
|