Skip to content

docs: reconcile functions roadmap #93

docs: reconcile functions roadmap

docs: reconcile functions roadmap #93

Workflow file for this run

name: Build and Test
on:
push:
branches: [trunk]
pull_request:
branches: [trunk]
types: [opened, synchronize, reopened, ready_for_review]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
test:
if: ${{ !github.event.pull_request.draft }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Configure runtime versions
shell: bash
run: |
node -e '
const packageJson = require("./package.json");
const pnpmVersion = packageJson.packageManager.replace(/^pnpm@/, "");
if (pnpmVersion !== packageJson.engines.pnpm) {
throw new Error("packageManager and engines.pnpm must match");
}
process.stdout.write(`node ${packageJson.engines.node}\npnpm ${pnpmVersion}\n`);
' > .tool-versions
- name: Setup mise
uses: jdx/mise-action@f10502fc09dadecfefb962fff68ce77213930204 # v4.2.2
with:
cache: true
- name: Get pnpm store directory
shell: bash
run: echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_OUTPUT
id: pnpm-cache
- name: Cache pnpm store
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Build, Lint, Typecheck, Test
run: mise run ci