when: event: [pull_request, tag] path: # related config files - ".woodpecker/web.yml" # web source code - "web/**" # api source code - "server/api/**" variables: - &node_image 'node:18-alpine' steps: deps: image: *node_image directory: web/ commands: - corepack enable - pnpm install --frozen-lockfile lint: group: test image: *node_image directory: web/ commands: - corepack enable - pnpm lint formatcheck: group: test image: *node_image directory: web/ commands: - corepack enable - pnpm format:check typecheck: group: test image: *node_image directory: web/ commands: - corepack enable - pnpm typecheck test: group: test image: *node_image directory: web/ commands: - corepack enable - pnpm test