Skip to content

fix(ci): skip TUI directory in golangci-lint #34

fix(ci): skip TUI directory in golangci-lint

fix(ci): skip TUI directory in golangci-lint #34

Workflow file for this run

name: CI
on:
push:
branches: [main, dev-mvp, feat/wails-v2-migration]
pull_request:
branches: [main, dev-mvp]
jobs:
# Backend tests (Go)
backend:
name: Backend Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.24'
- name: Create dummy frontend directory
run: mkdir -p frontend/dist && echo "CLI build - frontend not included" > frontend/dist/README.txt
- name: Build
run: go build -v ./cmd/... ./internal/... ./pkg/...
- name: Test
run: go test -v ./...
# Frontend tests (React + TypeScript)
frontend:
name: Frontend Tests
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./frontend
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '18'
cache: 'npm'
cache-dependency-path: './frontend/package-lock.json'
- name: Install dependencies
run: npm ci
- name: Run TypeScript check
run: npx tsc --noEmit
- name: Run tests
run: npm run test:run
- name: Generate coverage report
run: npm run test:coverage
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
directory: ./frontend/coverage
flags: frontend
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: false
- name: Upload coverage artifacts
uses: actions/upload-artifact@v4
with:
name: coverage-report
path: ./frontend/coverage
retention-days: 7
# Linting
lint:
name: Go Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.24'
- name: Create dummy frontend directory
run: mkdir -p frontend/dist && echo "CLI build - frontend not included" > frontend/dist/README.txt
- name: golangci-lint
uses: golangci/golangci-lint-action@v3
with:
version: latest