CI/CD Pipelines

ALCops analyzers run anywhere the AL compiler runs. In CI/CD pipelines, the compiler is invoked either directly (alc / dotnet al) or through a helper tool. The setup differs depending on your platform and tooling.

PlatformApproachPage
Azure DevOpsALCops extension (recommended)Azure DevOps
Azure DevOpsALOps extension + ALCopsAzure DevOps
Azure DevOpsCustom pipelines with alc or dotnet alAzure DevOps
Any CI@alcops/core CLI (npm)CLI
GitHubAL-Go for GitHubGitHub
GitHubCustom GitHub ActionsGitHub

All approaches ultimately invoke the compiler with the /analyzer flag. If you are unfamiliar with the underlying mechanism, read Command Line first.

Choosing an approach

Azure DevOps: Use the ALCops extension . It provides the ALCopsDownloadAnalyzers task that handles TFM detection and analyzer download in a single step. Works with ALOps, BcContainerHelper, NuGet DevTools, or direct compiler invocation.

GitHub (AL-Go): Use the AL-Go integration . AL-Go has native support for custom code cops through its settings file.

Any other CI system: Use the @alcops/core CLI . It runs on any platform with Node.js 20+ and outputs JSON for easy integration with shell scripts.