Continuous integration

August 10, 2026 · View on GitHub

Scope: GitHub Actions workflow for this repository. Source of truth: .github/workflows/ci.yml — update this file when CI changes; keep ci.md in sync.

Triggers

Runs on push and pull_request to main or master.

Concurrent runs for the same branch are cancelled when a newer commit is pushed.

Jobs

JobWhat it runsWorking directory
dotnetdotnet restoredotnet testRepository root
npmnpm cinpm run build:npmnpm run test:npmRepository root

dotnet

  • .NET 10
  • Solution: src/dotnet/DataGrid.slnx
  • Release configuration

npm

  • Node.js 24
  • npm cache keyed on package-lock.json
  • Builds @laczynski/datagrid, @laczynski/datagrid-primeng, @laczynski/datagrid-ui, @laczynski/datagrid-spartan, and @laczynski/datagrid-cli
  • Runs Vitest in core, primeng, ui, spartan, and schematic tests in cli

Reproduce locally

Full command list: AGENTS.md. CI runs the equivalent of npm run test:all on every push. Packing and publishing happen only on tag push — see publishing.md.

CI-specific differences:

  • Uses npm ci (not npm install) and Node 24
  • Does not run npm run lint:frontend or sample apps — run those locally before a PR

What CI does not cover

CheckLocal command / workflow
Sample appsnpm run start:all
ESLint (src/npm)npm run lint:frontend from repository root
dotnet formatdotnet format src/dotnet/DataGrid.slnx
Cross-repo consumer verificationUse samples/ or published packages
PublishingPush a v* tag → publish.yml

Publish workflow

Separate from CI — runs on tag push v*. Tests, packs, and publishes NuGet (nuget.org + GitHub Packages), npm (npmjs.com + GitHub Packages), and creates a GitHub Release.

Details: publishing.md.