veza/.github/workflows/chromatic.yml.disabled
senke fcdf7cc386 ci: simplify workflows for Forgejo self-hosted runner
- Rewrite ci.yml: replace TMT with direct go test/lint/build commands,
  remove E2E jobs (need docker compose infra, run locally instead)
- Replace third-party actions with CLI equivalents:
  gitleaks-action → gitleaks CLI, trivy-action → trivy CLI,
  actions-rust-lang/audit → cargo audit, CodeQL → disabled
- Disable 18 non-essential workflows (cloud services, DinD, staging):
  chromatic, cd, container-scan, zap-dast, visual-regression,
  mutation-testing, performance, load-test, etc.
- Keep 8 core workflows: ci, backend-ci, frontend-ci, rust-ci,
  stream-ci, security-scan, trivy-fs, go-fuzz

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 20:08:37 +02:00

58 lines
1.9 KiB
Text

# Chromatic: visual regression testing for Storybook.
# Runs on every push/PR that touches the web app.
# Requires CHROMATIC_PROJECT_TOKEN secret in GitHub repo settings.
name: Chromatic
on:
push:
branches: [main, develop]
paths:
- "apps/web/**"
- ".github/workflows/chromatic.yml"
pull_request:
paths:
- "apps/web/**"
- ".github/workflows/chromatic.yml"
workflow_dispatch:
env:
GIT_SSL_NO_VERIFY: "true"
NODE_TLS_REJECT_UNAUTHORIZED: "0"
jobs:
chromatic:
name: Visual regression tests
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0 # Required for Chromatic to detect changes
- name: Set up Node
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
node-version: "20"
cache: "npm"
- name: Install dependencies
run: npm ci
working-directory: apps/web
- name: Run Chromatic
uses: chromaui/action@latest
with:
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
workingDir: apps/web
buildScriptName: build-storybook
exitZeroOnChanges: true # Don't fail PR on visual changes, just flag them
exitOnceUploaded: true # Speed up CI — don't wait for full processing
onlyChanged: true # Only snapshot stories affected by changes
externals: |
apps/web/src/**/*.css
apps/web/public/**
env:
VITE_API_URL: /api/v1
VITE_USE_MSW: "true"
VITE_STORYBOOK: "true"