Программное добавление настроек приложения к функциям Azure

Мне нужно программно добавлять новые параметры приложения к функциям Azure без необходимости добавлять их вручную с портала Azure каждый раз, когда я представляю новый параметр. Есть ли какой-нибудь пакет nuget или какой-нибудь инструмент, который я могу использовать для автоматизации этого?

Идея в том, что при развертывании из одной среды в другую автоматизировать этот процесс без необходимости делать это вручную.

Заранее спасибо.

2 ответа

Похоже, вам просто нужен инструмент для добавления или обновления настроек приложения, не выполняя вручную через портал? Я бы порекомендовал лазурь cli как отличный вариант. Через шаблон ARM тоже работает. Очень часто мы видим, как пользователи используют эти параметры в сочетании с таким инструментом, как Azure DevOps, для автоматизации и управления несколькими средами.

Используйте стиль управления конфигурацией ядра.Net, содержащийся в пакете Microsoft.Extensions.Configuration. Вlocal.settings.json файл не публикуется в Azure, и вместо этого Azure получит параметры из параметров приложения, связанных с функцией.

В вашей функции добавьте параметр типа Microsoft.Azure.WebJobs.ExecutionContext контекст, где вы можете затем создать IConfigurationRoot провайдер: Пример:

[FunctionName("Stackru")]
public static async Task Run([TimerTrigger("0 */15 * * * *")]TimerInfo myTimer,
    TraceWriter log, ExecutionContext context, 
    CancellationToken ctx)
{
   var config = new ConfigurationBuilder()
        .SetBasePath(context.FunctionAppDirectory)
        .AddJsonFile("local.settings.json", optional: true, reloadOnChange: true)
        .AddEnvironmentVariables()
        .Build();

    // This abstracts away the .json and app settings duality
    var myValue = config["MyKey"];
}

После развертывания в Azure вы можете изменить значения параметров в функции Параметры приложения.

Другие вопросы по тегам