Skip to content

Wire Jumbo (lomi. Pos) into monorepo CI, audit, and docs #60

Wire Jumbo (lomi. Pos) into monorepo CI, audit, and docs

Wire Jumbo (lomi. Pos) into monorepo CI, audit, and docs #60

name: lomi · security · dependency audit
# Full installs are expensive: run on lockfile changes, weekly, or manually.
# dashboard/checkout/jumbo live in private submodule repos — check them out explicitly.
on:
push:
branches: [main, develop]
paths:
- "apps/api"
- "apps/dashboard/pnpm-lock.yaml"
- "apps/checkout/pnpm-lock.yaml"
- "apps/jumbo/pnpm-lock.yaml"
- ".github/workflows/app-security-audit.yml"
pull_request:
branches: [main]
paths:
- "apps/api"
- "apps/dashboard/pnpm-lock.yaml"
- "apps/checkout/pnpm-lock.yaml"
- "apps/jumbo/pnpm-lock.yaml"
- ".github/workflows/app-security-audit.yml"
schedule:
- cron: "30 8 * * 1"
workflow_dispatch:
permissions:
contents: read
jobs:
audit-api:
runs-on: ubuntu-latest
defaults:
run:
working-directory: apps/api
steps:
- uses: actions/checkout@v5
- name: Checkout API submodule
uses: actions/checkout@v5
with:
repository: lomiafrica/api
ref: main
token: ${{ secrets.REPO_CHECKOUT_PAT }}
path: apps/api
- uses: pnpm/action-setup@v4
with:
version: 9
- uses: actions/setup-node@v4
with:
node-version: "22"
- name: pnpm audit (high and critical)
run: pnpm --ignore-workspace audit --audit-level high
audit-dashboard:
runs-on: ubuntu-latest
defaults:
run:
working-directory: apps/dashboard
steps:
- uses: actions/checkout@v5
- name: Checkout dashboard submodule
uses: actions/checkout@v5
with:
repository: lomiafrica/dashboard
ref: main
token: ${{ secrets.REPO_CHECKOUT_PAT }}
path: apps/dashboard
- uses: pnpm/action-setup@v4
with:
version: 9
- uses: actions/setup-node@v4
with:
node-version: "22"
- name: pnpm audit (high and critical)
run: pnpm --ignore-workspace audit --audit-level high
audit-checkout:
runs-on: ubuntu-latest
defaults:
run:
working-directory: apps/checkout
steps:
- uses: actions/checkout@v5
- name: Checkout checkout submodule
uses: actions/checkout@v5
with:
repository: lomiafrica/checkout
ref: main
token: ${{ secrets.REPO_CHECKOUT_PAT }}
path: apps/checkout
- uses: pnpm/action-setup@v4
with:
version: 9
- uses: actions/setup-node@v4
with:
node-version: "22"
- name: pnpm audit (high and critical)
run: pnpm --ignore-workspace audit --audit-level high
audit-jumbo:
runs-on: ubuntu-latest
defaults:
run:
working-directory: apps/jumbo
steps:
- uses: actions/checkout@v5
- name: Checkout jumbo submodule
uses: actions/checkout@v5
with:
repository: lomiafrica/jumbo
ref: main
token: ${{ secrets.REPO_CHECKOUT_PAT }}
path: apps/jumbo
- uses: pnpm/action-setup@v4
with:
version: 9
- uses: actions/setup-node@v4
with:
node-version: "22"
- name: pnpm audit (high and critical)
run: pnpm --ignore-workspace audit --audit-level high