steps: - name: install image: node:22-alpine commands: - corepack enable - pnpm install --frozen-lockfile - name: typecheck image: node:22-alpine depends_on: [install] commands: - pnpm turbo typecheck - name: lint image: node:22-alpine depends_on: [install] commands: - pnpm turbo lint - name: build image: node:22-alpine depends_on: [typecheck] commands: - pnpm turbo build - name: test image: node:22-alpine depends_on: [build] commands: - pnpm turbo test services: - name: valkey image: valkey/valkey:8-alpine environment: - ALLOW_EMPTY_PASSWORD=yes - name: publish image: node:22-alpine depends_on: [test] when: branch: main event: push environment: GITEA_NPM_TOKEN: from_secret: gitea_npm_token commands: - corepack enable - pnpm changeset version || true - pnpm changeset publish