db620d33df
dotnet-build-and-test / dotnet-test-functions (push) Has been cancelled
dotnet-build-and-test / paths-filter (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Debug, windows-latest, net9.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, ubuntu-latest, net10.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, ubuntu-latest, net8.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, windows-latest, net472) (push) Has been cancelled
dotnet-build-and-test / dotnet-test (Release, integration, true, ubuntu-latest, net10.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-test (Release, integration, true, windows-latest, net472) (push) Has been cancelled
dotnet-build-and-test / dotnet-foundry-hosted-it (push) Has been cancelled
dotnet-build-and-test / dotnet-build-and-test-check (push) Has been cancelled
dotnet-build-and-test / Integration Test Report (push) Has been cancelled
CodeQL / Analyze (csharp) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
42 lines
2.1 KiB
C#
42 lines
2.1 KiB
C#
// Copyright (c) Microsoft. All rights reserved.
|
|
|
|
using System.Collections.Generic;
|
|
using AgentConformance.IntegrationTests.Support;
|
|
using Shared.IntegrationTests;
|
|
|
|
namespace Foundry.Hosting.IntegrationTests.Fixtures;
|
|
|
|
/// <summary>
|
|
/// Provisions a hosted agent that runs the test container in <c>IT_SCENARIO=azure-search-rag</c> mode.
|
|
/// Wires the container up with an Azure AI Search backed <see cref="Microsoft.Agents.AI.TextSearchProvider"/>
|
|
/// adapter that retrieves Contoso Outdoors documents from a pre-provisioned search index before each
|
|
/// model invocation.
|
|
/// </summary>
|
|
/// <remarks>
|
|
/// Prerequisites managed out of band:
|
|
/// <list type="bullet">
|
|
/// <item><description>The <c>it-azure-search-rag</c> agent's managed identity must hold
|
|
/// <c>Search Index Data Reader</c> on the search service scope. Granted manually after
|
|
/// the first <c>scripts/it-bootstrap-agents.ps1</c> run; see the IT README.</description></item>
|
|
/// <item><description>The search index referenced by <c>AZURE_SEARCH_INDEX_NAME</c> must
|
|
/// already exist with the documented schema and Contoso Outdoors content. The search
|
|
/// service is shared with <c>python-sample-validation.yml</c>; no .NET-side provisioning
|
|
/// script ships with this repository.</description></item>
|
|
/// </list>
|
|
/// </remarks>
|
|
public sealed class AzureSearchRagHostedAgentFixture : HostedAgentFixture
|
|
{
|
|
protected override string ScenarioName => "azure-search-rag";
|
|
|
|
/// <summary>
|
|
/// Inject the AZURE_SEARCH_* env vars onto the hosted agent definition so the test container
|
|
/// scenario branch can construct its <c>SearchClient</c>. These names are NOT in the platform
|
|
/// reserved <c>FOUNDRY_*</c> / <c>AGENT_*</c> namespace so they are safe to set.
|
|
/// </summary>
|
|
protected override void ConfigureEnvironment(IDictionary<string, string> environment)
|
|
{
|
|
environment[TestSettings.AzureSearchEndpoint] = TestConfiguration.GetRequiredValue(TestSettings.AzureSearchEndpoint);
|
|
environment[TestSettings.AzureSearchIndexName] = TestConfiguration.GetRequiredValue(TestSettings.AzureSearchIndexName);
|
|
}
|
|
}
|