- .github/workflows/ci.yml: TypeScript check + Vitest + build on every PR - .github/dependabot.yml: weekly npm + Actions updates (minor/patch grouped) - .github/ISSUE_TEMPLATE/: bug_report, feature_request, config (→ Discussions) - .github/PULL_REQUEST_TEMPLATE.md: checklist for contributors - SECURITY.md: responsible disclosure policy via GitHub Advisories - CONTRIBUTING.md: dev setup, code style, commit conventions
44 lines
909 B
YAML
44 lines
909 B
YAML
name: CI
|
||
|
||
on:
|
||
push:
|
||
branches: [main]
|
||
pull_request:
|
||
branches: [main]
|
||
|
||
# Cancel in-progress runs for the same PR / branch
|
||
concurrency:
|
||
group: ${{ github.workflow }}-${{ github.ref }}
|
||
cancel-in-progress: true
|
||
|
||
jobs:
|
||
ci:
|
||
name: Type-check & Test
|
||
runs-on: ubuntu-latest
|
||
timeout-minutes: 10
|
||
|
||
steps:
|
||
- uses: actions/checkout@v4
|
||
|
||
- name: Set up Node.js
|
||
uses: actions/setup-node@v4
|
||
with:
|
||
node-version: '20'
|
||
cache: 'npm'
|
||
|
||
- name: Install dependencies
|
||
run: npm ci
|
||
|
||
- name: TypeScript – type check
|
||
run: npx tsc --noEmit
|
||
|
||
- name: Run tests
|
||
run: npx vitest run
|
||
|
||
- name: Build
|
||
run: npm run build
|
||
env:
|
||
# Minimal env vars so Next.js build doesn't bail early on env validation
|
||
IMMICH_URL: http://localhost:2283
|
||
IMMICH_API_KEY: placeholder-key-for-ci
|