Skip to content

chore(oss): remove build-aec-deps workflow from public repo #138

chore(oss): remove build-aec-deps workflow from public repo

chore(oss): remove build-aec-deps workflow from public repo #138

Workflow file for this run

name: CI
on:
push:
branches:
- staging
- production
- main
pull_request:
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
guard-premium-files:
name: Guard Premium Files
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v4
- name: Fail if premium-only files are present
run: |
if [ ! -f .premium-paths ]; then
echo "No .premium-paths file — skipping guard"
exit 0
fi
FOUND=""
while IFS= read -r line; do
[ "$line" = "---" ] && break
line="${line%%#*}"
line="$(echo "$line" | xargs)"
[ -z "$line" ] && continue
path="${line%/}"
if [ -e "$path" ]; then
echo "ERROR: Premium-only path found: $path"
FOUND="$FOUND $path"
fi
done < .premium-paths
if [ -n "$FOUND" ]; then
echo ""
echo "These paths should only exist on the premium branch."
echo "Remove them before pushing to origin/main."
exit 1
fi
echo "No premium files found — OK"
test-electron:
name: Electron Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 22
cache: npm
- name: Install dependencies
run: npm ci
- name: Security audit
run: npm audit --audit-level=critical
- name: Type check
run: npx tsc --noEmit
- name: Run tests
run: npx vitest run
check-backend:
name: Check Backend Exists
runs-on: ubuntu-latest
outputs:
exists: ${{ steps.check.outputs.exists }}
steps:
- uses: actions/checkout@v4
- name: Check if backend directory exists
id: check
run: |
if [ -d backend ] && [ -f backend/package.json ]; then
echo "exists=true" >> "$GITHUB_OUTPUT"
else
echo "exists=false" >> "$GITHUB_OUTPUT"
fi
test-backend:
name: Backend Tests
needs: check-backend
if: needs.check-backend.outputs.exists == 'true'
runs-on: ubuntu-latest
defaults:
run:
working-directory: backend
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 22
cache: npm
cache-dependency-path: backend/package-lock.json
- name: Install dependencies
run: npm ci
- name: Security audit
run: npm audit --audit-level=critical
- name: Generate Prisma client
run: npx prisma generate
- name: Type check
run: npx tsc --noEmit
- name: Run tests
run: npm test