Skip to content

Bump actions/checkout from 4 to 7 #186

Bump actions/checkout from 4 to 7

Bump actions/checkout from 4 to 7 #186

Workflow file for this run

name: CI - Build & Test
on:
workflow_dispatch:
pull_request:
branches:
- main
- develop
permissions:
contents: read
jobs:
# Build & Test on ubuntu-latest
test:
name: CI - Build & Test
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- name: Checkout
uses: actions/checkout@v7
with:
fetch-depth: 0
- name: Install pnpm
uses: pnpm/action-setup@v3
with:
version: 10.27.0
- name: Setup Node.js 24
uses: actions/setup-node@v4
with:
node-version: "24"
cache: "pnpm"
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Verify toolchain binaries
run: pnpm exec tsc --version && pnpm exec tsup --version && pnpm exec turbo --version
# Cache Turborepo build outputs
- name: Setup Turborepo cache
uses: actions/cache@v4
with:
path: |
.turbo
**/node_modules/.cache/turbo
# Key on lockfile + turbo config so cache is reused across commits that don't touch deps
key: ${{ runner.os }}-turbo-${{ hashFiles('pnpm-lock.yaml', 'turbo.json') }}-${{ github.sha }}
restore-keys: |
${{ runner.os }}-turbo-${{ hashFiles('pnpm-lock.yaml', 'turbo.json') }}-
${{ runner.os }}-turbo-
- name: Run CI (Lint, Type-Check, Build, Test)
run: pnpm run ci:check
- name: Dependency audit (high severity and above)
run: pnpm audit --audit-level=high
# Validate Cloudflare configuration
validate-cloudflare:
name: Validate Cloudflare Config
runs-on: ubuntu-latest
needs: test
timeout-minutes: 10
steps:
- name: Checkout
uses: actions/checkout@v7
- name: Install pnpm
uses: pnpm/action-setup@v3
with:
version: 10.27.0
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "24"
cache: "pnpm"
- name: Install Dependencies
run: pnpm install --frozen-lockfile
- name: Validate Cloudflare Configuration
id: cf-validate
run: pnpm cf:validate -- --force
# Soft-fail: CF validation can have network flakiness in CI; we annotate rather than block
continue-on-error: true
- name: Warn on Cloudflare validation failure
if: steps.cf-validate.outcome == 'failure'
run: echo "::warning::Cloudflare config validation failed — run 'pnpm cf:validate' locally to investigate"