Overview
The Intent.ContinuousIntegration.AzurePipelines module generates a basicazure-pipelines.yml file for Azure Pipelines that automates your build, test, and validation workflow.
This module creates a CI/CD pipeline that will:
- Build all
.csprojfiles in the repository - Run unit tests for any project whose name is suffixed with
Tests - Validate Intent Architect changes using the Software Factory CLI to detect outstanding changes
What Gets Generated
Azure Pipeline YAML
A complete pipeline configuration file:azure-pipelines.yml
Installation
Prerequisites
- An Azure DevOps organization and project
- A Git repository connected to Azure DevOps
- An Intent Architect solution in your repository
Installation Steps
Install the module
In Intent Architect, right-click on your application and select Manage Modules. Search for
Intent.ContinuousIntegration.AzurePipelines and install it.Run the Software Factory
Execute the Software Factory to generate the
azure-pipelines.yml file in your repository root.Create the pipeline in Azure DevOps
Follow the steps in Creating a Pipeline below.
Creating a Pipeline
This guide assumes you have some familiarity with Azure DevOps Pipelines. For more information, refer to Microsoft’s Create your first pipeline article.Create Pipeline
Click the Create Pipeline button and follow the wizard to connect to your repository.
Select azure-pipelines.yml
Azure DevOps should automatically detect the 
azure-pipelines.yml file. Review and click Save and run.
Expected Warnings
On the first run, you may see warnings:- “Project file(s) matching the specified pattern were not found” - This appears if you haven’t added unit test projects yet. Once you have projects with names ending in
Tests, this warning will disappear. - “Intent Architect Credentials not configured” - This appears until you configure Intent Architect Credentials for the pipeline.
Configuring Intent Architect Credentials
To run the Intent Architect Software Factory CLI, valid Intent Architect account credentials are required.Create Variable Group
Press the + Variable Group button and configure:
- Variable Group Name:
Intent Architect Credentials

Add Username Variable
Press + Add and create:
- Name:
intent-architect-user - Value: Your Intent Architect account username/email
Add Password Variable
Press + Add again and create:
- Name:
intent-architect-password - Value: Your Intent Architect account password
- Important: Click the padlock icon to make this variable secret
Enable the Variable Group
From this point forward, the pipeline will run the Intent Architect Software Factory CLI without needing additional permissions.
Pipeline Stages Explained
1. Build Stage
- Builds all
.csprojfiles in the repository - Uses the
buildConfigurationvariable (default:debug) - Fails the pipeline if compilation errors occur
2. Test Stage
- Runs all xUnit/NUnit/MSTest tests in projects ending with
Tests - Publishes test results to Azure DevOps
- Fails the pipeline if any tests fail
3. Intent CLI Validation
- Installs the Intent Architect CLI tool
- Logs in using the credentials from the variable group
- Validates that all Intent Architect changes have been applied to the codebase
- Fails if there are outstanding Software Factory changes that haven’t been committed
This ensures that developers don’t forget to run the Software Factory before committing code, maintaining consistency between the Intent Architect models and the generated codebase.
Customization
Change Build Configuration
To build in Release mode instead of Debug:Add Code Coverage
Add coverage collection to the test step:Add NuGet Publishing
Publish NuGet packages after a successful build:Add Docker Build
Build and push Docker images:Best Practices
Use Secret Variables
Always mark sensitive values (passwords, API keys) as secret in variable groups.
Run Tests Early
Fail fast by running tests before expensive operations like Docker builds.
Cache Dependencies
Use Azure Pipeline caching to speed up NuGet restore operations.
Separate Environments
Use different variable groups for dev, staging, and production deployments.
Troubleshooting
Intent CLI Fails with Authentication Error
Problem: The Intent CLI step fails with “Invalid credentials” Solution:- Verify the credentials in the variable group are correct
- Ensure the password variable is marked as secret
- Check that the variable group name exactly matches
Intent Architect Credentials
Tests Not Running
Problem: The test step shows “No test projects found” Solution:- Ensure your test project names end with
Tests(e.g.,MyApp.Application.Tests) - Verify test projects are included in the solution
- Check that test projects reference a test framework (xUnit, NUnit, or MSTest)
Build Fails on First Run
Problem: Build fails due to missing dependencies Solution:- Ensure all NuGet package sources are accessible to Azure DevOps
- Add a NuGet restore step if needed:
Integration with Other Modules
Unit Testing
Generated tests run automatically in the pipeline.
Docker
Build and publish Docker images in your pipeline.
Entity Framework
Run database migrations as part of deployment.
OpenTelemetry
Monitor pipeline performance and deployments.
Related Resources
- Azure Pipelines Documentation
- Intent Architect Software Factory CLI
- YAML Pipeline Schema
- Pipeline Best Practices
Next Steps
Docker Images
Build containers in your pipeline
Unit Tests
Add comprehensive test coverage
Deployments
Add deployment stages for multiple environments








