How to Route Azure Pipelines Builds Through Chainsaw
Apply Chainsaw's CI/CD integration pattern to Azure Pipelines: Service Token, secret variables, and job-local package-manager configuration. Platform-specific config examples are pending.
Overview
The same CI/CD integration model applies to Azure Pipelines as to every other runner:
- Use a Chainsaw client credential with Client Type set to Service Token, scoped to only the ecosystems the pipeline needs.
- Store
CHAINSAW_CLIENT_IDandCHAINSAW_CLIENT_SECRETas secret pipeline variables (or in an Azure Key Vault-backed variable group) — never in committed YAML. - Generate package-manager configuration inside each job rather than relying on persistent global runner or hosted-agent state.
- Clear local caches on the first Chainsaw run, and rotate any pipeline cache key so previously cached packages are re-fetched through the firewall.
The npm, pip, Maven, Gradle, CocoaPods, and Docker configuration is the same across CI systems — only the secret-injection and caching syntax differs per platform. Use the GitHub Actions, GitLab CI, and Jenkins examples in the combined guide as the reference for the per-ecosystem config, and inject secrets using Azure Pipelines secret variables.
Next Steps
- How to Integrate Chainsaw with CI/CD Pipelines — full reference with verified GitHub Actions, GitLab CI, and Jenkins config
- Troubleshooting CI/CD Integration — common auth and policy-block failures
- How to Configure Your Package Manager to Use Chainsaw — per-ecosystem config reference