Я хочу развернуть свое приложение-функцию Azure в различных средах (Тестирование, Приемка, Производство). Это функция, запускаемая по времени, которую нужно запускать в производственной среде каждую ночь. Однако я не хочу этого, когда я его тестирую и отлаживаю, т.е. когда он запускается в средах Dev и A cc. В настоящее время мой атрибут таймера выглядит следующим образом:
public class TimedAzFunction
{
// CTOR
public TimedAzFunction()
{
}
// How to set the timer (using CRON notation):
// "0 30 3 * * 1-5" for prod
// Runs every 5 mins: "0 */5 * * * *" for dev and acc
[FunctionName("TimedAzFunction")]
public async Task Run([TimerTrigger("0 */5 * * * *")]TimerInfo myTimer, ILogger log)
{
// Code for function here
// ...
}
}
К сожалению, это означает, что мне нужно изменить его вручную, когда я хочу опубликовать sh его, что подвержено ошибкам.
Я попытался сделать что-то с локальными настройками и оценить значение, а затем создать объект TimerTrigger, но это не сработало. Как настроить таймер в зависимости от среды, в которой он работает, например, используя AZURE_FUNCTIONS_ENVIRONMENT
и my local.settings.json
? В частности, я хочу, чтобы функция запускалась каждую ночь в 3 часа ночи, а в средах Dev и A cc каждые 5 или 10 минут.