Summary
This demo showcases the ability to parse a declarative Foundry Workflow file (YAML) to build a Workflow<>
be executed using the same pattern as any code-based workflow.
Configuration
This demo requires configuration to access agents an Azure Foundry Project.
Settings
We suggest using .NET Secret Manager to avoid the risk of leaking secrets into the repository, branches and pull requests. You can also use environment variables if you prefer.
To set your secrets as an environment variable (PowerShell):
$env:FOUNDRY_PROJECT_ENDPOINT="https://..."
etc...
To set your secrets with .NET Secret Manager:
-
From the root of the repository, navigate the console to the project folder:
cd dotnet/samples/GettingStarted/Workflows/Declarative/ExecuteWorkflow -
Examine existing secret definitions:
dotnet user-secrets list -
If needed, perform first time initialization:
dotnet user-secrets init -
Define setting that identifies your Azure Foundry Project (endpoint):
dotnet user-secrets set "FOUNDRY_PROJECT_ENDPOINT" "https://..." -
Define setting that identifies your Azure Foundry Model Deployment (endpoint):
dotnet user-secrets set "FOUNDRY_MODEL_DEPLOYMENT_NAME" "gpt-4.1" -
Define setting that identifies your Bing Grounding connection:
dotnet user-secrets set "FOUNDRY_CONNECTION_GROUNDING_TOOL" "mybinggrounding"
Authorization
Use Azure CLI to authorize access to your Azure Foundry Project:
az login
az account get-access-token
Agents
The sample workflows rely on agents defined in your Azure Foundry Project.
To create agents, run the Create.ps1 script.
This will create the agents used in the sample workflows in your Azure Foundry Project and format a script you can copy and use to configure your environment.
Note:
Create.ps1relies upon theFOUNDRY_PROJECT_ENDPOINT,FOUNDRY_MODEL_DEPLOYMENT_NAME, andFOUNDRY_CONNECTION_GROUNDING_TOOLsettings.
Execution
Run the demo from the console by specifying a path to a declarative (YAML) workflow file.
The repository has example workflows available in the root /workflow-samples folder.
-
From the root of the repository, navigate the console to the project folder:
cd dotnet/samples/GettingStarted/Workflows/Declarative/DeclarativeWorkflow -
Run the demo referencing a sample workflow by name:
dotnet run Marketing -
Run the demo with a path to any workflow file:
dotnet run c:/myworkflows/Marketing.yaml