У меня есть функция Azure (.NET Core), настроенная на чтение параметров приложения как из файла JSON, так и из переменных среды:
var configurationBuilder = new ConfigurationBuilder()
.SetBasePath(_baseConfigurationPath)
.AddJsonFile("appsettings.json", optional: true)
.AddEnvironmentVariables()
.Build();
BuildAgentMonitorConfiguration configuration = configurationBuilder.Get<BuildAgentMonitorConfiguration>();
appsettings.json
имеет следующую структуру:
{
"ProjectBaseUrl": "https://my-project.visualstudio.com/",
"ProjectName": "my-project",
"AzureDevOpsPac": ".....",
"SubscriptionId": "...",
"AgentPool": {
"PoolId": 38,
"PoolName": "MyPool",
"MinimumAgentCount": 2,
"MaximumAgentCount": 10
},
"ContainerRegistry": {
"Username": "mycontainer",
"LoginServer": "mycontainer.azurecr.io",
"Password": "..."
},
"ActiveDirectory": {
"ClientId": "...",
"TenantId": "...",
"ClientSecret": "..."
}
}
Некоторые из этих параметров настраиваются как переменные среды в функции Azure.Все работает как положено:
Теперь проблема состоит в том, чтобы настроить некоторые из этих переменных в конвейере сборки, которые используются в модульных и интеграционных тестах.Я попытался добавить группу переменных следующим образом и связать ее с конвейером:
Но переменные среды не устанавливаются, и тесты выполняютсятерпит неудачу.Что мне здесь не хватает?