Connect Azure DevOps
1
Create a personal access token
In Azure DevOps, open User settings > Personal access tokens and create a token for your organization with these scopes: Code (Read), Code (Status), Project and Team (Read) and Service Hooks (Read & write). The token owner needs permission to edit service hook subscriptions in the project.
2
Connect
Go to Settings > Developers > Integrations, open the CI/CD tab, select Azure DevOps, click Connect, and enter your organization and the token.
3
Add a trigger
Open a simulation, click CI/CD, and add a trigger with a repository, a target branch such as
main, and a minimum score.4
Require it on pull requests
Bluejay runs the simulation on every pull request into that branch and posts the score as the
bluejay/simulation status. It passes when the score is at least the trigger’s minimum score. In Repos > Branches > Branch policies > Status checks, add that status and set it to required.Run Bluejay in a pipeline
Use the Bluejay extension if your organization can install Marketplace extensions, or the plain YAML step, which needs nothing installed.Prerequisites
- A Bluejay API key, from the Developers page.
- An agent connected to your assistant.
- A simulation on that agent, with the Digital Humans you want to run.
Use the Bluejay extension
1
Install the extension
Search for Bluejay in the Visual Studio Marketplace and install it in your organization. Installing needs a Project Collection Administrator. Anyone else can request it, and the administrator gets an email to approve it.
2
Add a Bluejay service connection
In your project, go to Project settings > Service connections > New service connection > Bluejay. Paste your API key, name the connection
Bluejay, and save.The first pipeline run that uses the connection stops with “This pipeline needs permission to access a resource”. Select Permit once. To skip this, grant the pipeline access in the connection’s Security settings.3
Add the task to your pipeline
Add the task to
azure-pipelines.yml. In the classic editor, Simulation lists the simulations the key can see.4
Require it on pull requests
For Azure Repos, go to Repos > Branches, open the branch policies of
main, and add the pipeline under Build validation as Required. A pull request then can’t complete until the simulation passes.For GitHub repos built in Azure Pipelines, the pr: trigger runs it, and you make it required with GitHub branch protection.Use a plain YAML step
This step does the same withcurl and jq, which Microsoft-hosted Ubuntu agents already have. Add your API key as a secret pipeline variable named BLUEJAY_API_KEY. Secret variables are not passed to scripts automatically, so the step maps it with env:.
BLUEJAY_MIN_SCORE, or after 25 minutes. Set BLUEJAY_TIMEOUT_SECONDS to change the wait.
Inputs
Outputs
The task sets these output variables. Give the step aname: to read them in later steps, for example $(bluejay.score).